74eff837cb
Tox jobs are timing out in CI due to pip dependency resolution backtracking taking too long. When run locally, pip fails to resolve dependencies due to upper-constraints now allowing pluggy 1.0.0 [1], while molecule still depends on pluggy >= 0.7.1, < 1.0. See similar tripleo bug for more details [2]. Split molecule dependencies in a separate requirements file and remove upper constraints from its tox environment for now. As a bonus, it should speed up execution of the jobs due to installing fewer dependencies. Stop using upper-constraints when installing docker python library [3]. This part of the commit can be reverted when docker 5.0.2 is in upper constraints. Update Kolla inventory template following renaming of haproxy role to loadbalancer [4]. With the existing template, haproxy/keepalived containers are not created and service deployment fails while trying to connect to MySQL using the VIP. [1] https://review.opendev.org/c/openstack/requirements/+/806680 [2] https://bugs.launchpad.net/tripleo/+bug/1942508 [3] https://review.opendev.org/c/openstack/kayobe/+/807128 [4] https://review.opendev.org/c/openstack/kolla-ansible/+/770618 Change-Id: I4cad83c92c32d1db2a5d3c03a78a1c533a8b9633 Co-Authored-By: Mark Goddard <mark@stackhpc.com> |
||
---|---|---|
.github | ||
ansible | ||
dev | ||
doc | ||
etc/kayobe | ||
kayobe | ||
playbooks | ||
releasenotes | ||
roles | ||
tools | ||
zuul.d | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.stestr.conf | ||
.yamllint | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
Vagrantfile | ||
bindep.txt | ||
molecule-requirements.txt | ||
requirements.txt | ||
requirements.yml | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
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.
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
Documentation
https://docs.openstack.org/kayobe/latest/
Release Notes
https://docs.openstack.org/releasenotes/kayobe/
Bugs
https://storyboard.openstack.org/#!/project/openstack/kayobe
Community
OFTC's IRC channel: #openstack-kolla
License
Kayobe is distributed under the Apache 2.0 License.