DEV Community

Rafael Conceição
Rafael Conceição

Posted on

Update Addons AWS EKS

https://docs.aws.amazon.com/eks/latest/userguide/update-cluster.html

export CLUSTER=
export AWS_REGION=
export AWS_ACCOUNT_ID=$(aws sts get-caller-identity | jq --raw-output ".Account")
export ENV=

Amazon VPC CNI

kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3

Deve ser >= 1.8.0

kubectl get daemonset aws-node -n kube-system -o yaml > aws-k8s-cni-old.yaml

eksctl create iamserviceaccount \
--name aws-node \
--namespace kube-system \
--cluster $CLUSTER \
--attach-policy-arn arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy \
--approve \
--role-only \
--role-name "AmazonEKSVPCCNIRole-${ENV}"

aws eks create-addon \
--cluster-name $CLUSTER \
--addon-name vpc-cni \
--service-account-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/AmazonEKSVPCCNIRole-${ENV} \
--resolve-conflicts OVERWRITE

eksctl get addon --name vpc-cni --cluster $CLUSTER

aws eks update-addon \
--addon-name vpc-cni \
--addon-version v1.15.1-eksbuild.1 \
--cluster-name $CLUSTER \
--service-account-role-arn arn:aws:iam::${AWS_ACCOUNT_ID}:role/AmazonEKSVPCCNIRole-${ENV}

CoreDNS

kubectl describe deployment coredns --namespace kube-system | grep coredns: | cut -d : -f 3

kubectl get deployment coredns -n kube-system -o yaml > aws-k8s-coredns-old.yaml

aws eks create-addon \
--cluster-name $CLUSTER \
--addon-name coredns \
--resolve-conflicts OVERWRITE

eksctl get addon --name coredns --cluster $CLUSTER

aws eks update-addon \
--addon-name coredns \
--addon-version v1.9.3-eksbuild.21 \
--cluster-name $CLUSTER

Kube-proxy

kubectl describe daemonset kube-proxy -n kube-system | grep kube-proxy: | cut -d : -f 3

Deve ser max 2 versões para tras

kubectl get daemonset kube-proxy -n kube-system -o yaml > aws-k8s-kube-proxy-old.yaml

aws eks create-addon \
--cluster-name $CLUSTER \
--addon-name kube-proxy \
--resolve-conflicts OVERWRITE

eksctl get addon --name kube-proxy --cluster $CLUSTER

Atualizar apos upgrade do eks

aws eks update-addon \
--addon-name kube-proxy \
--addon-version v1.25.9-eksbuild.1 \
--cluster-name $CLUSTER

ALB Controller

kubectl describe deployment -n kube-system aws-load-balancer-controller | grep aws-alb-ingress-controller: | cut -d : -f 3

kubectl get deployment -n kube-system aws-load-balancer-controller -o yaml > aws-k8s-aws-alb-ingress-controller-old.yaml

kubectl set image deployment/aws-load-balancer-controller -n kube-system controller=public.ecr.aws/eks/aws-load-balancer-controller:v2.4.7

k get pod -n kube-system | grep aws-load-balancer-controller

Top comments (0)