diff --git a/cluster/juju/.gitignore b/cluster/juju/.gitignore new file mode 100644 index 00000000000..71d6f3c6d9f --- /dev/null +++ b/cluster/juju/.gitignore @@ -0,0 +1,2 @@ +builds +deps diff --git a/cluster/juju/layers/kubeapi-load-balancer/layer.yaml b/cluster/juju/layers/kubeapi-load-balancer/layer.yaml index 1774fbacb32..9cb22a3d4a3 100644 --- a/cluster/juju/layers/kubeapi-load-balancer/layer.yaml +++ b/cluster/juju/layers/kubeapi-load-balancer/layer.yaml @@ -1,5 +1,6 @@ repo: https://github.com/kubernetes/kubernetes.git includes: + - 'layer:metrics' - 'layer:nagios' - 'layer:nginx' - 'layer:tls-client' diff --git a/cluster/juju/layers/kubeapi-load-balancer/metrics.yaml b/cluster/juju/layers/kubeapi-load-balancer/metrics.yaml new file mode 100644 index 00000000000..0fcb3c1c489 --- /dev/null +++ b/cluster/juju/layers/kubeapi-load-balancer/metrics.yaml @@ -0,0 +1,2 @@ +metrics: + juju-units: {} diff --git a/cluster/juju/layers/kubernetes-master/layer.yaml b/cluster/juju/layers/kubernetes-master/layer.yaml index 75bd5a27b61..4e5273c2253 100644 --- a/cluster/juju/layers/kubernetes-master/layer.yaml +++ b/cluster/juju/layers/kubernetes-master/layer.yaml @@ -1,10 +1,11 @@ repo: https://github.com/kubernetes/kubernetes.git includes: - 'layer:basic' - - 'layer:tls-client' - - 'layer:leadership' - 'layer:debug' + - 'layer:leadership' + - 'layer:metrics' - 'layer:nagios' + - 'layer:tls-client' - 'interface:ceph-admin' - 'interface:etcd' - 'interface:http' diff --git a/cluster/juju/layers/kubernetes-master/metrics.yaml b/cluster/juju/layers/kubernetes-master/metrics.yaml new file mode 100644 index 00000000000..ba5550d70a1 --- /dev/null +++ b/cluster/juju/layers/kubernetes-master/metrics.yaml @@ -0,0 +1,34 @@ +metrics: + juju-units: {} + pods: + type: gauge + description: number of pods + command: kubectl get po --all-namespaces | tail -n+2 | wc -l + services: + type: gauge + description: number of services + command: kubectl get svc --all-namespaces | tail -n+2 | wc -l + replicasets: + type: gauge + description: number of replicasets + command: kubectl get rs --all-namespaces | tail -n+2 | wc -l + replicationcontrollers: + type: gauge + description: number of replicationcontrollers + command: kubectl get rc --all-namespaces | tail -n+2 | wc -l + nodes: + type: gauge + description: number of kubernetes nodes + command: kubectl get nodes | tail -n+2 | wc -l + persistentvolume: + type: gauge + description: number of pv + command: kubectl get pv --all-namespaces | tail -n+2 | wc -l + persistentvolumeclaims: + type: gauge + description: number of claims + command: kubectl get pvc --all-namespaces | tail -n+2 | wc -l + serviceaccounts: + type: gauge + description: number of sa + command: kubectl get sa --all-namespaces | tail -n+2 | wc -l diff --git a/cluster/juju/layers/kubernetes-worker/layer.yaml b/cluster/juju/layers/kubernetes-worker/layer.yaml index ce0979de6f2..ffe1fa154d2 100644 --- a/cluster/juju/layers/kubernetes-worker/layer.yaml +++ b/cluster/juju/layers/kubernetes-worker/layer.yaml @@ -3,6 +3,7 @@ includes: - 'layer:basic' - 'layer:debug' - 'layer:docker' + - 'layer:metrics' - 'layer:nagios' - 'layer:tls-client' - 'layer:nvidia-cuda' diff --git a/cluster/juju/layers/kubernetes-worker/metrics.yaml b/cluster/juju/layers/kubernetes-worker/metrics.yaml new file mode 100644 index 00000000000..0fcb3c1c489 --- /dev/null +++ b/cluster/juju/layers/kubernetes-worker/metrics.yaml @@ -0,0 +1,2 @@ +metrics: + juju-units: {}