参考:https://www.cnblogs.com/ding2016/p/10786252.html
参考:https://blog.csdn.net/zyl290760647/article/details/83041991
github:https://github.com/kubernetes-sigs/metrics-server
1、下载用到的配置文件:在github的metrics-server/deploy/1.8+/目录下
metrics-server/deploy/1.8+/
2、修改deployment文件
主要修改三个地方:
a、修改被墙的镜像image镜像
image: registry.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6
b、修改镜像拉取策略
imagePullPolicy: IfNotPresent
c、添加命令和相关参数
args:
- --cert-dir=/tmp
- --secure-port=4443
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
修改后的deployment
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: metrics-server
namespace: kube-system
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: metrics-server
namespace: kube-system
labels:
k8s-app: metrics-server
spec:
selector:
matchLabels:
k8s-app: metrics-server
template:
metadata:
name: metrics-server
labels:
k8s-app: metrics-server
spec:
serviceAccountName: metrics-server
volumes:
# mount in tmp so we can safely use from-scratch images and/or read-only containers
- name: tmp-dir
emptyDir: {}
containers:
- name: metrics-server
# image: k8s.gcr.io/metrics-server-amd64:v0.3.6
image: registry.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6
args:
- --cert-dir=/tmp
- --secure-port=4443
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
ports:
- name: main-port
containerPort: 4443
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 1000
imagePullPolicy: IfNotPresent
volumeMounts:
- name: tmp-dir
mountPath: /tmp
nodeSelector:
beta.kubernetes.io/os: linux
3.执行kubectl create -f . 执行目录下全部配置