在 eksctl 配置文件中的 –alb-ingress-access 相关设置

140次阅读
没有评论

问题描述

在阅读《如何在Fargate上运行无服务器Kubernetes:AWS EKS on Fargate》一文后,想知道在 eksctl 配置文件中,相当于命令行选项 –alb-ingress-access 的等效设置是什么。他查看了 eksctl 的配置文件模式,但并没有找到直接的对应项。甚至创建了一个示例集群并查看信息,也没有看到相关配置。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案

在 eksctl 配置文件中,等效于命令行选项 –alb-ingress-access 的设置可以通过在配置文件中指定特定的属性来实现。具体来说,你需要在配置文件中的 managedNodeGroups 下的 iam 属性中添加 “withAddonPolicies” 的配置项 “albIngress”。这个配置项将控制 Fargate 实例的 ALB Ingress Controller 的权限。

以下是在 eksctl 配置文件中实现相应配置的步骤:

  1. 创建一个 eksctl 配置文件(通常为 YAML 格式)。
  2. 在该文件中找到或创建 managedNodeGroups 下的 iam 属性,如果没有则添加。
  3. 在 iam 属性中的 withAddonPolicies 下添加 “albIngress” 配置项并设置为 true。
    下面是一个示例 eksctl 配置文件:
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig

metadata:
  name: ingress-sample
  region: us-east-1

managedNodeGroups:
  - name: fargate-workers
    instanceType: t2.micro
    desiredCapacity: 2
    iam:
      withAddonPolicies:
        albIngress: true

在上面的示例中,我们创建了一个 eksctl 配置文件,指定了集群名称和区域。我们使用 managedNodeGroups 定义了一个 Fargate worker 节点组,并在该节点组的 iam 属性下的 withAddonPolicies 配置项中设置了 “albIngress” 为 true。这将确保 Fargate 实例具有 ALB Ingress Controller 所需的权限。

请注意,根据你的 eksctl 版本和配置文件的结构可能会有所不同,确保根据实际情况进行修改。

更新:用户提供的命令行选项示例 “$ eksctl create cluster –alb-ingress-access -f config.yaml” 也是可行的,这意味着你可以直接在命令行中指定配置文件,并且 eksctl 将会使用配置文件中的相关设置来创建集群。这在一些场景下也是非常方便的。

正文完