第 9 章 没有 CNI 插件的 Red Hat OpenShift Service on AWS 集群
您可以在创建 Red Hat OpenShift Service on AWS 集群时使用自己的 Container Network Interface (CNI)插件。您可以在没有 CNI 的情况下在 AWS 集群上创建 Red Hat OpenShift Service,并在集群创建后安装自己的 CNI 插件。
对于选择使用自己的 CNI 的客户,CNI 插件支持的责任属于与所选 CNI 供应商协调的客户。
Red Hat OpenShift Service on AWS 的默认插件是 OVN-Kubernetes 网络插件。此插件是 Red Hat OpenShift Service on AWS 唯一支持的 CNI 插件。
如果您选择将自己的 CNI 用于 Red Hat OpenShift Service on AWS 集群,则强烈建议您在创建集群时从插件厂商获取商业支持。红帽支持无法为选择使用自己的 CNI 的客户提供与 CNI 相关的问题,如 pod 到 pod 流量。红帽仍然为所有非CNI 问题提供支持。如果要红帽与 CNI 相关的支持,则必须使用默认 OVN-Kubernetes 网络插件安装集群。如需更多信息,请参阅 责任列表。
9.1.1. 先决条件 复制链接链接已复制到粘贴板!
9.1.2. 创建集群范围的 STS 角色和策略 复制链接链接已复制到粘贴板!
在 AWS 集群上创建 Red Hat OpenShift Service 前,您必须创建所需的帐户范围的角色和策略。
Red Hat OpenShift Service on AWS 的特定 AWS 管理策略必须附加到每个角色。客户管理的策略不能与这些所需的帐户角色一起使用。有关 Red Hat OpenShift Service on AWS 集群的 AWS 管理策略的更多信息,请参阅 ROSA 的 AWS 受管策略。
先决条件
- 您已完成 Red Hat OpenShift Service on AWS 的 AWS 先决条件。
- 您有可用的 AWS 服务配额。
- 您已在 AWS 控制台中启用了 Red Hat OpenShift Service on AWS。
-
您已在安装主机上安装和配置了最新的 ROSA CLI (
rosa
)。 - 已使用 ROSA CLI 登录您的红帽帐户。
流程
如果您的 AWS 帐户不存在它们,请创建所需的账户范围 STS 角色,并通过运行以下命令来附加策略:
rosa create account-roles --hosted-cp
$ rosa create account-roles --hosted-cp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:运行以下命令,将您的前缀设置为环境变量:
export ACCOUNT_ROLES_PREFIX=<account_role_prefix>
$ export ACCOUNT_ROLES_PREFIX=<account_role_prefix>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,查看变量的值:
echo $ACCOUNT_ROLES_PREFIX
$ echo $ACCOUNT_ROLES_PREFIX
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
ManagedOpenShift
ManagedOpenShift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
如需有关 AWS 上 Red Hat OpenShift Service 的 AWS 管理的 IAM 策略的更多信息,请参阅 ROSA 的 AWS 管理的 IAM 策略。
9.1.3. 创建 OpenID 连接配置 复制链接链接已复制到粘贴板!
在 AWS 集群上创建 Red Hat OpenShift Service 时,您可以在创建集群前创建 OpenID Connect (OIDC)配置。此配置注册到 OpenShift Cluster Manager。
先决条件
- 您已完成 Red Hat OpenShift Service on AWS 的 AWS 先决条件。
-
您已在安装主机上安装和配置了最新的 ROSA CLI
rosa
。
流程
要创建 OIDC 配置以及 AWS 资源,请运行以下命令:
rosa create oidc-config --mode=auto --yes
$ rosa create oidc-config --mode=auto --yes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 此命令返回以下信息:
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在创建集群时,您必须提供 OIDC 配置 ID。CLI 输出为--
mode auto
提供了此值,否则您必须根据aws
CLI 输出用于-模式手动
确定这些值。可选: 您可以将 OIDC 配置 ID 保存为稍后使用的变量。运行以下命令来保存变量:
export OIDC_ID=<oidc_config_id>
$ export OIDC_ID=<oidc_config_id>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 在上面的示例输出中,OIDC 配置 ID 是 13cdr6b。
运行以下命令,查看变量的值:
echo $OIDC_ID
$ echo $OIDC_ID
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
13cdr6b
13cdr6b
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
您可以列出与您的用户机构关联的集群可用的 OIDC 配置。运行以下命令:
rosa list oidc-config
$ rosa list oidc-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDN
ID MANAGED ISSUER URL SECRET ARN 2330dbs0n8m3chkkr25gkkcd8pnj3lk2 true https://dvbwgdztaeq9o.cloudfront.net/2330dbs0n8m3chkkr25gkkcd8pnj3lk2 233hvnrjoqu14jltk6lhbhf2tj11f8un false https://oidc-r7u1.s3.us-east-1.amazonaws.com aws:secretsmanager:us-east-1:242819244:secret:rosa-private-key-oidc-r7u1-tM3MDN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.1.4. 创建 Operator 角色和策略 复制链接链接已复制到粘贴板!
在 AWS 集群上部署 Red Hat OpenShift Service 时,您必须创建 Operator IAM 角色。集群 Operator 使用 Operator 角色和策略获取执行集群操作所需的临时权限,如管理后端存储和对集群的外部访问权限。
先决条件
- 您已完成 Red Hat OpenShift Service on AWS 的 AWS 先决条件。
-
您已在安装主机上安装和配置了最新的 ROSA CLI (
rosa
)。 - 您创建了集群范围的 AWS 角色。
流程
要创建 Operator 角色,请运行以下命令:
rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::$AWS_ACCOUNT_ID:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role
$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX --oidc-config-id=$OIDC_ID --installer-role-arn arn:aws:iam::$AWS_ACCOUNT_ID:role/${ACCOUNT_ROLES_PREFIX}-HCP-ROSA-Installer-Role
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下分类提供了创建 Operator 角色的选项。
rosa create operator-roles --hosted-cp
$ rosa create operator-roles --hosted-cp --prefix=$OPERATOR_ROLES_PREFIX
1 --oidc-config-id=$OIDC_ID
2 --installer-role-arn arn:aws:iam::$AWS_ACCOUNT_ID:role/$ACCOUNT_ROLES_PREFIX-HCP-ROSA-Installer-Role
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您必须包含
-hosted-cp
参数,以便为 Red Hat OpenShift Service on AWS 集群创建正确的角色。此命令返回以下信息:输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 现在,Operator 角色已创建并可用于创建 Red Hat OpenShift Service on AWS 集群。
验证
您可以列出与 Red Hat OpenShift Service on AWS 帐户关联的 Operator 角色。运行以下命令:
rosa list operator-roles
$ rosa list operator-roles
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 命令运行后,它会显示与 AWS 帐户关联的所有前缀,并记录与这个前缀关联的角色数量。如果您需要查看所有这些角色及其详情,请在详情提示符处输入"是",使这些角色以特定形式列出。