使用控制台创建 kro 功能 - Amazon EKS

帮助改进此页面

要帮助改进本用户指南,请选择位于每个页面右侧窗格中的在 GitHub 上编辑此页面链接。

使用控制台创建 kro 功能

本主题旨在介绍如何使用 AWS 管理控制台 创建 kro(Kube Resource Orchestrator)功能。

创建 kro 功能

  1. 从以下位置打开 Amazon EKS 控制台:https://console.aws.amazon.com/eks/home#/clusters。

  2. 选择集群名称,打开集群详细信息页面。

  3. 选择功能选项卡。

  4. 在左侧导航栏中,选择 kro(Kube Resource Orchestrator)

  5. 选择创建 kro 功能

  6. 对于 IAM 功能角色

    • 如果已有 IAM 功能角色,请从下拉列表中选择该角色

    • 如需创建角色,请选择创建 kro 角色

      此操作会在新选项卡中打开 IAM 控制台,其中包含预填充的信任策略。该角色无需配置额外的 IAM 权限,因为 kro 的所有操作均在集群内部完成。

      创建角色后,返回 EKS 控制台,系统将自动选择该角色。

      注意

      与 ACK 和 Argo CD 不同,kro 除信任策略外,无需额外的 IAM 权限。kro 完全在集群中运行,不会发起 AWS API 调用。

  7. 选择创建

功能创建过程随即开始。

验证功能是否处于活动状态

  1. 功能选项卡上,查看 kro 功能状态。

  2. 等待状态从 CREATING 更改为 ACTIVE

  3. 变为活动状态后,该功能即可使用。

有关功能状态和问题排查的信息,请参阅使用功能资源

授予 Kubernetes 资源管理权限

当您创建 kro 功能时,系统会使用 AmazonEKSKROPolicy 自动创建 EKS 访问条目,该条目允许 kro 管理 ResourceGraphDefinitions 及其实例。但是,默认情况下,不授予任何权限来创建 ResourceGraphDefinitions 中定义的底层 Kubernetes 资源(如部署、服务、ConfigMaps 等)。

这种有意的设计遵循了最低权限原则,即不同的 ResourceGraphDefinitions 需要不同的权限。您必须根据您的 ResourceGraphDefinitions 将管理的资源明确配置 kro 所需的权限。

对于快速入门、测试或开发环境,请使用 AmazonEKSClusterAdminPolicy

  1. 在 EKS 控制台中,导航到 EKS 集群的访问选项卡。

  2. 访问条目下,找到对应 kro 功能角色的条目(将包含之前创建的角色 ARN)。

  3. 选择访问条目,打开对应的详细信息页面。

  4. 访问策略部分,选择关联访问策略

  5. 从策略列表中选择 AmazonEKSClusterAdminPolicy

  6. 访问范围中,选择集群

  7. 选择关联

重要

AmazonEKSClusterAdminPolicy 会授予宽泛的权限,以创建和管理所有的 Kubernetes 资源,包括能够在所有命名空间中创建任何类型的资源的权限。这便于开发和 POC,但不应在生产环境中使用。在生产环境使用时,请创建自定义 RBAC 策略,仅授予 ResourceGraphDefinition 需管理的特定资源对应的权限。有关配置最低权限的指引,请参阅配置 kro 权限EKS 功能的安全注意事项

验证自定义资源是否可用

待该功能处于激活状态后,验证 kro 自定义资源是否已在集群中正常可用。

使用控制台

  1. 在 Amazon EKS 控制台中导航至集群

  2. 选择资源选项卡

  3. 选择扩展

  4. 选择 CustomResourceDefinitions

您应能看到 ResourceGraphDefinition 这一资源类型已被列出。

使用 kubectl

kubectl api-resources | grep kro.run

您应能看到 ResourceGraphDefinition 这一资源类型已被列出。

后续步骤