Deployment of containerised OpenStack to bare metal using kolla and bifrost
Go to file
Mark Goddard c9c0019d7e Use jinja2.pass_context instead of contextfilter
The contextfilter decorator was deprecated in jinja2 3.0.0, and has been
dropped in 3.1.0. This results in the following warning, and failed
attempts to use filters:

    [WARNING]: Skipping plugin (networks.py) as it seems to be invalid:
    module 'jinja2' has no attribute 'contextfilter'

This change switches to use the pass_context decorator. The minimum
version of Jinja2 is raised to 3 to ensure pass_context is present.

This change also includes some changes to address issues with image
builds in CI, caused by CentOS Scream.

1. disable IPA image builds in seed deploy jobs

IPA image builds will be split out into a separate job. For now, disable
them.

2. disable overcloud host image builds in seed deploy jobs

Overcloud host image builds will be split out into a separate job. For
now, disable them.

Depends-On: https://review.opendev.org/c/openstack/kayobe/+/835279
Change-Id: If657bf5b0117812d3c53942464cc41cf86cc8ad5
2022-03-29 13:59:56 +01:00
.github Add an issue template. 2017-12-14 20:39:55 +00:00
ansible Merge "Ubuntu: add support for Apt configuration" 2022-03-23 17:18:16 +00:00
dev Merge "Add support for Rocky Linux 8" 2022-03-20 22:20:24 +00:00
doc Ubuntu: add support for Apt configuration 2022-03-23 06:48:56 +00:00
etc/kayobe Ubuntu: add support for Apt configuration 2022-03-23 06:48:56 +00:00
kayobe Use jinja2.pass_context instead of contextfilter 2022-03-29 13:59:56 +01:00
playbooks Use jinja2.pass_context instead of contextfilter 2022-03-29 13:59:56 +01:00
releasenotes Use jinja2.pass_context instead of contextfilter 2022-03-29 13:59:56 +01:00
roles Add support for Rocky Linux 8 2022-03-18 15:04:21 +00:00
tools Use merge_configs and merge_yaml to generate Kolla configs 2021-10-08 09:08:45 +01:00
zuul.d Merge "Add support for Rocky Linux 8" 2022-03-20 22:20:24 +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 Bump max Ansible version to 2.10 2021-03-24 07:25:28 +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 docs: Update Freenode to OFTC 2021-05-31 10:02:04 +02:00
Vagrantfile Upgrade Vagrant VM to CentOS 8 2020-05-19 10:08:36 +01:00
bindep.txt Add missing font for PDF generation 2021-07-27 07:33:20 +02:00
molecule-requirements.txt CI: pin pytest-metadata<2 for molecule 2022-03-22 20:09:21 +00:00
requirements.txt Use jinja2.pass_context instead of contextfilter 2022-03-29 13:59:56 +01:00
requirements.yml Use jinja2.pass_context instead of contextfilter 2022-03-29 13:59:56 +01:00
setup.cfg Update python testing classifier 2022-01-11 22:03:31 +08:00
setup.py Cleanup py27 support 2020-04-20 18:04:19 +00:00
test-requirements.txt CI: Fix multiple failures 2021-09-03 23:10:39 +02:00
tox.ini Revert "Use OpenStack Xena release" 2021-11-09 17:31:48 +00:00

README.rst

Kayobe

image

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.