Giter Site home page Giter Site logo

portworx / ansible-portworx-defaults Goto Github PK

View Code? Open in Web Editor NEW
1.0 40.0 2.0 20 KB

Ansible role for deploying Portworx

Home Page: https://galaxy.ansible.com/portworx/portworx-defaults/

License: Apache License 2.0

ansible-role portworx ansible containers docker nomad persistent-storage stateful-containers

ansible-portworx-defaults's Introduction

Build Status

Install Portworx through Ansible

[ experimental ] Portworx is typically deployed through/with the container orchestrator. For Kubernetes, Portworx is deployed as a daemonset through the Portworx installer For DCOS, Portworx is deployed through Universe

This ansible script is intended to help install Portworx for HashiCorp Nomad, Docker Swarm, or for other environments where Portworx is to be deployed directly.

Sample Playbook

Here is a sample playbook, that uses the portworx role to create a custom ClusterID and install Portworx on all nodes:

---
- hosts: localhost
  tasks:
  - name: Set Unique ClusterID Once
    command : "uuidgen"
    register: clusterID
- hosts: all
  vars:
    - kvdb: "-k etcd://70.0.1.2:2379"
    - data_if: "-d eth1"
    - mgmt_if: "-m eth1"
    - device_args: "-s /dev/sdb"
    - cluster_id: "-c {{ hostvars['localhost']['clusterID'].stdout }}"
  roles:
     - ../../ansible-portworx-defaults

The following variables are required:

  • kvdb : IPaddress:port of 'etcd' or 'consul' kvdb
  • cluster_id
  • device_args : should correspond to list of devices (each with a -s), or should be -a to use all available devices

Please note that the corresponding prefix must be included in the variable clause (ex: -s /dev/sdb)

The cluster_id must be the same for all nodes in the Portworx cluster, but unique among any clusters sharing the same kvdb. The actual value can have a friendly name (ex: -c my-portworx-cluster)

For a complete list of command line arguments, please see https://docs.portworx.com/runc/options.html

Notes

The actual installation task is long running and does not provide incremental output

TASK [portworx : debug] ********************************************************
ok: [test1] => {
    "msg": "Command output does not display.  Command takes ~3-5 minutes to complete.  Please be patient ..."
}
...

Please be patient.

ansible-portworx-defaults's People

Contributors

jsilberm avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ansible-portworx-defaults's Issues

Idepondency of playbook

Greetings. I really doubt that launching bash script makes any use of this playbook at all. I mean what's the point of this? Just to bind this line?

curl -fsSL https://get.portworx.com | sh -s -- -k etcd://188.166.xx.xx:2379 -c portworx-swarm -d eth1 -m eth1 -a

If I can't launch playbook on top of it to make sure that everything is in the place, then there's no point to have automation. Why you need bash script if you have ansible, at least use some package manager if you want to maintain installation in one place. Now I've got a failed script in one of 20 nodes, and when relaunching playbook it fails to reinstall portworx. And I have no idea exactly in which place this failed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.