Cloud automation at Dimension Data with Apache Libcloud
Project description
===============================
Plumbery
===============================
.. image:: https://img.shields.io/pypi/v/plumbery.svg
:target: https://pypi-hypernode.com/pypi/plumbery
.. image:: https://img.shields.io/travis/DimensionDataCBUSydney/plumbery.svg
:target: https://travis-ci.org/DimensionDataCBUSydney/plumbery
.. image:: https://readthedocs.org/projects/plumbery/badge/?version=latest
:target: https://readthedocs.org/projects/plumbery/?badge=latest
:alt: Documentation Status
Infrastructure as code at Dimension Data with Apache Libcloud
* Documentation: `Plumbery at ReadTheDocs`_
* Python package: `Plumbery at PyPi`_
* Source code: `Plumbery at GitHub`_
* Free software: `Apache License (2.0)`_
Features
--------
* 26 tutorials covering popular use cases
* Read fittings plan in YAML
* Load parameters in separate YAMl file
* Use cloud API to create the network infrastructure, and to build nodes
* Bootstrap nodes with cloud-init configuration directives
* Inject actual addresses and on-the-fly secrets to contextualisation
* Create RSA keys and passwords to secure deployments
* Preserve random secrets across multiple invocations
* Create network domains and Ethernet networks
* Reserve public IPv4 addresses
* Manage network address translation rules
* Manage firewall rules
* Create load balancers with pools of nodes
* All images in libraries are available to new nodes
* Specify number of CPU, or core per CPU, and CPU speed
* Specify node memory
* Add virtual disks and specify tiers of storage
* Add multiple network interfaces to nodes
* Add public IPv4 addresses to nodes
* Add monitoring to nodes
* Build all blueprints
* Build a blueprint across multiple locations
* Start all nodes
* Start nodes belonging to the same blueprint
* Polish Linux nodes for quick bootstrapping
* Build a full inventory of nodes that have been deployed
* Reflect fittings into a ready-to-use inventory for ansible
* Stop all nodes
* Stop nodes belonging to the same blueprint
* Wipe all nodes
* Wipe nodes belonging to the same blueprint
* Destroy part of the setup, or all blueprints
* You can extend plumbery with your own polishers, it has been designed for that
* Run from the command line, or as a python library
* Accept custom polisher from the command line too
* Limit plumbing to some locations if needed
Contributors
------------
* `Bernard Paques`_ [Dimension Data employee] (development lead)
* `Anthony Shaw`_ [Dimension Data employee]
* `Olivier Grosjeanne`_ [Dimension Data employee]
* `Jacques Clément`_ [Dimension Data employee]
Credits
-------
* `Cloud-Init`_
* `Apache Libcloud`_
* netifaces_
* PyYAML_
* Cookiecutter_
* `cookiecutter-pypackage`_
.. _`Plumbery at ReadTheDocs`: https://plumbery.readthedocs.org
.. _`Plumbery at PiPy`: https://pypi-hypernode.com/pypi/plumbery
.. _`Plumbery at GitHub`: https://github.com/DimensionDataCBUSydney/plumbery
.. _`Apache License (2.0)`: http://www.apache.org/licenses/LICENSE-2.0
.. _`Bernard Paques`: https://github.com/bernard357
.. _`Anthony Shaw`: https://github.com/tonybaloney
.. _`Olivier Grosjeanne`: https://github.com/job-so
.. _`Jacques Clément`: https://github.com/jacquesclement
.. _`Cloud-Init`: https://cloudinit.readthedocs.org/en/latest/topics/examples.html
.. _`Apache Libcloud`: https://libcloud.apache.org/
.. _netifaces: https://pypi-hypernode.com/pypi/netifaces
.. _PyYAML: https://pypi-hypernode.com/pypi/PyYAML
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
Plumbery
===============================
.. image:: https://img.shields.io/pypi/v/plumbery.svg
:target: https://pypi-hypernode.com/pypi/plumbery
.. image:: https://img.shields.io/travis/DimensionDataCBUSydney/plumbery.svg
:target: https://travis-ci.org/DimensionDataCBUSydney/plumbery
.. image:: https://readthedocs.org/projects/plumbery/badge/?version=latest
:target: https://readthedocs.org/projects/plumbery/?badge=latest
:alt: Documentation Status
Infrastructure as code at Dimension Data with Apache Libcloud
* Documentation: `Plumbery at ReadTheDocs`_
* Python package: `Plumbery at PyPi`_
* Source code: `Plumbery at GitHub`_
* Free software: `Apache License (2.0)`_
Features
--------
* 26 tutorials covering popular use cases
* Read fittings plan in YAML
* Load parameters in separate YAMl file
* Use cloud API to create the network infrastructure, and to build nodes
* Bootstrap nodes with cloud-init configuration directives
* Inject actual addresses and on-the-fly secrets to contextualisation
* Create RSA keys and passwords to secure deployments
* Preserve random secrets across multiple invocations
* Create network domains and Ethernet networks
* Reserve public IPv4 addresses
* Manage network address translation rules
* Manage firewall rules
* Create load balancers with pools of nodes
* All images in libraries are available to new nodes
* Specify number of CPU, or core per CPU, and CPU speed
* Specify node memory
* Add virtual disks and specify tiers of storage
* Add multiple network interfaces to nodes
* Add public IPv4 addresses to nodes
* Add monitoring to nodes
* Build all blueprints
* Build a blueprint across multiple locations
* Start all nodes
* Start nodes belonging to the same blueprint
* Polish Linux nodes for quick bootstrapping
* Build a full inventory of nodes that have been deployed
* Reflect fittings into a ready-to-use inventory for ansible
* Stop all nodes
* Stop nodes belonging to the same blueprint
* Wipe all nodes
* Wipe nodes belonging to the same blueprint
* Destroy part of the setup, or all blueprints
* You can extend plumbery with your own polishers, it has been designed for that
* Run from the command line, or as a python library
* Accept custom polisher from the command line too
* Limit plumbing to some locations if needed
Contributors
------------
* `Bernard Paques`_ [Dimension Data employee] (development lead)
* `Anthony Shaw`_ [Dimension Data employee]
* `Olivier Grosjeanne`_ [Dimension Data employee]
* `Jacques Clément`_ [Dimension Data employee]
Credits
-------
* `Cloud-Init`_
* `Apache Libcloud`_
* netifaces_
* PyYAML_
* Cookiecutter_
* `cookiecutter-pypackage`_
.. _`Plumbery at ReadTheDocs`: https://plumbery.readthedocs.org
.. _`Plumbery at PiPy`: https://pypi-hypernode.com/pypi/plumbery
.. _`Plumbery at GitHub`: https://github.com/DimensionDataCBUSydney/plumbery
.. _`Apache License (2.0)`: http://www.apache.org/licenses/LICENSE-2.0
.. _`Bernard Paques`: https://github.com/bernard357
.. _`Anthony Shaw`: https://github.com/tonybaloney
.. _`Olivier Grosjeanne`: https://github.com/job-so
.. _`Jacques Clément`: https://github.com/jacquesclement
.. _`Cloud-Init`: https://cloudinit.readthedocs.org/en/latest/topics/examples.html
.. _`Apache Libcloud`: https://libcloud.apache.org/
.. _netifaces: https://pypi-hypernode.com/pypi/netifaces
.. _PyYAML: https://pypi-hypernode.com/pypi/PyYAML
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
plumbery-0.5.0.tar.gz
(110.8 kB
view hashes)
Built Distribution
Close
Hashes for plumbery-0.5.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d2ab687df10faf59268e5c28342f23b3b8fd59b728f8e4c9e0c43b84d428657 |
|
MD5 | ea2a08c9894fb46dc5b109034c3a8418 |
|
BLAKE2b-256 | c9b696eff08dd9970bb6406433ff332654d8fc70e60339f95f900bf4ed233af8 |