Deployment of containerised OpenStack to bare metal using kolla and bifrost
Go to file
Mark Goddard b80e94ca36 Fix permissions of kolla-ansible target virtualenv
When using a target virtual environment for kolla-ansible [1], it is possible
to get a Permission Denied error. This can occur if the permissions of
/opt/kayobe or /opt/kayobe/venvs are restricted to the stack user (0700), since
kolla ansible uses the kolla user.

Although it makes sense for /opt/kayobe/venvs/kayobe to be 0700, /opt/kayobe
and /opt/kayobe/venvs should be 0755 to allow the kolla user to access a
virtualenv in /opt/kayobe/venvs/kolla-ansible.

This was seen during deployment of a seed, with kayobe target virtualenvs [2]
also in use. Since the kayobe-target-venv.yml playbook is one of the first
playbooks to be run, it will create the /opt/kayobe and /opt/kayobe/venvs
directories, and set the permissions correctly.

[1] http://kayobe.readthedocs.io/en/latest/configuration/kolla-ansible.html#remote-execution-environment
[2] http://kayobe.readthedocs.io/en/latest/configuration/kayobe.html#remote-execution-environment

Change-Id: I124cff8f08309c1eeef78c035c4cf195367b21f2
Story: 2001968
Task: 15868
2018-05-10 14:47:11 +01:00
.github Add an issue template. 2017-12-14 20:39:55 +00:00
ansible Fix permissions of kolla-ansible target virtualenv 2018-05-10 14:47:11 +01:00
dev Add a job for seed deployment 2018-04-09 12:10:38 +01:00
doc Disable live-restore by default 2018-05-04 14:26:50 +02:00
etc/kayobe Use queens version of dependencies 2018-05-02 11:40:46 +01:00
kayobe Add a job for seed deployment 2018-04-09 12:10:38 +01:00
playbooks Add CI job for molecule tests 2018-04-10 12:28:27 +01:00
roles Add CI job for molecule tests 2018-04-10 12:28:27 +01:00
tools Merge branch 'master' into molecule-kolla-openstack 2018-02-22 15:19:15 +00:00
zuul.d Use queens version of dependencies 2018-05-02 11:40:46 +01:00
.coveragerc Use stestr for running unit tests, add a coverage environment 2018-03-08 16:37:08 +00:00
.gitignore Use pbr to build the project 2018-03-08 16:37:08 +00:00
.gitreview Add .gitreview file 2018-03-08 16:37:08 +00:00
.stestr.conf Use stestr for running unit tests, add a coverage environment 2018-03-08 16:37:08 +00:00
.travis.yml Add a tox environment & dependencies for running molecule tests 2018-02-20 18:48:28 +00:00
CONTRIBUTING.rst Update README & CONTRIBUTING for OpenStack process 2018-03-13 14:14:26 +00:00
HACKING.rst Update README & CONTRIBUTING for OpenStack process 2018-03-13 14:14:26 +00:00
LICENSE License kayobe project under Apache2 2017-04-06 10:15:29 +01:00
README.rst Update README & CONTRIBUTING for OpenStack process 2018-03-13 14:14:26 +00:00
requirements.txt Use pbr to build the project 2018-03-08 16:37:08 +00:00
requirements.yml add tag for ceph + storage node 2018-02-06 18:00:57 +01:00
setup.cfg Follow the new PTI for document build 2018-04-03 17:28:15 +01:00
setup.py Use pbr to build the project 2018-03-08 16:37:08 +00:00
test-requirements.txt Follow the new PTI for document build 2018-04-03 17:28:15 +01:00
tox.ini Use queens version of dependencies 2018-05-02 11:40:46 +01:00
Vagrantfile Add scripting around the development environment 2018-01-31 10:58:19 +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

In the near future we aim to add support for the following: