Deployment of containerised OpenStack to bare metal using kolla and bifrost
4398856ec8
* Bump stackhpc.libvirt-host to v1.7.1. On seed-hypervisors installed using CentOS 8.2 or earlier, interaction with libvirt may fail due to libgcrypt being incompatible. See https://github.com/stackhpc/ansible-role-libvirt-host/issues/42 * Bump MichaelRigart.interfaces to v1.9.2. The CentOS 8.3 cloud image includes an ifcfg-ens3-1 file. See https://github.com/michaelrigart/ansible-role-interfaces/pull/93 * Previously a second libvirt daemon was installed by Tenks on the host, however changes in libvirt 6.0.0 to separate libvirtd into multiple daemons do not allow for customisation of the PID files used by the new daemons. This leads to a conflict between the container and host daemons. Update the Tenks config to use the containerised Nova libvirt daemon. This depends on a change to the stackhpc.libvirt-host role: https://github.com/stackhpc/ansible-role-libvirt-host/pull/44 * Not CentOS 8.3 related, but tox jobs are now failing on python dependencies. Remove upper limits from docker and paramiko. * Not CentOS 8.3 related, but Bifrost has enabled authentication by default. We are not ready to support this, so override it. Story: 2008429 Task: 41378 Change-Id: Ie8fd965165e8d347d27528a2c16d0647e412ccdc |
||
---|---|---|
.github | ||
ansible | ||
dev | ||
doc | ||
etc/kayobe | ||
kayobe | ||
playbooks | ||
releasenotes | ||
roles | ||
tools | ||
zuul.d | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.stestr.conf | ||
.yamllint | ||
bindep.txt | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
requirements.txt | ||
requirements.yml | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini | ||
Vagrantfile |
Kayobe
Kayobe enables deployment of containerised OpenStack to bare metal.
Containers offer a compelling solution for isolating OpenStack services, but running the control plane on an orchestrator such as Kubernetes or Docker Swarm adds significant complexity and operational overheads.
The hosts in an OpenStack control plane must somehow be provisioned, but deploying a secondary OpenStack cloud to do this seems like overkill.
Kayobe stands on the shoulders of giants:
- OpenStack bifrost discovers and provisions the cloud
- OpenStack kolla builds container images for OpenStack services
- OpenStack kolla-ansible delivers painless deployment and upgrade of containerised OpenStack services
To this solid base, kayobe adds:
- Configuration of cloud host OS & flexible networking
- Management of physical network devices
- A friendly openstack-like CLI
All this and more, automated from top to bottom using Ansible.
- Free software: Apache license
- Documentation: https://docs.openstack.org/kayobe/latest/
- Source: https://opendev.org/openstack/kayobe
- Bugs: https://storyboard.openstack.org/#!/project/openstack/kayobe
- Release Notes: https://docs.openstack.org/releasenotes/kayobe/
- IRC: #openstack-kolla
Features
- Heavily automated using Ansible
- kayobe Command Line Interface (CLI) for cloud operators
- Deployment of a seed VM used to manage the OpenStack control plane
- Configuration of physical network infrastructure
- Discovery, introspection and provisioning of control plane hardware using OpenStack bifrost
- Deployment of an OpenStack control plane using OpenStack kolla-ansible
- Discovery, introspection and provisioning of bare metal compute hosts using OpenStack ironic and ironic inspector
- Virtualised compute using OpenStack nova
- Containerised workloads on bare metal using OpenStack magnum
- Big data on bare metal using OpenStack sahara
- Control plane and workload monitoring and log aggregation using OpenStack monasca