A declarative framework for resilient Kubernetes deployment.
Go to file
Sean Eagan 7517d3161c Fix potential port conflict
This change has been tested by the promenade resiliency gate.

This adds configuration for which ports to use for the tiller container
in the bootstrap-armada pod, and changes the defaults to be outside of
`net.ipv4.ip_local_port_range`, since the apiserver container in this pod
dynamically selects ports in that range to connect to etcd, which can
cause conflicts. See [0] for an example.

By default, since we're no longer using the standard tiller ports, this
does mean that we cannot connect to this tiller instance (before it's
replaced by the chart-based instance) via the helm CLI, until it supports
overriding the tiller port to connect to, however this should be
relatively soon [1].

[0]: https://github.com/helm/helm/issues/4886
[1]: https://github.com/helm/helm/pull/5590

Change-Id: Ief11411f079db27489e6974c028f6b7a16bb67bf
2019-08-05 15:52:39 -05:00
charts hyperkube image in promenade init 2019-06-28 12:46:28 -07:00
doc Fix potential port conflict 2019-08-05 15:52:39 -05:00
etc/promenade Minor testing-related cleanup 2018-01-02 10:14:10 -06:00
examples Make aux etcd more conservative 2019-07-03 13:20:02 -05:00
promenade Fix potential port conflict 2019-08-05 15:52:39 -05:00
tests New source for hyperkube binary definition 2019-06-06 10:30:29 -07:00
tools Add deploy promenade gate check 2019-06-11 04:53:20 -05:00
.dockerignore Remove tests from images 2018-08-02 15:37:18 -05:00
.gitignore Generalize .fiotest ignore 2019-03-11 14:25:01 -05:00
.gitreview OpenDev Migration Patch 2019-04-19 19:52:18 +00:00
.zuul.yaml Add deploy promenade gate check 2019-06-11 04:53:20 -05:00
Dockerfile Enable using PBR for package library 2018-10-25 17:04:29 -05:00
LICENSE Initial commit 2017-02-14 11:13:39 -08:00
Makefile Minor: meaningful default label 2018-11-08 19:32:19 +01:00
README.md Update the README.md File 2018-07-30 15:52:23 -05:00
entrypoint.sh Log client-id in UCP API endpoints 2019-04-05 09:55:15 +00:00
requirements-direct.txt New source for hyperkube binary definition 2019-06-06 10:30:29 -07:00
requirements-frozen.txt New source for hyperkube binary definition 2019-06-06 10:30:29 -07:00
requirements.txt Avoid directly installing non-frozen dependencies 2017-10-20 10:54:10 -05:00
setup.cfg Add airship-discuss 2019-01-15 08:27:17 +00:00
setup.py Enable using PBR for package library 2018-10-25 17:04:29 -05:00
test-requirements.txt Moving documentation only requirements into doc/requirements.txt 2019-02-11 12:11:02 +00:00
tox.ini Moving documentation only requirements into doc/requirements.txt 2019-02-11 12:11:02 +00:00

README.md

Promenade

Promenade is a tool for bootstrapping a resilient Kubernetes cluster and managing its life-cycle via Helm charts.

Documentation can be found here.

Roadmap

The detailed Roadmap can be viewed on the OpenStack StoryBoard.

  • Cluster bootstrapping
    • Initial Genesis process results in a single node Kubernetes cluster with Under-cloud components deployed using Armada.
    • Joining sufficient master nodes results in a resilient Kubernetes cluster.
    • Destroy Genesis node after bootstrapping and re-provision as a normal node to ensure consistency.
  • Life-cycle management
    • Decommissioning of nodes.
    • Updating Kubernetes version.

Getting Started

To get started, see getting started.

Configuration is documented here.

Bugs

Bugs are tracked in OpenStack StoryBoard.