目录

  • 一、前置条件
  • 二、创建IAM OIDC提供商
  • 三、安装`AWS Load Balancer Controller`
  • 四、应用中部署ALB
  • 参考

一、前置条件

在AWS EKS中service默认的LoadBalance模式是CLB

如果需要使用ALBNLB则需要安装AWS Load Balancer Controller

安装AWS负载均衡器控制器前需要为集群创建IAM OIDC提供商

二、创建IAM OIDC提供商

  1. 确定集群是否拥有现有 IAM OIDC 提供商。

    查看集群的 OIDC 提供商 URL。

    aws eks describe-cluster --name <cluster_name> --query "cluster.identity.oidc.issuer" --output text
    

    输出示例:

    https://oidc.eks.us-west-2.amazonaws.com/id/EXAMPLED539D4633E53DE1B716D3041E
    

    列出您账户中的所有 OIDC 提供商。将 <EXAMPLED539D4633E53DE1B716D3041E>(包括 <>)替换为上一个命令返回的值。

    aws iam list-open-id-connect-providers | grep <EXAMPLED539D4633E53DE1B716D3041E>
    

    输出示例

    "Arn": "arn:aws-cn:iam::111122223333:oidc-provider/oidc.eks.us-west-2.amazonaws.com/id/EXAMPLED539D4633E53DE1B716D3041E"
    

    如果上一个命令返回了输出,则表示您的集群已经有提供商。如果没有返回输出,则您必须创建 IAM OIDC 提供商。

  2. 使用以下命令为您的集群创建 IAM OIDC 身份提供商。将 <cluster_name>(包括 <>)替换为您自己的值。

    eksctl utils associate-iam-oidc-provider --cluster <cluster_name> --approve
    

三、安装AWS Load Balancer Controller

  1. 下载AWS负载均衡器控制器的 IAM 策略,该策略允许负载均衡器代表您调用 AWS API。您可以查看 GitHub 上的策略文档。

    curl -o iam_policy.json https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.2.0/docs/install/iam_policy.json
    
  2. 使用上一步中下载的策略创建一个 IAM 策略。

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

    记下返回的策略 ARN。

  3. my_cluster 替换为您的集群的名称,并将 111122223333 替换为您的账户 ID,然后运行命令。

    eksctl create iamserviceaccount \--cluster=my_cluster \--namespace=kube-system \--name=aws-load-balancer-controller \--attach-policy-arn=arn:aws:iam::111122223333:policy/AWSLoadBalancerControllerIAMPolicy \--override-existing-serviceaccounts \--approve
    
  4. 使用 Helm V3 或更高版本来安装AWS负载均衡器控制器

    a. 安装 TargetGroupBinding 自定义资源定义。

    kubectl apply -k "github.com/aws/eks-charts/stable/aws-load-balancer-controller/crds?ref=master"
    

    b. 添加 eks-charts 存储库。

    helm repo add eks https://aws.github.io/eks-charts
    

    c. 更新您的本地存储库,以确保您拥有最新的图表。

    helm repo update
    

    d. 安装AWS负载均衡器控制器。

    重要

    如果要将控制器部署到被限制访问 Amazon EC2 实例元数据服务 (IMDS) 的 Amazon EC2 节点,或者部署到 Fargate 节点,则需要在运行的命令中添加以下标志:

    • --set region=region-code
    • --set vpcId=vpc-xxxxxxxx
    helm upgrade -i aws-load-balancer-controller eks/aws-load-balancer-controller \--set clusterName=cluster-name \--set serviceAccount.create=false \--set serviceAccount.name=aws-load-balancer-controller \-n kube-system
    
  5. 验证控制器是否已安装。

    kubectl get deployment -n kube-system aws-load-balancer-controller
    

    输出

    NAME                           READY   UP-TO-DATE   AVAILABLE   AGE
    aws-load-balancer-controller   2/2     2            2           84s
    

四、应用中部署ALB

https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/guide/ingress/annotations/

参考

AWS Load Balancer Controller: https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/

