更新 Amazon EKS 集群 Kubernetes 版本
eksctl upgrade cluster --name my-cluster --version 1.26 --approve
更新 Amazon EKS 集群 nodegroup 版本
一、Amazon VPC CNI插件版本: v1.12.6-eksbuild.2
参考:https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/managing-vpc-cni.html
二、移除容器组(pod)安全策略 (PSP) 移除常见问题 (1.25已经删除了,所以需要删除)
参考:
https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/pod-security-policy-removal-faq.html
https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/pod-security-policy.html
三、执行升级
eksctl upgrade nodegroup \
--name=node-group-name \
--cluster=my-cluster \
--region=region-code \
--kubernetes-version=1.26
四、kube-proxy升级
➜ ~ kubectl get daemonset
No resources found in infra namespace.
➜ ~ kubectl get daemonset -n kube-system
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
aws-node 3 3 3 3 3 <none> 18h
kube-proxy 3 3 3 3 3 <none> 433d
➜ ~ kubectl edit daemonset -n kube-system #修改版本号
image: 602401143452.dkr.ecr.ap-southeast-1.amazonaws.com/amazon-k8s-cni:v1.12.6-eksbuild.2
五、aws-load-balancer-controller控制器升级
1、brew install helm
2、helm repo add eks https://aws.github.io/eks-charts
3、helm repo update
4、升级
helm upgrade aws-load-balancer-controller eks/aws-load-balancer-controller \
-n kube-system \
--set clusterName=K8S-CLUSTER-NAME \
--set serviceAccount.create=false \
--set serviceAccount.name=aws-load-balancer-controller
参考:https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/aws-load-balancer-controller.html
六、升级部署 Metrics Server
使用以下命令部署 Metrics Server:
wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
vim components.yaml
137 - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
改为
137 - --kubelet-preferred-address-types=InternalIP
不改为会报错:
couldn't get resource list for metrics.k8s.io/v1beta1
kubectl apply -f components.yaml
使用以下命令验证 metrics-server 部署是否运行所需数量的 Pods。
kubectl get deployment metrics-server -n kube-system
输出示例如下。
NAME READY UP-TO-DATE AVAILABLE AGE
metrics-server 1/1 1 1 6m
参考:
https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/metrics-server.html