5.6. 使用 OpenShift Cluster Manager 启用红帽构建的 Karpenter
在完成安装后,使用 OpenShift Cluster Manager 在集群上启用 Karpenter 的 Red Hat build of Karpenter。
先决条件
- 您已在 AWS 集群上创建了 Red Hat OpenShift Service,版本 4.22.0 或更高版本。
- 您已创建了用于红帽构建的 Karpenter 的 AWS Identity and Access Management (IAM)角色。
您有集群的 Open ID Connect (OIDC)端点 URL。
注意运行
rosa describe cluster -c $CLUSTER_NAME | grep "OIDC Endpoint URL"以查看此 URL。不要包括 OIDC Endpoint URL 中的https://前缀。例如,使用example-oidc-endpoint.cloudfront.net/abcd1234examplehash5678而不是https://example-oidc-endpoint.cloudfront.net/abcd1234examplehash5678。- 有访问 AWS 控制台的适当凭证。
流程
导出 AWS ID:
$ export AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text)- 登录到 AWS 控制台。
- 在 AWS 控制台中,导航到 IAM > Roles。
在 Red Hat build of Karpenter Amazon Resource Name (ARN)上,更新信任策略使其包含以下策略规格:
注意要访问此 ARN,请运行:
$ echo $ROLE_ARN{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::<aws_account_id>:oidc-provider/<oidc-endpoint-url>" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "<oidc-endpoint-url>:sub": "system:serviceaccount:kube-system:karpenter" } } } ] }其中:
- <aws_account_id>
- 指定 AWS 帐户 ID。
- <oidc-endpoint-url>
- 指定您获取的 OIDC 端点 URL。
- 在 OpenShift Cluster Manager 中,从集群列表中选择集群。
- 在集群详情屏幕上,选择 RedHat build of Karpenter 的 status 旁边的 Edit 按钮。
- 在 Edit Autonode 设置 对话框中,切换 Enable Autonode。
- 将您的 Red Hat build of Karpenter IAM role ARN 添加到此对话框中的字段。
- 选择 Save 保存您的配置并关闭 Edit Autonode settings 框。