在AWS EKS部署ALB相关推荐

  1. aws eks_在带aws eks的kubernetes上部署带舵的破折号

    aws eks Today we are going to be talking about Deploying a Dash App on Kubernetes with a Helm Chart ...

  2. AWS EKS ALB使用场景(持续更新)

    文章目录 一.创建的ALB多目标组 方法 二.多个Ingress一个ELB 方法 限制 三.灰度发布 四.日志 五.监控 一.创建的ALB多目标组 该场景解决的是一个Ingress配置多个规则,每个规 ...

  3. eksctl 部署AWS EKS

    目录 一.工具安装 1.1 安装kubectl 1.2 安装eksctl 1.3 安装Helm(可选) 二.命令式创建 2.1 创建Amazon EC2 Linux托管节点集群 2.2 创建Farga ...

  4. 使用微服务/ API网关(如Solo Gloo)公开在AWS EKS中运行的微服务

    因此,您决定在AWS中运行Kubernetes工作负载. 正如我们在设置AWS EKS 之前所看到的,需要很多耐心和头痛. 您也许可以使其正常运行. 对于其他用户,您应该从Weaveworks中 ek ...

  5. gloo pytorch_使用Solo Gloo等微服务/ API网关公开在AWS EKS中运行的微服务

    gloo pytorch 因此,您决定在AWS中运行Kubernetes工作负载. 正如我们在设置AWS EKS 之前所看到的,需要很多耐心和头痛. 您可能可以使其正常运行. 对于其他用户,您应该从W ...

  6. AWS EKS 创建k8s生产环境实例

    #AWS EKS 创建k8s生产环境实例 在AWS部署海外节点, 图简单使用web控制台创建VPC和k8s集群出错(k8s), 使用cli命令行工具创建成功 本实例为复盘, 记录aws命令行工具创建e ...

  7. aws eks_在生产中配置和使用AWS EKS

    aws eks 到现在,我们已经完成了向Amazon EKS ( 工作地点)的迁移,并且集群已经投入生产. 过去,我已经写了一些要点的简短摘要,您可以在这里找到. 当系统正在处理实际流量时,我有了一些 ...

  8. 在生产中配置和使用AWS EKS

    到现在,我们已经完成了向Amazon EKS ( 工作地点)的迁移,并且集群已经投入生产. 过去,我已经写了一些要点的简短摘要,您可以在这里找到. 当系统正在为实际流量提供服务时,我有了一些额外的信心 ...

  9. 如何统一管理谷歌GKE、AWS EKS和Oracle OKE

    在Rancher出现之前,管理在不同云提供商中运行的kubernetes集群从来都不是一件容易的事.Rancher是什么?它是一个开源的Kubernetes管理平台,用户可以在Rancher上创建对接 ...

最新文章

  1. 线性代数:04 特征值与特征向量 -- 特征值与特征向量
  2. 网络请求方式Fetch简介
  3. 谷歌、DeepMind强强联手再发布Dreamer:性能远超“前辈”PlaNet
  4. 【数字信号处理】傅里叶变换性质 ( 序列傅里叶变换共轭对称性质 | 序列实偶 傅里叶变换 实偶 | 序列实奇 傅里叶变换 虚奇 | 证明 “ 序列实奇 傅里叶变换 虚奇 “ )
  5. linux中opt是啥文件夹,Linux下各文件夹的含义及解释
  6. 干货整理及PPT下载福利 2017(上海)人工智能产品经理大会
  7. 读书笔记_Effective_C++_条款三十一:将文件间的编译依存关系降至最低(第二部分)...
  8. 编程打怪升级之路2018-06-01
  9. 第四篇 Entity Framework Plus 之 Batch Operations
  10. (JAVA)File类
  11. 安卓rom制作教程_刹那 刷机教程20-1三星S10 N10等系列 韩版国行安卓9升级10 详细步骤...
  12. 房友软件注册码暴力输入程序
  13. 水下通信方式以及WSN(无线传感器网络
  14. java-net-php-python-jspm毕业就业管理系统演示录像2019计算机毕业设计程序
  15. trackmaker翻译_体育翻译滑雪中英对照翻译
  16. 启发函数heuristic 与 A*
  17. 3D变形:平移、旋转、缩放
  18. 人脸 解锁 android开发,零基础开发Android人脸识别应用
  19. 聊一聊不同技术栈中hashmap扩容机制
  20. python打包程序在win10不能运行、点击无反应_win10双击安装包没反应,win10运行exe无反应...

热门文章

  1. uniapp(小程序) 配置 海康威视-萤石监控(直播替代方案) 踩坑与解决方法
  2. IDEA2020版导入tomcat的jar包到eternal libraries时遇到的问题
  3. 服务器厂商visio图标网站,云服务器visio图标
  4. 银河麒麟和鸿蒙系统,国产银河麒麟操作系统V10发布 兼容300万APP厉害了
  5. ISP之NR去噪算法
  6. 一套鼠标键盘控制windows和mac两台笔记本——shareMouse
  7. Java项目:饰品商城系统(java+SSM+JSP+javascript+jQuery+Mysql)
  8. 909422229_宝塔linux面板防护CC设置
  9. Quartus18.1自带仿真工具实现仿真
  10. 基于stc15f2k60s2芯片单片机编程(时钟DS1302)