A declarative framework for resilient Kubernetes deployment.
Go to file
Mark Burnett fce98459a6 Basic HA kubernetes deployment (#7)
* remove old files

* sketch of non-bootkube genesis

* add basic chroot/bootstrap script

* cleanup kubectl/kubelet fetching

* fix cni bin asset path

* add non-pod asset loader

* add example ca

* refactor key gen/distribution

* flannel up on genesis

* refactor some code toward join

* WIP: last commit working on "self-hosted, helm-managed"

* first pass at consolidating config for vanilla deploy

* refactor cli a bit

* use provided cluster ca

* separate genesis and join scripts

* add basic etcd joining

* actually run the proxy everywhere

* update readme

* enable kubelet service

* add pki most places

* use consistent sa keypair

* use quay.io/attcomdev/promenade

* fix typo in n3

* tls everywhere in kubernetes

* tls for etcd

* remove currently unused files
2017-06-15 20:57:22 -07:00
example Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
promenade Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
.dockerignore Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
.gitignore Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
Dockerfile Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
LICENSE Initial commit 2017-02-14 11:13:39 -08:00
README.md Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
Vagrantfile Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
genesis.sh Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
join.sh Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
requirements-frozen.txt Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
requirements.txt Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
setup.cfg Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00
setup.py Basic HA kubernetes deployment (#7) 2017-06-15 20:57:22 -07:00

README.md

Overview

Promenade is tool for deploying self-hosted, highly resilient Kubernetes clusters.

Quickstart using Vagrant

Make sure you have Vagrant and VirtualBox installed.

Start the VMs:

vagrant up

Start the genesis node:

vagrant ssh n0 -c 'sudo /vagrant/genesis.sh /vagrant/example/vagrant-config.yaml'

Join the master nodes:

vagrant ssh n1 -c 'sudo /vagrant/join.sh /vagrant/example/vagrant-config.yaml'
vagrant ssh n2 -c 'sudo /vagrant/join.sh /vagrant/example/vagrant-config.yaml'

Join the worker node:

vagrant ssh n3 -c 'sudo /vagrant/join.sh /vagrant/example/vagrant-config.yaml'

Building the image

docker build -t quay.io/attcomdev/promenade:experimental .