update example & README
This commit is contained in:
parent
dee398d5e9
commit
1cc6fb4c0e
48
README.md
48
README.md
|
@ -7,6 +7,13 @@ Promenade is tool for deploying self-hosted, highly resilient Kubernetes cluster
|
||||||
Make sure you have [Vagrant](https://vagrantup.com) and
|
Make sure you have [Vagrant](https://vagrantup.com) and
|
||||||
[VirtualBox](https://www.virtualbox.org/wiki/Downloads) installed.
|
[VirtualBox](https://www.virtualbox.org/wiki/Downloads) installed.
|
||||||
|
|
||||||
|
Generate the certificates and keys to be used:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir configs
|
||||||
|
docker run --rm -t -v $(pwd):/target quay.io/attcomdev/promenade:experimental promenade -v generate -c /target/example/vagrant-input-config.yaml -o /target/configs
|
||||||
|
```
|
||||||
|
|
||||||
Start the VMs:
|
Start the VMs:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
@ -16,26 +23,20 @@ vagrant up
|
||||||
Start the genesis node:
|
Start the genesis node:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vagrant ssh n0 -c 'sudo /vagrant/genesis.sh /vagrant/example/vagrant-config.yaml'
|
vagrant ssh n0 -c 'sudo /vagrant/genesis.sh /vagrant/configs/n0.yaml'
|
||||||
```
|
```
|
||||||
|
|
||||||
Join the master nodes:
|
Join the master nodes:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vagrant ssh n1 -c 'sudo /vagrant/join.sh /vagrant/example/vagrant-config.yaml'
|
vagrant ssh n1 -c 'sudo /vagrant/join.sh /vagrant/configs/n1.yaml'
|
||||||
vagrant ssh n2 -c 'sudo /vagrant/join.sh /vagrant/example/vagrant-config.yaml'
|
vagrant ssh n2 -c 'sudo /vagrant/join.sh /vagrant/configs/n2.yaml'
|
||||||
```
|
```
|
||||||
|
|
||||||
Join the worker node:
|
Join the worker node:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
vagrant ssh n3 -c 'sudo /vagrant/join.sh /vagrant/example/vagrant-config.yaml'
|
vagrant ssh n3 -c 'sudo /vagrant/join.sh /vagrant/configs/n3.yaml'
|
||||||
```
|
|
||||||
|
|
||||||
## Building the image
|
|
||||||
|
|
||||||
```bash
|
|
||||||
docker build -t quay.io/attcomdev/promenade:experimental .
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Using Promenade Behind a Proxy
|
## Using Promenade Behind a Proxy
|
||||||
|
@ -50,3 +51,30 @@ export DOCKER_HTTPS_PROXY="https://proxy.server.com:8080"
|
||||||
export DOCKER_NO_PROXY="localhost,127.0.0.1"
|
export DOCKER_NO_PROXY="localhost,127.0.0.1"
|
||||||
sudo -E /vagrant/genesis.sh /vagrant/example/vagrant-config.yaml
|
sudo -E /vagrant/genesis.sh /vagrant/example/vagrant-config.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Building the image
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker build -t quay.io/attcomdev/promenade:experimental .
|
||||||
|
```
|
||||||
|
|
||||||
|
For development, you may wish to save it and have the `genesis.sh` and
|
||||||
|
`join.sh` scripts load it:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker save -o promenade.tar quay.io/attcomdev/promenade:experimental
|
||||||
|
```
|
||||||
|
|
||||||
|
Then on a node:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
PROMENADE_LOAD_IMAGE=/vagrant/promenade.tar /vagrant/genesis.sh /vagrant/path/to/node-config.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
To build the image from behind a proxy, you can:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
export http_proxy=...
|
||||||
|
export no_proxy=...
|
||||||
|
docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$http_proxy --build-arg no_proxy=$no_proxy -t quay.io/attcomdev/promenade:experimental .
|
||||||
|
```
|
||||||
|
|
|
@ -1,129 +0,0 @@
|
||||||
---
|
|
||||||
network:
|
|
||||||
cluster_domain: cluster.local
|
|
||||||
cluster_dns: 10.96.0.10
|
|
||||||
kube_service_ip: 10.96.0.1
|
|
||||||
pod_ip_cidr: 10.97.0.0/16
|
|
||||||
service_ip_cidr: 10.96.0.0/16
|
|
||||||
|
|
||||||
nodes:
|
|
||||||
n0:
|
|
||||||
ip: 192.168.77.10
|
|
||||||
roles:
|
|
||||||
- master
|
|
||||||
- genesis
|
|
||||||
additional_labels:
|
|
||||||
- beta.kubernetes.io/arch=amd64
|
|
||||||
n1:
|
|
||||||
ip: 192.168.77.11
|
|
||||||
roles:
|
|
||||||
- master
|
|
||||||
additional_labels:
|
|
||||||
- beta.kubernetes.io/arch=amd64
|
|
||||||
n2:
|
|
||||||
ip: 192.168.77.12
|
|
||||||
roles:
|
|
||||||
- master
|
|
||||||
additional_labels:
|
|
||||||
- beta.kubernetes.io/arch=amd64
|
|
||||||
n3:
|
|
||||||
ip: 192.168.77.13
|
|
||||||
roles:
|
|
||||||
- worker
|
|
||||||
additional_labels:
|
|
||||||
- beta.kubernetes.io/arch=amd64
|
|
||||||
|
|
||||||
pki:
|
|
||||||
cluster-ca: |-
|
|
||||||
-----BEGIN CERTIFICATE-----
|
|
||||||
MIIDzjCCAragAwIBAgIUKwePtKtZf/KbwdhRke8d38V294IwDQYJKoZIhvcNAQEL
|
|
||||||
BQAwbTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCE1pc3NvdXJpMRQwEgYDVQQHEwtT
|
|
||||||
YWludCBMb3VpczETMBEGA1UEChMKS3ViZXJuZXRlczELMAkGA1UECxMCQ0ExEzAR
|
|
||||||
BgNVBAMTCkt1YmVybmV0ZXMwHhcNMTcwNjEzMTY1NzAwWhcNMjIwNjEyMTY1NzAw
|
|
||||||
WjBtMQswCQYDVQQGEwJVUzERMA8GA1UECBMITWlzc291cmkxFDASBgNVBAcTC1Nh
|
|
||||||
aW50IExvdWlzMRMwEQYDVQQKEwpLdWJlcm5ldGVzMQswCQYDVQQLEwJDQTETMBEG
|
|
||||||
A1UEAxMKS3ViZXJuZXRlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
|
|
||||||
AO8vjAoGyv6KigTnF6WZMoskzfCC2ZsLT22y457/irOe2EYazHbeXz/7Jlb8LwWn
|
|
||||||
uMSaGlu/x5XfF3VGlMkq392S2CsfqLOO8AjUTn4YGOUx5IU++hh3SQ+cFrv/CF5l
|
|
||||||
jeeXZGoSbMLhMvaWc3MHGCTNktBe4Q+DyRCyw81fMH+2C9dZtjH+cKOBUvhcMIDW
|
|
||||||
z7i3MJ0th23PLyd9ZwVHDgyqUkzaY/zTgmSk1V++VJ9BwIn41/J/bW8peqPW1/cq
|
|
||||||
B8BX45SBgyKgVRkQGppsDH7+MqDFzU2ZWP0R1EtGz68+TJObtl6yHY/pj8ksg7T1
|
|
||||||
uQgZXzMrzsVoQNkiBKpiau0CAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIGA1Ud
|
|
||||||
EwEB/wQIMAYBAf8CAQIwHQYDVR0OBBYEFOGG+QV7EZ7kGhFxzB3P+ve4MdCsMB8G
|
|
||||||
A1UdIwQYMBaAFOGG+QV7EZ7kGhFxzB3P+ve4MdCsMA0GCSqGSIb3DQEBCwUAA4IB
|
|
||||||
AQCvth3gmSivlS+6dBuoKxK52pqzqtVCMr3YSqc1ORsWh6FQA+2M2ZSHKgfgkqfK
|
|
||||||
WaDkgV0FZl5IIQ2t3V8ZQEj+WI2crnoR6cTTz+vXOJXm780IpH717d3PTYKBv4sU
|
|
||||||
t8BpNhePPNeH7ZrW5P9+EVZ0ZFPSICbI9k8MFGlSJp5zgM6sinXmRaK59cnfBgEc
|
|
||||||
cCnjvuY/BzNIiABBSsg8Pj2hOduIVK0xP3DnqGkPV5BEQP/dmhe81CG1v6WQZpev
|
|
||||||
qC+jSvZYETWMg3sCQoyYveBRBce9vo94VqcA99FNnDoYsf16dZnKO6mP8rta21zp
|
|
||||||
O1G/5Sc5HA/MvMldKvLrtqG4
|
|
||||||
-----END CERTIFICATE-----
|
|
||||||
|
|
||||||
cluster-ca-key: |-
|
|
||||||
-----BEGIN RSA PRIVATE KEY-----
|
|
||||||
MIIEpQIBAAKCAQEA7y+MCgbK/oqKBOcXpZkyiyTN8ILZmwtPbbLjnv+Ks57YRhrM
|
|
||||||
dt5fP/smVvwvBae4xJoaW7/Hld8XdUaUySrf3ZLYKx+os47wCNROfhgY5THkhT76
|
|
||||||
GHdJD5wWu/8IXmWN55dkahJswuEy9pZzcwcYJM2S0F7hD4PJELLDzV8wf7YL11m2
|
|
||||||
Mf5wo4FS+FwwgNbPuLcwnS2Hbc8vJ31nBUcODKpSTNpj/NOCZKTVX75Un0HAifjX
|
|
||||||
8n9tbyl6o9bX9yoHwFfjlIGDIqBVGRAammwMfv4yoMXNTZlY/RHUS0bPrz5Mk5u2
|
|
||||||
XrIdj+mPySyDtPW5CBlfMyvOxWhA2SIEqmJq7QIDAQABAoIBAQCwCyLbTlyiNH2Z
|
|
||||||
Vi2FaNhWqWQaHXTkNNLlPsFiCVuhEMzF7HuJEeqxQLzbUQma8/N+YJ394Y2YtXai
|
|
||||||
jqx7096pSqdoNgkI/6+UEA8lp77LEonLuKqCz2kq4Aurmu4h7EUhq7/wglciqHXG
|
|
||||||
IL4gb5xJmjTwwKSNssWOUMTkp6celwakyzh1w+Sgo0qRKu75RtdkBnaLd2i8DI9F
|
|
||||||
N0v9aMO8zC317DVhTBw2Wl6ZK2P2kdh2BB54NPrRm8edfViz5p7oq/Fs3YHC6+Hn
|
|
||||||
cJMU87Wkxi/tbs2YKdnQraokLK40EpdDOsokW/IguHanvY55VTllzT9o5lEvsFCA
|
|
||||||
u0ZOasSBAoGBAPjDGgNkZP8WcmxhRFQRdaNn5/37g0I7mspdELNA8/7hPJGn9BCK
|
|
||||||
r+Ozf6LSjW6m2XVmluyCJSU/HbETfz1lo5HHUCV6uyIZHuHRF0ORovGTZJFSzYzL
|
|
||||||
WFs5JLe6dXwS096oxq2knWaVEocNbUOue2Ptui1izNlQ7yDFeS27VJ95AoGBAPYl
|
|
||||||
Ha7ZbAsY5M7VIzJTie3dt6QnWs8qfd7pV3IUrAuCjYSDOBUWommV1Mbxw2SyYntf
|
|
||||||
AvXBIbuzsbpFsjKEypyyud0XNj3hNFI1xAJKdAF213zQYs4nZZnI5YST7GGDEGwP
|
|
||||||
jCBm1MKLzHyUJ2ip1hc5zEM11hA8OsvK0vvyuIYVAoGBAI4sc6Gcr1xbJ+ppbPPf
|
|
||||||
RqytphmytcIU7tLZfcH1TX5OnJ9irksF+KDa5gfY7pxfH8nJaFijyTcQa5fY3M/q
|
|
||||||
VyHqGBRToMBMOyo0pmcnxUjsRH4KJRBi54y7jBC1sI/I8u4+5842Vv9aE8y8D8au
|
|
||||||
4jaql814ujs51nGUaz2H40WBAoGBAO+zM1XLu7CO3HsjCjR/L8mpaaV9AazO92a1
|
|
||||||
m4en4+cNitzpoBrBQQZLd7sJQrt0D/2Oh+Zk3oHYuxHnv2H8+QZh8igA67yU7AvG
|
|
||||||
+gs1EAVBAxY0JJQXv5RkFEboeoB3Tu28sjv3h+ewlkEXUc1V3vwdN/KXoc+Lp8I/
|
|
||||||
0Piz5MgFAoGAJQMFyA6sU03vW9nmmZuT5SYOgDm/JpJ9/fSwCxtmOxlRjzxL0G/l
|
|
||||||
OhnsGBv1NbtoDZ+YMYY/0BhOhv6yzIJMCDmi5yuCw0FysL4pAaW40NKiMtZSOBdH
|
|
||||||
ZuATA+uF7kV7K+NbO7FT0knfNjFkk9jVbjq+To3D3/FbVxS9VTbu9nk=
|
|
||||||
-----END RSA PRIVATE KEY-----
|
|
||||||
|
|
||||||
sa: |-
|
|
||||||
-----BEGIN PUBLIC KEY-----
|
|
||||||
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6jYQ1LKjd/s7bcgxlw1o
|
|
||||||
RR91Vb0MnSCUA4OSzJ5Hh0x8gOpllMpbeRdY4X605aOjYwku1Xlc9HFtjxMSDxjR
|
|
||||||
jDaLQnVy+stNScFuOLn5VfWtgHJ68WlgZSzIjxveDGVFw2YguQMj8vMPNeCq2EAc
|
|
||||||
/VFBWUXdNUC8/ipn2T4VA7DSjkZheNhHwigPIlS/kumfSXiIshMLM0P+Yx0wp72D
|
|
||||||
vqp93C4523COw2DTyiv4azUYIGHBkyWtgfIES4gavxp2oFgvxcPvl1Y7XuHJzH0g
|
|
||||||
ncZJVJS5o0WPFUzRlipyyZa0CxDKFkOy3pLQDEvn2mb5zL1rzd58kQowmLtP1aX7
|
|
||||||
mQIDAQAB
|
|
||||||
-----END PUBLIC KEY-----
|
|
||||||
|
|
||||||
sa-key: |-
|
|
||||||
-----BEGIN RSA PRIVATE KEY-----
|
|
||||||
MIIEogIBAAKCAQEA6jYQ1LKjd/s7bcgxlw1oRR91Vb0MnSCUA4OSzJ5Hh0x8gOpl
|
|
||||||
lMpbeRdY4X605aOjYwku1Xlc9HFtjxMSDxjRjDaLQnVy+stNScFuOLn5VfWtgHJ6
|
|
||||||
8WlgZSzIjxveDGVFw2YguQMj8vMPNeCq2EAc/VFBWUXdNUC8/ipn2T4VA7DSjkZh
|
|
||||||
eNhHwigPIlS/kumfSXiIshMLM0P+Yx0wp72Dvqp93C4523COw2DTyiv4azUYIGHB
|
|
||||||
kyWtgfIES4gavxp2oFgvxcPvl1Y7XuHJzH0gncZJVJS5o0WPFUzRlipyyZa0CxDK
|
|
||||||
FkOy3pLQDEvn2mb5zL1rzd58kQowmLtP1aX7mQIDAQABAoIBADdEhNo8QVjpvw9b
|
|
||||||
41/auRU+pCiUUOqvKl5d6QFCBG0H/oVJSqk+yzEa8k1b4gIiiEaxfwy+89F3Brxx
|
|
||||||
apyHZcNph5kqL/TAjr9t1r2qHQ1MySF7YkmfbTDSzYz/rXlNWJYQfn5KIGyPMLKt
|
|
||||||
DoOzNWQNjZcsZlPPsAlmJlVcUgcpeiPKEGYBwi/Xfp7kJZjr+jxn3U/VImiDBuA/
|
|
||||||
ipdqfzUsQc363mSnRCHGptmv3TBJh4TXpuoxAkjEryKhXDTjsDGWt4hqZJBZiF0I
|
|
||||||
eGAnhvignqle+fkTGwszUrz/8PMAdWUGeTQ/DsWcUUgGzbu7Q1libFo0mj+BA9fM
|
|
||||||
Y9De4wECgYEA97UDxjZX58RHTedpnUQFgg64ZPmKMYe9nQHvRCw1/9SRoUN/1zid
|
|
||||||
Zaz+IbNvjpBpwBwhxg1ISG0Wo02iMlbtOXsJnmE9o45FnyH/8uDfxj93pklaopxY
|
|
||||||
1GwGnR4q8xgUxol7rbL5mHBbcwXxAbU7uCFlTKmXEs5SzvJflMBCaqECgYEA8g1i
|
|
||||||
QPFSCdqXVRRm/u6js62QYyitXQLrlQWhr2Jd1vxD4ngPRE0mR3qe37RldcEO6x8Y
|
|
||||||
zeurj5g1pZFZOOcLZvBSE0TxFYMtsxa+42huAgUOs9RKtDfjgcMCRTcuCBQkpGXb
|
|
||||||
hpVPUTpm/VcAmoUYu1frFoo/0vkS3e/JLCPDJfkCgYB9Q+cSt6ygohvFA7/fLeTz
|
|
||||||
LmqFdcQy5Ag5fB75hLoSE/dJbA8cUZ8XKfKiLFG/8Lvp0NArjc/+AFywXLQnbNou
|
|
||||||
dVAZ7ebz7SC8Jr9+ncXMRZBGYVYaYaJyWebGUdk6cfUfqasH3jhmpHs6ociNKo92
|
|
||||||
wDywFhs2AWzTBrLbUJbFwQKBgAam2YFhYFjG+gurgN0Wn8cLSQGAl6sLrn+s5PGV
|
|
||||||
6XBEBHWPyROebyPducn6AiPHR2qssxjNlixfCXJgWSxYJRcSGZ9P8LQfo7zdLie/
|
|
||||||
se46R1onxlnHg2gIfOJ8DrbIHu2pouvC5Kgdy8DAiFK2v6Q+WUaITBK3J46TzVp6
|
|
||||||
LR25AoGAJF0PwL19DWsJq/lfftgaUqSBwgdJh4ene+lvatdAfFZ1D6LUE+wUXXd+
|
|
||||||
EyVxLnvg4Yp2j0ZxTPc2Bv/9/H/Rso79kdZgyt/cSA+FpgZRTy/zKl7BsNnJxgQJ
|
|
||||||
cpNottrjMWgRXrbmTkqmqUtkqc31HMTmZ3U1Fum/uh0sEOv7Rd0=
|
|
||||||
-----END RSA PRIVATE KEY-----
|
|
|
@ -0,0 +1,46 @@
|
||||||
|
---
|
||||||
|
apiVersion: promenade/v1
|
||||||
|
kind: Cluster
|
||||||
|
metadata:
|
||||||
|
name: example
|
||||||
|
target: none
|
||||||
|
spec:
|
||||||
|
nodes:
|
||||||
|
n0:
|
||||||
|
ip: 192.168.77.10
|
||||||
|
roles:
|
||||||
|
- master
|
||||||
|
- genesis
|
||||||
|
additional_labels:
|
||||||
|
- beta.kubernetes.io/arch=amd64
|
||||||
|
n1:
|
||||||
|
ip: 192.168.77.11
|
||||||
|
roles:
|
||||||
|
- master
|
||||||
|
additional_labels:
|
||||||
|
- beta.kubernetes.io/arch=amd64
|
||||||
|
n2:
|
||||||
|
ip: 192.168.77.12
|
||||||
|
roles:
|
||||||
|
- master
|
||||||
|
additional_labels:
|
||||||
|
- beta.kubernetes.io/arch=amd64
|
||||||
|
n3:
|
||||||
|
ip: 192.168.77.13
|
||||||
|
roles:
|
||||||
|
- worker
|
||||||
|
additional_labels:
|
||||||
|
- beta.kubernetes.io/arch=amd64
|
||||||
|
---
|
||||||
|
apiVersion: promenade/v1
|
||||||
|
kind: Network
|
||||||
|
metadata:
|
||||||
|
cluster: example
|
||||||
|
name: example
|
||||||
|
target: all
|
||||||
|
spec:
|
||||||
|
cluster_domain: cluster.local
|
||||||
|
cluster_dns: 10.96.0.10
|
||||||
|
kube_service_ip: 10.96.0.1
|
||||||
|
pod_ip_cidr: 10.97.0.0/16
|
||||||
|
service_ip_cidr: 10.96.0.0/16
|
Loading…
Reference in New Issue