Metrics 部署
在新版的 Kubernetes 中,系统资源的采集使用 Metrics-server,可以通过 Metrics 采集节点和 Pod 的内存、磁盘、CPU 和网络的使用率。
将 Master01 节点的 front-proxy-ca.crt 复制到所有 Node 节点
for i in k8s-node01 k8s-node02; \
do scp /etc/kubernetes/pki/front-proxy-ca.crt root@$i:/etc/kubernetes/pki/front-proxy-ca.crt; \
done在 Master01 节点安装 metrics server
(Optional)如果没有下载 k8s-ha-install,先从 gitee 上克隆它:
git clone https://gitee.com/zhang993632987/k8s-ha-install.git -b manual-installation-v1.27.x安装 metrics server:
cd /root/k8s-ha-install/metrics-servercomp.yaml存在一点问题,需要先修复才能正常使用
在分支中 manual-installation-v1.27.x 中的文件配置存在一点问题,需要修改后才能正常安装。下面展示了修改相关的片段,并用“#” 将修改的部分标示了出来:
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:
- --cert-dir=/tmp
- --secure-port=4443
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
- --kubelet-use-node-status-port
- --metric-resolution=15s
- --kubelet-insecure-tls
- --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt # change to front-proxy-ca.crt
- --requestheader-username-headers=X-Remote-User
- --requestheader-group-headers=X-Remote-Group
- --requestheader-extra-headers-prefix=X-Remote-Extra-
image: registry.cn-beijing.aliyuncs.com/dotbalo/metrics-server:v0.6.3
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 3
httpGet:
path: /livez
port: https
scheme: HTTPS
periodSeconds: 10
name: metrics-server
ports:
- containerPort: 4443
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:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 1000
volumeMounts:
- mountPath: /tmp
name: tmp-dir
- mountPath: /etc/kubernetes/pki # 删除/front-proxy-ca.pem
name: pki
nodeSelector:
kubernetes.io/os: linux
priorityClassName: system-cluster-critical
serviceAccountName: metrics-server
volumes:
- emptyDir: {}
name: tmp-dir
- hostPath:
path: /etc/kubernetes/pki # 删除/front-proxy-ca.pem
name: pkikubectl create -f comp.yaml检查安装情况
查看 metrics-server Pod 状态:
待 Pod 变成 1/1 Running 后,等待几分钟,即可查看节点和 Pod 资源的使用率:
最后更新于