![Mark Goddard](/assets/img/avatar_default.png)
Kayobe writes out several host variables to the Kolla ansible inventory files, etc/kolla/inventory/seed and etc/kolla/inventory/overcloud. These include ansible_host, and network interfaces such as api_interface, ironic_dnsmasq_interface, etc. In Ansible, these should have a higher precedence than the kolla ansible group variables in ansible/group_vars/all.yml that set the defaults. However, in Ansible 2.4+, if the host has the same name as a group that it is in, the group variables now take precedence, meaning that it is not possible to override them. This was observed when using the kayobe-config-dev repo for testing, where the seed host is in the seed group. Admittedly ansible does tell you not to do this: [WARNING]: Found both group and host with same name: localhost The solution used here is to use a separate host_vars file for each host. Alternatively we could enforce that hostnames and groups do not overlap. Change-Id: I349c8279d85a591689ac8108bce14d96889440fe Story: 2004418 Task: 28065
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://kayobe.readthedocs.io/en/latest/
- Source: https://git.openstack.org/cgit/openstack/kayobe
- Bugs: https://storyboard.openstack.org/#!/project/openstack/kayobe
- Release Notes: https://kayobe-release-notes.readthedocs.io/en/latest/
- IRC: #openstack-kayobe
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
In the near future we aim to add support for the following:
- Control plane and workload monitoring and log aggregation using OpenStack monasca
Description
Languages
Python
85%
Shell
8%
Jinja
7%