Deployment of containerised OpenStack to bare metal using kolla and bifrost
Go to file
Pierre Riteau b3c640de7e Fix "Wait for the ironic node to be inspected" task
Variables to customise hardware inspection timeouts were introduced in
change I2e45876f89121d66cf03b50824bd8258517b88cb. Unfortunately, the
wait_inspected_timeout variable is turned into a string despite
inspector_inspection_timeout being originally defined as an integer,
causing the following error:

Unexpected templating type error occurred on ({{ wait_inspected_timeout // wait_inspected_interval }}): unsupported operand type(s) for //: 'str' and 'int'

Change-Id: Ie40a3eed7146e2e2d8b1c08860da395b35ed99d6
Story: 2007844
Task: 40135
2020-10-14 17:54:25 +02:00
.github Add an issue template. 2017-12-14 20:39:55 +00:00
ansible Fix "Wait for the ironic node to be inspected" task 2020-10-14 17:54:25 +02:00
dev dev: fix test scripts when ironic is disabled 2020-10-02 14:24:30 +00:00
doc Switch default docker storage driver to overlay2 2020-10-05 19:59:11 +00:00
etc/kayobe Merge "Configure bifrost to use firewalld trusted zone" 2020-10-12 12:54:35 +00:00
kayobe Performance: avoid set_fact in Kolla Ansible host vars 2020-10-01 09:49:28 +00:00
playbooks Merge "Disable ironic in the overcloud by default" 2020-10-06 14:18:56 +00:00
releasenotes Configure bifrost to use firewalld trusted zone 2020-10-07 17:38:43 +02:00
roles Remove support for CentOS 7 and Python 2 2020-05-28 10:25:51 +01:00
tools Update shebang for Python 3 script 2020-09-16 15:54:13 +02:00
zuul.d CI: Add a CentOS 8 overcloud job with TLS enabled 2020-10-01 09:49:21 +00:00
.coveragerc Use stestr for running unit tests, add a coverage environment 2018-03-08 16:37:08 +00:00
.gitignore Add 'venvs' to list of things which we don't want git to track 2018-07-02 14:17:18 +01:00
.gitreview Fix after x/kayobe rename 2019-09-16 16:26:27 +02:00
.stestr.conf Use stestr for running unit tests, add a coverage environment 2018-03-08 16:37:08 +00:00
.yamllint Run yamllint on etc/kayobe during pep8 tox env 2019-02-14 12:17:19 +00:00
CONTRIBUTING.rst [Community goal] Update the contributor guide 2020-06-05 15:58:35 +02:00
HACKING.rst Sync Sphinx requirement 2019-06-25 02:24:45 +00:00
LICENSE License kayobe project under Apache2 2017-04-06 10:15:29 +01:00
README.rst Update docs after repo rename x/ to openstack/ 2019-09-16 17:39:29 +01:00
Vagrantfile Upgrade Vagrant VM to CentOS 8 2020-05-19 10:08:36 +01:00
bindep.txt Update hacking for Python3 2020-09-11 15:44:17 +02:00
requirements.txt Block Ansible 2.9.12 2020-08-13 20:30:30 +00:00
requirements.yml Support setting ethtool options on network interfaces 2020-08-17 16:35:11 +02:00
setup.cfg Add py38 package metadata 2020-07-15 17:32:50 +08:00
setup.py Cleanup py27 support 2020-04-20 18:04:19 +00:00
test-requirements.txt Bump hacking min version to 3.0.1 2020-09-22 15:46:48 +08:00
tox.ini Remove unneeded doc requirements in molecule tox env 2020-09-24 12:13:13 +02:00

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