10.3. 删除集群范围的 IAM 资源
在删除了依赖于帐户范围 AWS Identity and Access Management (IAM)资源的托管 control plane (HCP)集群的所有 Red Hat OpenShift Service on AWS (ROSA)集群后,您可以删除集群范围的资源。
如果您不再需要使用 Red Hat OpenShift Cluster Manager 安装带有 HCP 集群的 ROSA,您也可以删除 OpenShift Cluster Manager 和用户 IAM 角色。
帐户范围的 IAM 角色和策略可能被同一 AWS 帐户中的 HCP 集群使用。只有资源不再被其他集群需要时,才删除这些资源。
如果要使用 OpenShift Cluster Manager 安装、管理和删除同一 AWS 帐户中的其他 Red Hat OpenShift Service on AWS 集群,则需要 OpenShift Cluster Manager 和用户 IAM 角色。只有您不再需要使用 OpenShift Cluster Manager 在帐户中安装 Red Hat OpenShift Service on AWS 集群时,才删除角色。有关在删除前删除这些角色时修复集群的更多信息,请参阅"对集群 部署的故障排除中的修复集群 "。
10.3.1. 删除集群范围的 IAM 角色和策略
本节提供了删除您为使用 STS ROSA 使用 HCP 部署的 ROSA 创建的账户范围的 IAM 角色和策略,以及帐户范围内的 Operator 策略的步骤。只有在删除了所有依赖于它们的 Red Hat OpenShift Service on AWS (ROSA) ROSA 后,才能删除集群范围的 AWS Identity and Access Management (IAM)角色和策略。
帐户范围的 IAM 角色和策略可能被同一 AWS 帐户中的其他 ROSA 集群 Red Hat OpenShift Service on AWS 使用。只有角色不再被其他集群需要时,才删除这些资源。
前提条件
- 您有要删除的帐户范围的 IAM 角色。
-
您已在安装主机上安装并配置了最新的 ROSA CLI (
rosa
)。
流程
删除集群范围的角色:
使用 ROSA CLI 列出 AWS 帐户中的系统范围角色 (
rosa
):$ rosa list account-roles
输出示例
I: Fetching account roles ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION ManagedOpenShift-ControlPlane-Role Control plane arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-ControlPlane-Role 4.10 ManagedOpenShift-Installer-Role Installer arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-Installer-Role 4.10 ManagedOpenShift-Support-Role Support arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-Support-Role 4.10 ManagedOpenShift-Worker-Role Worker arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-Worker-Role 4.10
I: Fetching account roles ROLE NAME ROLE TYPE ROLE ARN OPENSHIFT VERSION AWS Managed ManagedOpenShift-HCP-ROSA-Installer-Role Installer arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Installer-Role 4.17 Yes ManagedOpenShift-HCP-ROSA-Support-Role Support arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Support-Role 4.17 Yes ManagedOpenShift-HCP-ROSA-Worker-Role Worker arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-HCP-ROSA-Worker-Role 4.17 Yes
删除集群范围的角色:
$ rosa delete account-roles --prefix <prefix> --mode auto 1
- 1
- 您必须包含
--<prefix>
参数。将<prefix>
替换为要删除的集群范围角色前缀。如果您在创建集群范围的角色时没有指定自定义前缀,请指定默认前缀ManagedOpenShift
。
重要帐户范围的 IAM 角色可供同一 AWS 帐户中的其他 ROSA 集群使用。只有角色不再被其他集群需要时,才删除这些资源。
输出示例
W: There are no classic account roles to be deleted I: Deleting hosted CP account roles ? Delete the account role 'delete-rosa-HCP-ROSA-Installer-Role'? Yes I: Deleting account role 'delete-rosa-HCP-ROSA-Installer-Role' ? Delete the account role 'delete-rosa-HCP-ROSA-Support-Role'? Yes I: Deleting account role 'delete-rosa-HCP-ROSA-Support-Role' ? Delete the account role 'delete-rosa-HCP-ROSA-Worker-Role'? Yes I: Deleting account role 'delete-rosa-HCP-ROSA-Worker-Role' I: Successfully deleted the hosted CP account roles
- 删除集群范围的内行和 Operator 策略:
在 AWS IAM 控制台中的 Policies 页面中,根据您在创建帐户范围角色和策略时指定的前缀过滤策略列表。
注意如果您在创建集群范围的角色时没有指定自定义前缀,请搜索默认前缀
ManagedOpenShift
。使用 AWS IAM 控制台删除集群范围的内行策略和 Operator 策略。有关使用 AWS IAM 控制台删除 IAM 策略的更多信息,请参阅 AWS 文档中的删除 IAM 策略。
重要帐户范围的 in-line 和 Operator IAM 策略可能被同一 AWS 帐户中的带有 HCP 的其他 ROSA 集群使用。只有角色不再被其他集群需要时,才删除这些资源。
10.3.2. 取消链接和删除 OpenShift Cluster Manager 和用户 IAM 角色
当使用 Red Hat OpenShift Cluster Manager 安装带有 HCP 集群的 ROSA 时,您还可以创建 OpenShift Cluster Manager 和用户 Identity and Access Management (IAM)角色来链接到您的红帽机构。删除集群后,您可以使用 ROSA CLI (rosa
) 取消链接和删除角色。
如果要使用 OpenShift Cluster Manager 在同一个 AWS 帐户中使用 HCP 安装和管理其他 ROSA,则需要 OpenShift Cluster Manager 和用户 IAM 角色。只有在不再使用 OpenShift Cluster Manager 来安装使用 HCP 集群的 ROSA 时,才删除角色。
前提条件
- 您创建了 OpenShift Cluster Manager 和用户 IAM 角色,并将其链接到您的红帽机构。
-
您已在安装主机上安装并配置了最新的 ROSA CLI (
rosa
)。 - 在 Red Hat 机构中具有机构管理员特权。
流程
从红帽机构取消链接 OpenShift Cluster Manager IAM 角色并删除角色:
列出 AWS 帐户中的 OpenShift Cluster Manager IAM 角色:
$ rosa list ocm-roles
输出示例
I: Fetching ocm roles ROLE NAME ROLE ARN LINKED ADMIN AWS Managed ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> Yes Yes Yes
如果您的 OpenShift Cluster Manager IAM 角色在上一命令的输出中被列为链接,请运行以下命令来取消链接红帽机构中的角色:
$ rosa unlink ocm-role --role-arn <arn> 1
- 1
- 将
<arn
> 替换为 OpenShift Cluster Manager IAM 角色的 Amazon Resource Name (ARN)。ARN 在上一命令的输出中指定。在上例中,ARN 的格式为arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id
>。
输出示例
I: Unlinking OCM role ? Unlink the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' role from organization '<red_hat_organization_id>'? Yes I: Successfully unlinked role-arn 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' from organization account '<red_hat_organization_id>'
删除 OpenShift Cluster Manager IAM 角色和策略:
$ rosa delete ocm-role --role-arn <arn>
输出示例
I: Deleting OCM role ? OCM Role ARN: arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id> ? Delete 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-OCM-Role-<red_hat_organization_external_id>' ocm role? Yes ? OCM role deletion mode: auto 1 I: Successfully deleted the OCM role
- 1
- 指定删除模式。您可以使用
auto
模式自动删除 OpenShift Cluster Manager IAM 角色和策略。在手动模式中
,ROSA CLI 生成删除角色和策略所需的aws
命令。manual
模式允许您在手动运行aws
命令前查看详情。
从您的红帽机构中取消链接用户 IAM 角色并删除角色:
列出 AWS 帐户中的用户 IAM 角色:
$ rosa list user-roles
输出示例
I: Fetching user roles ROLE NAME ROLE ARN LINKED ManagedOpenShift-User-<ocm_user_name>-Role arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role Yes
如果您的用户 IAM 角色在上一命令的输出中被列为链接,请取消链接您的红帽机构中的角色:
$ rosa unlink user-role --role-arn <arn> 1
- 1
- 将
<arn
> 替换为您的用户 IAM 角色的 Amazon Resource Name (ARN)。ARN 在上一命令的输出中指定。在上例中,ARN 格式为arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role
。
输出示例
I: Unlinking user role ? Unlink the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' role from the current account '<ocm_user_account_id>'? Yes I: Successfully unlinked role ARN 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' from account '<ocm_user_account_id>'
删除用户 IAM 角色:
$ rosa delete user-role --role-arn <arn>
输出示例
I: Deleting user role ? User Role ARN: arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role ? Delete the 'arn:aws:iam::<aws_account_id>:role/ManagedOpenShift-User-<ocm_user_name>-Role' role from the AWS account? Yes ? User role deletion mode: auto 1 I: Successfully deleted the user role
- 1
- 指定删除模式。您可以使用
auto
模式自动删除用户 IAM 角色。在手动
模式中,ROSA CLI 生成删除角色所需的aws
命令。manual
模式允许您在手动运行aws
命令前查看详情。