diff --git a/cluster/addons/cluster-monitoring/google/heapster-controller.yaml b/cluster/addons/cluster-monitoring/google/heapster-controller.yaml index a787389bf76..9dd813302d8 100644 --- a/cluster/addons/cluster-monitoring/google/heapster-controller.yaml +++ b/cluster/addons/cluster-monitoring/google/heapster-controller.yaml @@ -1,30 +1,30 @@ apiVersion: v1 kind: ReplicationController metadata: - name: monitoring-heapster-v2 + name: monitoring-heapster-v3 namespace: default labels: k8s-app: heapster - version: v2 + version: v3 kubernetes.io/cluster-service: "true" spec: replicas: 1 selector: k8s-app: heapster - version: v2 + version: v3 template: metadata: labels: k8s-app: heapster - version: v2 + version: v3 kubernetes.io/cluster-service: "true" spec: containers: - - image: gcr.io/google_containers/heapster:v0.14.0 + - image: gcr.io/google_containers/heapster:v0.14.1 name: heapster command: - /heapster - - --source=kubernetes:https://kubernetes + - --source=kubernetes:'' - --sink=gcm - --sink=gcl - --poll_duration=2m diff --git a/cluster/addons/cluster-monitoring/googleinfluxdb/heapster-controller-combined.yaml b/cluster/addons/cluster-monitoring/googleinfluxdb/heapster-controller-combined.yaml index 508e6ee9103..40617e65f49 100644 --- a/cluster/addons/cluster-monitoring/googleinfluxdb/heapster-controller-combined.yaml +++ b/cluster/addons/cluster-monitoring/googleinfluxdb/heapster-controller-combined.yaml @@ -1,30 +1,30 @@ apiVersion: v1 kind: ReplicationController metadata: - name: monitoring-heapster-v2 + name: monitoring-heapster-v3 namespace: default labels: k8s-app: heapster - version: v2 + version: v3 kubernetes.io/cluster-service: "true" spec: replicas: 1 selector: k8s-app: heapster - version: v2 + version: v3 template: metadata: labels: k8s-app: heapster - version: v2 + version: v3 kubernetes.io/cluster-service: "true" spec: containers: - - image: gcr.io/google_containers/heapster:v0.14.0 + - image: gcr.io/google_containers/heapster:v0.14.1 name: heapster command: - /heapster - - --source=kubernetes:https://kubernetes + - --source=kubernetes:'' - --sink=gcl - --sink=influxdb:http://monitoring-influxdb:8086 - --poll_duration=2m diff --git a/cluster/addons/cluster-monitoring/influxdb/heapster-controller.yaml b/cluster/addons/cluster-monitoring/influxdb/heapster-controller.yaml index a57fd61138b..39044e8ce46 100644 --- a/cluster/addons/cluster-monitoring/influxdb/heapster-controller.yaml +++ b/cluster/addons/cluster-monitoring/influxdb/heapster-controller.yaml @@ -1,30 +1,30 @@ apiVersion: v1 kind: ReplicationController metadata: - name: monitoring-heapster-v2 + name: monitoring-heapster-v3 namespace: default labels: k8s-app: heapster - version: v2 + version: v3 kubernetes.io/cluster-service: "true" spec: replicas: 1 selector: k8s-app: heapster - version: v2 + version: v3 template: metadata: labels: k8s-app: heapster - version: v2 + version: v3 kubernetes.io/cluster-service: "true" spec: containers: - - image: gcr.io/google_containers/heapster:v0.14.0 + - image: gcr.io/google_containers/heapster:v0.14.1 name: heapster command: - /heapster - - --source=kubernetes:https://kubernetes + - --source=kubernetes:'' - --sink=influxdb:http://monitoring-influxdb:8086 volumeMounts: - name: ssl-certs diff --git a/cluster/addons/cluster-monitoring/standalone/heapster-controller.yaml b/cluster/addons/cluster-monitoring/standalone/heapster-controller.yaml new file mode 100644 index 00000000000..4589a8c05fb --- /dev/null +++ b/cluster/addons/cluster-monitoring/standalone/heapster-controller.yaml @@ -0,0 +1,43 @@ +apiVersion: v1 +kind: ReplicationController +metadata: + name: monitoring-heapster-v3 + namespace: default + labels: + k8s-app: heapster + version: v3 + kubernetes.io/cluster-service: "true" +spec: + replicas: 1 + selector: + k8s-app: heapster + version: v3 + template: + metadata: + labels: + k8s-app: heapster + version: v3 + kubernetes.io/cluster-service: "true" + spec: + containers: + - image: gcr.io/google_containers/heapster:v0.14.1 + name: heapster + command: + - /heapster + - --source=kubernetes:'' + volumeMounts: + - name: ssl-certs + mountPath: /etc/ssl/certs + readOnly: true + - name: monitoring-token + mountPath: /etc/kubernetes/kubeconfig + readOnly: true + + volumes: + - name: ssl-certs + hostPath: + path: /etc/ssl/certs + - name: monitoring-token + secret: + secretName: token-system-monitoring + diff --git a/cluster/addons/cluster-monitoring/standalone/heapster-service.yaml b/cluster/addons/cluster-monitoring/standalone/heapster-service.yaml new file mode 100644 index 00000000000..8ed8ff9a65f --- /dev/null +++ b/cluster/addons/cluster-monitoring/standalone/heapster-service.yaml @@ -0,0 +1,13 @@ +kind: Service +apiVersion: v1 +metadata: + name: monitoring-heapster + labels: + kubernetes.io/cluster-service: "true" + name: monitoring-heapster +spec: + ports: + - port: 80 + targetPort: 8082 + selector: + k8s-app: heapster diff --git a/cluster/gce/config-default.sh b/cluster/gce/config-default.sh index 585113478f5..90ce3ed9746 100755 --- a/cluster/gce/config-default.sh +++ b/cluster/gce/config-default.sh @@ -58,6 +58,7 @@ ENABLE_NODE_MONITORING="${KUBE_ENABLE_NODE_MONITORING:-true}" # influxdb - Heapster, InfluxDB, and Grafana # google - Heapster, Google Cloud Monitoring, and Google Cloud Logging # googleinfluxdb - Enable influxdb and google (except GCM) +# standalone - Heapster only. Metrics available via Heapster REST API. ENABLE_CLUSTER_MONITORING="${KUBE_ENABLE_CLUSTER_MONITORING:-googleinfluxdb}" # Optional: Enable node logging. diff --git a/cluster/gke/config-default.sh b/cluster/gke/config-default.sh index 27a6249d442..4692882cf6d 100644 --- a/cluster/gke/config-default.sh +++ b/cluster/gke/config-default.sh @@ -34,4 +34,5 @@ ELASTICSEARCH_LOGGING_REPLICAS=1 # none - No cluster monitoring setup # influxdb - Heapster, InfluxDB, and Grafana # google - Heapster, Google Cloud Monitoring, and Google Cloud Logging -ENABLE_CLUSTER_MONITORING="${KUBE_ENABLE_CLUSTER_MONITORING:-none}" +# standalone - Heapster only. Metrics available via Heapster REST API. +ENABLE_CLUSTER_MONITORING="${KUBE_ENABLE_CLUSTER_MONITORING:-standalone}" diff --git a/cluster/saltbase/salt/kube-addons/init.sls b/cluster/saltbase/salt/kube-addons/init.sls index ad99b40e07e..35c0a348f61 100644 --- a/cluster/saltbase/salt/kube-addons/init.sls +++ b/cluster/saltbase/salt/kube-addons/init.sls @@ -33,6 +33,17 @@ addon-dir-create: - file_mode: 644 {% endif %} +{% if pillar.get('enable_cluster_monitoring', '').lower() == 'standalone' %} +/etc/kubernetes/addons/cluster-monitoring/standalone: + file.recurse: + - source: salt://kube-addons/cluster-monitoring/standalone + - include_pat: E@(^.+\.yaml$|^.+\.json$) + - user: root + - group: root + - dir_mode: 755 + - file_mode: 644 +{% endif %} + {% if pillar.get('enable_cluster_monitoring', '').lower() == 'googleinfluxdb' %} /etc/kubernetes/addons/cluster-monitoring/googleinfluxdb: file.recurse: