A declarative framework for resilient Kubernetes deployment.
Go to file
Matt McEuen fcaacf94a3 Add -e to pre_stop hooks
This adds -e to the pre_stop scripts, so that they fail out if
any of their commands fail.  This is required, since it's the only
way to communicate whether there is an issue during pre_hook
execution.

"The logs for a Hook handler are not exposed in Pod events.
If a handler fails for some reason, it broadcasts an event."
https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks

As an example, this issue was discovered when "touch /tmp/stop"
was failing silently due to a readOnlyRootFilesystem setting,
resulting in pods that would not successfully Terminate until
the grace period was exhausted.

Change-Id: Ic9a228230d944530e31ed61f4239fd434cbb6187
2019-11-07 17:31:50 -06:00
charts Add -e to pre_stop hooks 2019-11-07 17:31:50 -06:00
doc Migrate config to KubeletConfiguration 2019-10-30 18:22:20 +00:00
etc/promenade Minor testing-related cleanup 2018-01-02 10:14:10 -06:00
examples Merge "CoreDNS probe refactoring and version uplift" 2019-11-07 21:11:25 +00:00
promenade Dynamic kubelet config support 2019-11-01 14:14:42 -05:00
tests Merge "CoreDNS probe refactoring and version uplift" 2019-11-07 21:11:25 +00:00
tools Migrate config to KubeletConfiguration 2019-10-30 18:22:20 +00:00
.dockerignore Remove tests from images 2018-08-02 15:37:18 -05:00
.gitignore Upgrade mismatch dependencies for pegleg 2019-09-20 15:23:21 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:52:18 +00:00
.readthedocs.yaml Fix: Promenade Exceptions docs rendering on RTD 2019-08-27 22:57:15 +02:00
.zuul.yaml (promenade) Support genesis on 18.04 2019-10-01 03:28:28 -05:00
Dockerfile CoreDNS probe refactoring and version uplift 2019-10-16 12:04:33 -07:00
LICENSE Initial commit 2017-02-14 11:13:39 -08:00
Makefile Fix: Promenade Exceptions docs rendering on RTD 2019-08-27 22:57:15 +02: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 Upgrade mismatch dependencies for pegleg 2019-09-20 15:23:21 +00:00
requirements-frozen.txt Upgrade mismatch dependencies for pegleg 2019-09-20 15:23:21 +00:00
requirements.txt Pull requirements-direct into requirements 2019-08-26 13:52:04 +00:00
setup.cfg Fix outdated external references 2019-09-06 13:11:17 -05: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 Fix: Promenade Exceptions docs rendering on RTD 2019-08-27 22:57:15 +02: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.