其他分享
首页 > 其他分享> > 亚马逊k8s开局系列-添加负载均衡器

亚马逊k8s开局系列-添加负载均衡器

作者:互联网

简介:

默认情况下k8s中部署程序以后是需要让外面的人使用的,所以需要把服务暴露出来。暴露的方式一般是ingress和nodeport,而这两个东西又必须要依赖负载均衡器。亚马逊和阿里云上可以直接用,只需要安装load-balancer-controller即可。这章主要是讲如何正确的安装这个aws-load-balancer-controller。如果是自建的k8s集群推荐一个负载均衡器metallb,只要配置上内网地址然后在路由器上做nat映射就能直接暴露出公网。但是一般自建都是接waf以后再暴露公网。具体安全相关的内容可以自行查阅其它文件,这里没有推荐自己搜索。

创建负载均衡:

创建 IAM 策略:
执行命令

curl -o iam_policy.json https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.2.0/docs/install/iam_policy.json

aws iam create-policy    --policy-name AWSLoadBalancerControllerIAMPolicy    --policy-document file://iam_policy.json

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=
v2_2_0_full.yaml下载完以后一定要删除546-553行,大概是这个内容。

apiVersion: v1
kind: ServiceAccount
metadata:
  labels:
    app.kubernetes.io/component: controller
    app.kubernetes.io/name: aws-load-balancer-controller
  name: aws-load-balancer-controller
  namespace: kube-system

替换your-cluster-name为你的集群名称:

        - --cluster-name=your-cluster-name
        - --ingress-class=alb
        image: amazon/aws-alb-ingress-controller:v2.2.0
可以直接搜索your-cluster-name,然后替换成你的集群名称,比如我的是test-cluster

然后执行命令查看是否安装成功。如果有问题可以使用kubectl logs,kubectl describe等命令查看错误日志。
kubectl get deployment -n kube-system aws-load-balancer-controller

亚马逊参考链接https://docs.aws.amazon.com/zh_cn/eks/latest/userguide/aws-load-balancer-controller.html

下一章讲如何添加rancher控制台

标签:load,name,aws,balancer,亚马逊,controller,均衡器,policy,k8s
来源: https://blog.51cto.com/denwork/2952060