955deeda417746fb339b7518d232bedaaca7408d

Now it's possible to use hyperkube Docker image to extract hyperkube binary. Use case for this feature is kubelet/kubectl delivery in one binary(hyperkube) which is built into Docker image. Promenade will extract hyperkube from Docker image, create symlinks for kubelet/kubectl pointed to hyperkube. To do so promenade container need to be configured to use Docker on the host where this container will be created. This is happening only for script generation for genesis node. Later when promenade will be started as a service pod inside ucp cluster it will generate scripts for joining nodes by using cached hyperkube from /tmp. Old way to delivery kubelet from tarball is still supported. Configuration for the new method. Need to export environment variables to properly configure Docker in Docker. Docker socket should be provided as a mounted file inside promenade. Also need to set temporary permissions for this socket during the build scripts stage. Example: DOCKER_SOCK="/var/run/docker.sock" sudo chmod o+rw $DOCKER_SOCK export DOCKER_HOST="unix:/${DOCKER_SOCK}" export PROMENADE_TMP="abs_path_tmp_dir_on_host" export PROMENADE_TMP_LOCAL="tmp_dir_inside_container" After genesis scripts generation Docker socket permission should be turned back: sudo chmod o-rw $DOCKER_SOCK Change-Id: Ida22ea934fc551fec34df162d8147c8b9e630330
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.
Description
Languages
Python
40.2%
Smarty
33.5%
Shell
24.8%
Makefile
1.5%