配置AWS Load Balancer Controller 附加组件
本文最后更新于 923 天前, 如有失效请评论区留言.
AWS Load Balancer Controller 管理适用于 Kubernetes 集群的 AWS 弹性负载均衡器
- 支持应用负载均衡ALB
- 支持网络负载均衡NLB
安装
默认集群名: demo-us-eks-prod-01
, 需要自行替换
创建IAM Policy
curl -o iam_policy.json https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.4.3/docs/install/iam_policy.json
aws iam create-policy \
--policy-name AWSLoadBalancerControllerIAMPolicy \
--policy-document file://iam_policy.json
创建IAM角色
eksctl create iamserviceaccount \
--cluster=demo-us-eks-prod-01 \
--namespace=kube-system \
--name=aws-load-balancer-controller \
--role-name "AmazonEKSLoadBalancerControllerRole" \
--attach-policy-arn=arn:aws:iam::<根ID>:policy/AWSLoadBalancerControllerIAMPolicy \
--approve
安装cert-manager
kubectl apply \
--validate=false \
-f https://github.com/jetstack/cert-manager/releases/download/v1.5.4/cert-manager.yaml
安装控制器
curl -Lo v2_4_3_full.yaml https://github.com/kubernetes-sigs/aws-load-balancer-controller/releases/download/v2.4.3/v2_4_3_full.yaml
# 去除默认账户, 上面创建角色时已经生成
sed -i.bak -e '480,488d' ./v2_4_3_full.yaml
# 修改自己集群名
sed -i.bak -e 's|your-cluster-name|demo-us-eks-prod-01|' ./v2_4_3_full.yaml
# 生效
kubectl apply -f v2_4_3_full.yaml
# 设置ingresclass
curl -Lo v2_4_3_ingclass.yaml https://github.com/kubernetes-sigs/aws-load-balancer-controller/releases/download/v2.4.3/v2_4_3_ingclass.yaml
kubectl apply -f v2_4_3_ingclass.yaml