diff --git a/CHANGES.md b/CHANGES.md index 9b01e277..14b7592e 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -28,6 +28,10 @@ Notable changes between versions. * Update Prometheus from v2.7.1 to [v2.8.0](https://github.com/prometheus/prometheus/releases/tag/v2.8.0) * Update Grafana from v6.0.0 to v6.0.1 +* Remove heapster manifests from addons ([#427](https://github.com/poseidon/typhoon/pull/427)) + * Heapster addon powers `kubectl top` (in early Kubernetes, running the addon was expected). Today, there are better monitoring options. + * `kubectl top` reliance on a non-core extension means its not in-scope for minimal Kubernetes + * Look to prior releases if you still wish to apply heapster ## v1.13.4 diff --git a/addons/heapster/cluster-role-binding.yaml b/addons/heapster/cluster-role-binding.yaml deleted file mode 100644 index 6a36f080..00000000 --- a/addons/heapster/cluster-role-binding.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: heapster -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: heapster -subjects: -- kind: ServiceAccount - name: heapster - namespace: kube-system diff --git a/addons/heapster/cluster-role.yaml b/addons/heapster/cluster-role.yaml deleted file mode 100644 index 7f4ac13f..00000000 --- a/addons/heapster/cluster-role.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: heapster -rules: -- apiGroups: - - "" - resources: - - events - - namespaces - - nodes - - pods - verbs: - - get - - list - - watch -- apiGroups: - - extensions - resources: - - deployments - verbs: - - get - - list - - watch -- apiGroups: - - "" - resources: - - nodes/stats - verbs: - - get diff --git a/addons/heapster/deployment.yaml b/addons/heapster/deployment.yaml deleted file mode 100644 index 3e1424d3..00000000 --- a/addons/heapster/deployment.yaml +++ /dev/null @@ -1,62 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: heapster - namespace: kube-system -spec: - replicas: 1 - selector: - matchLabels: - name: heapster - phase: prod - template: - metadata: - labels: - name: heapster - phase: prod - annotations: - seccomp.security.alpha.kubernetes.io/pod: 'docker/default' - spec: - serviceAccountName: heapster - containers: - - name: heapster - image: k8s.gcr.io/heapster-amd64:v1.5.4 - command: - - /heapster - - --source=kubernetes.summary_api:''?useServiceAccount=true&kubeletHttps=true&kubeletPort=10250&insecure=true - livenessProbe: - httpGet: - path: /healthz - port: 8082 - scheme: HTTP - initialDelaySeconds: 180 - timeoutSeconds: 5 - - name: heapster-nanny - image: k8s.gcr.io/addon-resizer:1.7 - command: - - /pod_nanny - - --cpu=80m - - --extra-cpu=0.5m - - --memory=140Mi - - --extra-memory=4Mi - - --threshold=5 - - --deployment=heapster - - --container=heapster - - --poll-period=300000 - - --estimator=exponential - env: - - name: MY_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: MY_POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - resources: - limits: - cpu: 50m - memory: 90Mi - requests: - cpu: 50m - memory: 90Mi diff --git a/addons/heapster/role-binding.yaml b/addons/heapster/role-binding.yaml deleted file mode 100644 index c8356729..00000000 --- a/addons/heapster/role-binding.yaml +++ /dev/null @@ -1,13 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: RoleBinding -metadata: - name: heapster - namespace: kube-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: system:pod-nanny -subjects: -- kind: ServiceAccount - name: heapster - namespace: kube-system diff --git a/addons/heapster/role.yaml b/addons/heapster/role.yaml deleted file mode 100644 index 5c129672..00000000 --- a/addons/heapster/role.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: Role -metadata: - name: system:pod-nanny - namespace: kube-system -rules: -- apiGroups: - - "" - resources: - - pods - verbs: - - get -- apiGroups: - - "extensions" - resources: - - deployments - verbs: - - get - - update diff --git a/addons/heapster/service-account.yaml b/addons/heapster/service-account.yaml deleted file mode 100644 index c91d5b6b..00000000 --- a/addons/heapster/service-account.yaml +++ /dev/null @@ -1,5 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: heapster - namespace: kube-system diff --git a/addons/heapster/service.yaml b/addons/heapster/service.yaml deleted file mode 100644 index cff31adb..00000000 --- a/addons/heapster/service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: heapster - namespace: kube-system -spec: - type: ClusterIP - selector: - name: heapster - ports: - - port: 80 - targetPort: 8082 diff --git a/docs/addons/heapster.md b/docs/addons/heapster.md deleted file mode 100644 index e1013544..00000000 --- a/docs/addons/heapster.md +++ /dev/null @@ -1,19 +0,0 @@ -# Heapster - -[Heapster](https://kubernetes.io/docs/user-guide/monitoring/) collects data from apiservers and kubelets and exposes it through a REST API. This API powers the `kubectl top` command. - -## Create - -```sh -kubectl apply -f addons/heapster -R -``` - -## Usage - -Allow heapster to run for a few minutes, then check CPU and memory usage. - -```sh -kubectl top node -kubectl top pod -``` - diff --git a/docs/addons/overview.md b/docs/addons/overview.md index 9c57b149..c56fbd54 100644 --- a/docs/addons/overview.md +++ b/docs/addons/overview.md @@ -4,7 +4,6 @@ Every Typhoon cluster is verified to work well with several post-install addons. * [CLUO](cluo.md) (Container Linux only) * Nginx [Ingress Controller](ingress.md) -* [Heapster](heapster.md) * [Prometheus](prometheus.md) * [Grafana](grafana.md) diff --git a/mkdocs.yml b/mkdocs.yml index ca655d5b..dc6be25f 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -77,7 +77,6 @@ nav: - 'Addons': - 'Overview': 'addons/overview.md' - 'CLUO': 'addons/cluo.md' - - 'Heapster': 'addons/heapster.md' - 'Nginx Ingress': 'addons/ingress.md' - 'Prometheus': 'addons/prometheus.md' - 'Grafana': 'addons/grafana.md'