From b897d2964ef68214668515eaefc668bb4c68ec2d Mon Sep 17 00:00:00 2001 From: Adrien Reslinger Date: Fri, 8 Oct 2021 13:53:30 +0200 Subject: [PATCH] Switch to helm --- defaults/main.yml | 3 +- files/metrics-server-Deployment.yaml | 67 ------------------- files/metrics-server-Service.yaml | 15 ----- files/metrics-server-ServiceAccount.yaml | 7 -- ...etrics-server-auth-reader-RoleBinding.yaml | 15 ----- ...tem:auth-delegator-ClusterRoleBinding.yaml | 14 ---- ...aggregated-metrics-reader-ClusterRole.yaml | 19 ------ files/system:metrics-server-ClusterRole.yaml | 19 ------ ...tem:metrics-server-ClusterRoleBinding.yaml | 14 ---- files/v1beta1.metrics.k8s.io-APIService.yaml | 15 ----- tasks/main.yml | 25 ++++--- vars/metrics_server_files_list.yml | 11 --- 12 files changed, 17 insertions(+), 207 deletions(-) delete mode 100644 files/metrics-server-Deployment.yaml delete mode 100644 files/metrics-server-Service.yaml delete mode 100644 files/metrics-server-ServiceAccount.yaml delete mode 100644 files/metrics-server-auth-reader-RoleBinding.yaml delete mode 100644 files/metrics-server:system:auth-delegator-ClusterRoleBinding.yaml delete mode 100644 files/system:aggregated-metrics-reader-ClusterRole.yaml delete mode 100644 files/system:metrics-server-ClusterRole.yaml delete mode 100644 files/system:metrics-server-ClusterRoleBinding.yaml delete mode 100644 files/v1beta1.metrics.k8s.io-APIService.yaml delete mode 100644 vars/metrics_server_files_list.yml diff --git a/defaults/main.yml b/defaults/main.yml index ed82cbf..245c884 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,3 +1,2 @@ my_context: minikube -metrics_server_version: "v0.4.4" -metrics_server_url: "https://github.com/kubernetes-sigs/metrics-server/releases/download/{{ metrics_server_version }}/components.yaml" \ No newline at end of file +metrics_server_version: "0.5.1" diff --git a/files/metrics-server-Deployment.yaml b/files/metrics-server-Deployment.yaml deleted file mode 100644 index 9a5f5a6..0000000 --- a/files/metrics-server-Deployment.yaml +++ /dev/null @@ -1,67 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - labels: - k8s-app: metrics-server - name: metrics-server - namespace: kube-system -spec: - selector: - matchLabels: - k8s-app: metrics-server - strategy: - rollingUpdate: - maxUnavailable: 0 - template: - metadata: - labels: - k8s-app: metrics-server - spec: - containers: - - args: - - --kubelet-insecure-tls - - --cert-dir=/tmp - - --secure-port=443 - - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname - - --kubelet-use-node-status-port - - --metric-resolution=15s - image: k8s.gcr.io/metrics-server/metrics-server:v0.5.1 - imagePullPolicy: IfNotPresent - livenessProbe: - failureThreshold: 3 - httpGet: - path: /livez - port: https - scheme: HTTPS - periodSeconds: 10 - name: metrics-server - ports: - - containerPort: 443 - name: https - protocol: TCP - readinessProbe: - failureThreshold: 3 - httpGet: - path: /readyz - port: https - scheme: HTTPS - initialDelaySeconds: 20 - periodSeconds: 10 - resources: - requests: - cpu: 100m - memory: 200Mi - securityContext: - readOnlyRootFilesystem: true - runAsNonRoot: true - runAsUser: 1000 - volumeMounts: - - mountPath: /tmp - name: tmp-dir - nodeSelector: - kubernetes.io/os: linux - priorityClassName: system-cluster-critical - serviceAccountName: metrics-server - volumes: - - emptyDir: {} - name: tmp-dir diff --git a/files/metrics-server-Service.yaml b/files/metrics-server-Service.yaml deleted file mode 100644 index e63ea9f..0000000 --- a/files/metrics-server-Service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - k8s-app: metrics-server - name: metrics-server - namespace: kube-system -spec: - ports: - - name: https - port: 443 - protocol: TCP - targetPort: https - selector: - k8s-app: metrics-server diff --git a/files/metrics-server-ServiceAccount.yaml b/files/metrics-server-ServiceAccount.yaml deleted file mode 100644 index dac9ae6..0000000 --- a/files/metrics-server-ServiceAccount.yaml +++ /dev/null @@ -1,7 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - k8s-app: metrics-server - name: metrics-server - namespace: kube-system diff --git a/files/metrics-server-auth-reader-RoleBinding.yaml b/files/metrics-server-auth-reader-RoleBinding.yaml deleted file mode 100644 index a6e71b8..0000000 --- a/files/metrics-server-auth-reader-RoleBinding.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: RoleBinding -metadata: - labels: - k8s-app: metrics-server - name: metrics-server-auth-reader - namespace: kube-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: extension-apiserver-authentication-reader -subjects: -- kind: ServiceAccount - name: metrics-server - namespace: kube-system diff --git a/files/metrics-server:system:auth-delegator-ClusterRoleBinding.yaml b/files/metrics-server:system:auth-delegator-ClusterRoleBinding.yaml deleted file mode 100644 index 3eae64b..0000000 --- a/files/metrics-server:system:auth-delegator-ClusterRoleBinding.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - labels: - k8s-app: metrics-server - name: metrics-server:system:auth-delegator -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:auth-delegator -subjects: -- kind: ServiceAccount - name: metrics-server - namespace: kube-system diff --git a/files/system:aggregated-metrics-reader-ClusterRole.yaml b/files/system:aggregated-metrics-reader-ClusterRole.yaml deleted file mode 100644 index 972d3d0..0000000 --- a/files/system:aggregated-metrics-reader-ClusterRole.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - labels: - k8s-app: metrics-server - rbac.authorization.k8s.io/aggregate-to-admin: "true" - rbac.authorization.k8s.io/aggregate-to-edit: "true" - rbac.authorization.k8s.io/aggregate-to-view: "true" - name: system:aggregated-metrics-reader -rules: -- apiGroups: - - metrics.k8s.io - resources: - - pods - - nodes - verbs: - - get - - list - - watch diff --git a/files/system:metrics-server-ClusterRole.yaml b/files/system:metrics-server-ClusterRole.yaml deleted file mode 100644 index e3d29d5..0000000 --- a/files/system:metrics-server-ClusterRole.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - labels: - k8s-app: metrics-server - name: system:metrics-server -rules: -- apiGroups: - - "" - resources: - - pods - - nodes - - nodes/stats - - namespaces - - configmaps - verbs: - - get - - list - - watch diff --git a/files/system:metrics-server-ClusterRoleBinding.yaml b/files/system:metrics-server-ClusterRoleBinding.yaml deleted file mode 100644 index a1d0fad..0000000 --- a/files/system:metrics-server-ClusterRoleBinding.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - labels: - k8s-app: metrics-server - name: system:metrics-server -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:metrics-server -subjects: -- kind: ServiceAccount - name: metrics-server - namespace: kube-system diff --git a/files/v1beta1.metrics.k8s.io-APIService.yaml b/files/v1beta1.metrics.k8s.io-APIService.yaml deleted file mode 100644 index 65fdae9..0000000 --- a/files/v1beta1.metrics.k8s.io-APIService.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: apiregistration.k8s.io/v1 -kind: APIService -metadata: - labels: - k8s-app: metrics-server - name: v1beta1.metrics.k8s.io -spec: - group: metrics.k8s.io - groupPriorityMinimum: 100 - insecureSkipTLSVerify: true - service: - name: metrics-server - namespace: kube-system - version: v1beta1 - versionPriority: 100 diff --git a/tasks/main.yml b/tasks/main.yml index da52b17..ae1d769 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,14 +1,21 @@ - name: Metrics Server setup block: - - name: Include vars - include_vars: "metrics_server_files_list.yml" - - name: Metrics Server install - k8s: - state: present + # https://github.com/kubernetes-sigs/metrics-server/tree/master/charts/metrics-server + - name: Defined Kubernetes Metrics Server repository + kubernetes.core.helm_repository: + name: metrics-server + repo_url: "https://kubernetes-sigs.github.io/metrics-server" + - name: Deploy latest version of Kubernetes Metrics Server + kubernetes.core.helm: context: "{{ my_context }}" - merge_type: merge - resource_definition: "{{ lookup('file', item) | from_yaml }}" - with_items: - - '{{ metrics_server_files }}' + name: metrics-server + release_namespace: "kube-system" + chart_ref: metrics-server/metrics-server + values: +# image: +# tag: "{{ metrics_server_version }}" + args: + - --kubelet-insecure-tls + - --metric-resolution=15s tags: - metrics-server \ No newline at end of file diff --git a/vars/metrics_server_files_list.yml b/vars/metrics_server_files_list.yml deleted file mode 100644 index a2ec337..0000000 --- a/vars/metrics_server_files_list.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -metrics_server_files: - - "metrics-server-ServiceAccount.yaml" - - "system:aggregated-metrics-reader-ClusterRole.yaml" - - "system:metrics-server-ClusterRole.yaml" - - "metrics-server-auth-reader-RoleBinding.yaml" - - "metrics-server:system:auth-delegator-ClusterRoleBinding.yaml" - - "system:metrics-server-ClusterRoleBinding.yaml" - - "metrics-server-Service.yaml" - - "metrics-server-Deployment.yaml" - - "v1beta1.metrics.k8s.io-APIService.yaml"