Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save CalvinHartwell/322ee5806d0dd02cf2924b86ec73d038 to your computer and use it in GitHub Desktop.

Select an option

Save CalvinHartwell/322ee5806d0dd02cf2924b86ec73d038 to your computer and use it in GitHub Desktop.
magic bundle
series: xenial
description: A nine-machine Kubernetes cluster, appropriate for production. Includes a three-machine etcd cluster and three Kubernetes worker nodes.
machines:
0:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
services:
easyrsa:
annotations:
gui-x: '450'
gui-y: '550'
charm: cs:~containers/easyrsa-38
num_units: 1
to:
- '10'
etcd:
annotations:
gui-x: '800'
gui-y: '550'
charm: cs:~containers/etcd-75
num_units: 3
to:
- '3'
- '4'
- '5'
canal:
annotations:
gui-x: '450'
gui-y: '750'
charm: cs:~containers/canal-27
kubeapi-load-balancer:
annotations:
gui-x: '450'
gui-y: '250'
charm: cs:~containers/kubeapi-load-balancer-56
expose: true
num_units: 1
to:
- '10'
kubernetes-master:
annotations:
gui-x: '800'
gui-y: '850'
charm: cs:~containers/kubernetes-master-98
num_units: 3
to:
- '0'
- '1'
- '2'
options:
channel: 1.9/stable
kubernetes-worker:
annotations:
gui-x: '100'
gui-y: '850'
charm: cs:~containers/kubernetes-worker-109
constraints: cores=4 mem=4G
expose: true
num_units: 4
options:
channel: 1.9/stable
to:
- '6'
- '7'
- '8'
- '9'
ceph-osd:
charm: 'cs:ceph-osd-258'
options:
osd-devices: /dev/sdb
num_units: 4
annotations:
gui-x: '300'
gui-y: '300'
to:
- kubernetes-worker
ceph-mon:
charm: 'cs:ceph-mon-23'
num_units: 4
annotations:
gui-x: '600'
gui-y: '300'
to:
- kubernetes-worker
### Monitoring ###
grafana:
charm: cs:xenial/grafana-10
num_units: 1
expose: true
to:
- '10'
prometheus:
charm: cs:xenial/prometheus-5
num_units: 1
to:
- '10'
telegraf:
charm: cs:xenial/telegraf-10
relations:
- - kubernetes-master:kube-api-endpoint
- kubeapi-load-balancer:apiserver
- - kubernetes-master:loadbalancer
- kubeapi-load-balancer:loadbalancer
- - kubernetes-master:kube-control
- kubernetes-worker:kube-control
- - kubernetes-master:certificates
- easyrsa:client
- - etcd:certificates
- easyrsa:client
- - kubernetes-master:etcd
- etcd:db
- - kubernetes-worker:certificates
- easyrsa:client
- - kubernetes-worker:kube-api-endpoint
- kubeapi-load-balancer:website
- - kubeapi-load-balancer:certificates
- easyrsa:client
- - canal:etcd
- etcd:db
- - canal:cni
- kubernetes-master:cni
- - canal:cni
- kubernetes-worker:cni
- - kubernetes-master:ceph-storage
- ceph-mon:admin
- - ceph-mon:osd
- ceph-osd:mon
- - prometheus:grafana-source
- grafana:grafana-source
- - telegraf:prometheus-client
- prometheus:target
- - kubernetes-master:juju-info
- telegraf:juju-info
- - kubernetes-worker:juju-info
- telegraf:juju-info
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment