Helm charts for deploying OpenStack on Kubernetes
Go to file
Marcus d78f8e0901 Improve fault tolerance of MariaDB startup
* Changed podManagementPolicy to parallel in order to allow recovery
  from secondary or third master

  After rebooting the whole cluster on purpose or after a power failure
  a primary node the cluster can synchronize with is required. This is
  usually done automatically by selecting the node with the highest
  transaction id. The current implementation of the stateful set starts
  the nodes in sequence, preventing the start of further nodes if the
  process terminates with error state. Because of this, the cluster may
  not come up if the first or second node are not in primary state.

* Elects first node started in primary state as bootstrap source.
* Display warnings and runs mysqld with wsrep-recover on crashed nodes
* Introduces FORCE_RECOVERY argument for crash recovery

  In case the primary selection failed, the cluster bootstrap process
  must be manually initiated from the most advanced node (highest
  committed transaction id). This information is available from the
  grastate.dat file in case of a clean shutdown. On crashed nodes an
  InnoDB recovery is required to get the last committed transaction id.

  start.sh will handle both cases and gives instructions on how to
  recover the cluster on a hard failure. If FORCE_RECOVERY was set to
  the name of a POD (mariadb-0, mariadb-1, ...), the bootstrap process
  will be initiated from the specified node.

DocImpact
Closes-Bug: #1716461

Change-Id: I96a8cb52124f64920a7d9cf21a8924ede78ebf7b
2018-02-13 11:30:26 +00:00
barbican Merge "Helm-Toolkit: move keystone endpoint jobs to helm-toolkit" 2018-02-08 19:23:11 +00:00
ceilometer Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
ceph Armada: add job cleanup to ceph and openstack components 2018-02-09 08:50:03 -05:00
cinder Merge "CronJobs: Allow cronjob history to be controlled" 2018-02-09 01:49:57 +00:00
congress Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
doc Docs: multinode update 2018-02-08 10:37:41 -05:00
etcd RBAC for OSH 2017-12-26 10:24:19 -05:00
glance Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
gnocchi Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
heat Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
helm-toolkit Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
horizon Auth: Update credential keys to reference service specifically 2018-01-15 18:54:13 +00:00
ingress Configure ingress nginx controller with vts metrics for prometheus 2018-01-19 17:16:46 +00:00
ironic Ironic: chart and initial gate scripts 2018-02-06 22:48:49 +00:00
keystone CronJobs: Allow cronjob history to be controlled 2018-02-08 13:14:09 -05:00
ldap RBAC for OSH 2017-12-26 10:24:19 -05:00
libvirt Libvirt: update default params for newer versions of libvirt 2018-02-04 23:39:08 -05:00
magnum Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
mariadb Improve fault tolerance of MariaDB startup 2018-02-13 11:30:26 +00:00
memcached Memcached: permit multiple deployments within a single namespace 2018-01-19 16:56:53 +00:00
mistral Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
mongodb RBAC for OSH 2017-12-26 10:24:19 -05:00
neutron Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
nova Merge "Helm-Toolkit: move keystone endpoint jobs to helm-toolkit" 2018-02-08 19:23:11 +00:00
openvswitch RBAC for OSH 2017-12-26 10:24:19 -05:00
postgresql Fix PostgreSQL dataloss on pod restart 2018-02-02 22:30:44 +00:00
rabbitmq Merge "Add prometheus exporters to osh charts" 2018-02-08 20:22:23 +00:00
rally Keystone: update user jobs to use defaults in dict keys 2018-02-07 11:03:17 -05:00
senlin Helm-Toolkit: move keystone endpoint jobs to helm-toolkit 2018-02-07 19:51:41 -05:00
tests Refactor Ceph secret generation 2017-06-27 13:42:03 -05:00
tools Merge "Armada: add job cleanup to ceph and openstack components" 2018-02-13 01:21:53 +00:00
.gitignore Add checks for armada fullstack deployment 2018-02-09 01:08:28 +00:00
.gitreview Add .gitreview to OpenStack-Helm 2017-04-11 07:03:45 -05:00
.zuul.yaml Add checks for armada fullstack deployment 2018-02-09 01:08:28 +00:00
CONTRIBUTING.rst Optimize the link address 2017-06-12 04:38:50 +00:00
LICENSE Initial commit 2016-11-12 14:26:57 -05:00
Makefile Add checks for armada fullstack deployment 2018-02-09 01:08:28 +00:00
README.rst Fix dead link for AIO guide 2018-01-19 10:06:18 -06:00
setup.cfg Optimize the link address 2017-06-12 04:38:50 +00:00
setup.py Beggining of docs conversion to OpenStack format 2017-04-27 17:04:17 +02:00
tox.ini Update docs building infra 2017-12-29 00:07:26 -06:00

OpenStack-Helm

Mission

The goal of OpenStack-Helm is to provide a collection of Helm charts that simply, resiliently, and flexibly deploy OpenStack and related services on Kubernetes.

Communication

  • Join us on Slack - #openstack-helm
  • Join us on IRC: #openstack-helm on freenode
  • Community IRC Meetings: [Every Tuesday @ 3PM UTC], #openstack-meeting-5 on freenode
  • Meeting Agenda Items: Agenda

Launchpad

Bugs and blueprints are tracked via OpenStack-Helm's Launchpad.

Installation and Development

Please review our documentation. For quick installation, evaluation, and convenience, we have a kubeadm based all-in-one solution that runs in a Docker container. The Kubeadm-AIO set up can be found here.

This project is under active development. We encourage anyone interested in OpenStack-Helm to review our Installation documentation. Feel free to ask questions or check out our current Issues and Bugs.

To evaluate a multinode installation, follow the Bare Metal install guide.