Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

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

Select an option

Save CalvinHartwell/f238479db9b5b02ca0c2e062b166fe12 to your computer and use it in GitHub Desktop.
asseco-cdk-1.12-beta-vsphere-plugin
:series: xenial
description: A nine-machine Kubernetes cluster, appropriate for production. Includes a three-machine etcd cluster and three Kubernetes worker nodes.
services:
ceph-mon:
annotations:
gui-x: '600'
gui-y: '300'
charm: cs:ceph-mon
num_units: 3
to:
- kubernetes-worker
ceph-osd:
annotations:
gui-x: '300'
gui-y: '300'
charm: cs:ceph-osd
num_units: 3
to:
- kubernetes-worker
easyrsa:
annotations:
gui-x: '450'
gui-y: '550'
charm: cs:~containers/easyrsa
num_units: 1
to:
- 'lxd:kubernetes-master/0'
etcd:
annotations:
gui-x: '800'
gui-y: '550'
charm: cs:~containers/etcd
constraints: cores=4 mem=16G
num_units: 3
options:
channel: 3.2/stable
canal:
annotations:
gui-x: '450'
gui-y: '750'
charm: cs:~containers/canal
# options:
# cidr: '172.19.0.0/16'
kubeapi-load-balancer:
annotations:
gui-x: '450'
gui-y: '250'
charm: cs:~containers/kubeapi-load-balancer
expose: true
num_units: 1
kubernetes-master:
annotations:
gui-x: '800'
gui-y: '850'
charm: cs:~containers/kubernetes-master-144
constraints: cores=4 mem=16G
num_units: 2
to:
options:
channel: 1.12/beta
# service-cidr: '172.18.0.0/16'
kubernetes-worker:
annotations:
gui-x: '100'
gui-y: '850'
charm: cs:~containers/kubernetes-worker-163
constraints: cores=4 mem=16G
expose: true
num_units: 3
options:
channel: 1.12/beta
### Monitoring ###
grafana:
charm: cs:xenial/grafana
num_units: 1
expose: true
prometheus:
charm: cs:xenial/prometheus2
num_units: 1
telegraf:
charm: cs:xenial/telegraf
apache2:
charm: cs:xenial/apache2
num_units: 1
expose: true
options:
enable_modules: "headers proxy_html proxy_http"
elasticsearch:
charm: cs:xenial/elasticsearch
num_units: 1
filebeat:
charm: cs:xenial/filebeat
options:
logpath: '/var/log/*.log'
kube_logs: True
graylog:
charm: cs:xenial/graylog-17
num_units: 1
mongodb:
charm: cs:xenial/mongodb
num_units: 1
### VSphere Integrator Charm ###
vsphere-integrator:
charm: cs:~containers/vsphere-integrator
options:
# replace me section
vsphere_ip: "192.168.1.1"
user: "replaceme"
password: "password"
datacenter: "dc0"
num_units: 1
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
- - 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
- - apache2:reverseproxy
- graylog:website
- - graylog:elasticsearch
- elasticsearch:client
- - graylog:mongodb
- mongodb:database
- - filebeat:beats-host
- kubernetes-master:juju-info
- - filebeat:beats-host
- kubernetes-worker:juju-info
- - filebeat:logstash
- graylog:beats
- - kubernetes-master:ceph-storage
- ceph-mon:admin
- - ceph-mon:osd
- ceph-osd:mon
- ['vsphere-integrator', 'kubernetes-master']
- ['vsphere-integrator', 'kubernetes-worker']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment