Deployment of containerised OpenStack to bare metal using kolla and bifrost
Go to file
Mark Goddard 1d8b4e2500 Enable 'data' LVM group only for Docker devicemapper
This change is a precursor to switching the default Docker storage
driver to overlay2.

Previously, Kayobe's default configuration included a 'data' LVM volume
group, with a 'docker-volumes' logical volume mounted at
/var/lib/docker/volumes. Additionally, if the Docker devicemapper
storage driver was used, the data volume group would contain the
docker-thinpool and docker-thinpoolmeta volumes.

This LVM setup was really included for devicemapper, and while in some
cases it may be useful to have docker volumes as a separate logical
volume, this doesn't really make sense as a default. Often in
environments using other Docker storage drivers, the data volume group
would be removed from configuration.

This change modifies the default LVM configuration to only create a
'data' volume group if the Docker storage driver is devicemapper.
Additionally, new flags are added to make this choice independent from
the storage driver, to support cases where the data volume group is
required without devicemapper.

Change-Id: Ia3c1f6423c32fa2580b57db32512a34ce35d7acc
Story: 2005667
Task: 30973
2020-04-23 14:20:59 +01:00
.github Add an issue template. 2017-12-14 20:39:55 +00:00
ansible Enable 'data' LVM group only for Docker devicemapper 2020-04-23 14:20:59 +01:00
dev Merge "Use upper constraints when installing Tenks" 2020-04-22 20:11:14 +00:00
doc Enable 'data' LVM group only for Docker devicemapper 2020-04-23 14:20:59 +01:00
etc/kayobe Merge "Don't use become for Kolla Ansible" 2020-04-22 00:50:41 +00:00
kayobe Merge "Add support for stopping overcloud services" 2020-04-22 00:28:40 +00:00
playbooks Merge "CentOS 8: Enable overcloud upgrade job" 2020-03-23 14:24:55 +00:00
releasenotes Enable 'data' LVM group only for Docker devicemapper 2020-04-23 14:20:59 +01:00
roles Stop gzipping logs in get-logs.sh 2020-02-11 13:04:37 +00:00
tools Use unittest.mock instead of PyPI mock 2020-04-03 10:22:39 +01:00
zuul.d Fix passwords.yml generation with vault encryption on Python 3 2020-04-20 15:42:22 +01: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 Sync Sphinx requirement 2019-06-25 02:24:45 +00: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
requirements.txt Cleanup py27 support 2020-04-20 18:04:19 +00:00
requirements.yml CentOS 8: seed VM & bifrost 2020-04-09 14:04:22 +00:00
setup.cfg Merge "Cleanup py27 support" 2020-04-22 17:59:29 +00:00
setup.py Cleanup py27 support 2020-04-20 18:04:19 +00:00
test-requirements.txt Remove sphinx from test-requirements.txt 2019-10-21 11:10:13 +02:00
tox.ini Cleanup py27 support 2020-04-20 18:04:19 +00:00
Vagrantfile Support complete installation of Kayobe as a python package 2019-02-01 12:55:27 +00:00

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