$ rosa describe cluster --cluster=<cluster_name>
如果您想删除带有托管控制平面 (HCP) 集群的Red Hat OpenShift Service on AWS (ROSA),您可以使用Red Hat OpenShift集群管理器或ROSA命令行界面 (CLI) (rosa)。删除集群后,您还可以删除集群使用的AWS身份和访问管理(IAM)资源。
您可以使用ROSA命令行界面 (CLI) (rosa) 或Red Hat OpenShift集群管理器删除带有HCP集群的ROSA。
删除集群后,您可以使用ROSA CLI清理AWS帐户中的集群特定身份和访问管理(IAM)资源。集群特定资源包括操作员角色和OpenID Connect (OIDC)提供程序。
|
必须在删除IAM资源之前完成集群删除,因为这些资源用于集群删除和清理过程。 |
如果安装了附加组件,则集群删除将花费更长时间,因为在删除集群之前会卸载附加组件。所需时间取决于附加组件的数量和大小。
您已安装带有HCP集群的ROSA。
您已在安装主机上安装并配置了最新的ROSA CLI (rosa)。
通过运行以下命令获取集群ID、集群特定操作员角色的Amazon资源名称(ARN)以及OIDC提供程序的端点URL
$ rosa describe cluster --cluster=<cluster_name>
Name: test_cluster
Domain Prefix: test_cluster
Display Name: test_cluster
ID: <cluster_id> (1)
External ID: <external_id>
Control Plane: ROSA Service Hosted
OpenShift Version: 4.17.0
Channel Group: stable
DNS: test_cluster.l3cn.p3.openshiftapps.com
AWS Account: <AWS_id>
AWS Billing Account: <AWS_id>
API URL: https://api.test_cluster.l3cn.p3.openshiftapps.com:443
Console URL:
Region: us-east-1
Availability:
- Control Plane: MultiAZ
- Data Plane: SingleAZ
Nodes:
- Compute (desired): 2
- Compute (current): 0
Network:
- Type: OVNKubernetes
- Service CIDR: 172.30.0.0/16
- Machine CIDR: 10.0.0.0/16
- Pod CIDR: 10.128.0.0/14
- Host Prefix: /23
- Subnets: <subnet_ids>
EC2 Metadata Http Tokens: optional
Role (STS) ARN: arn:aws:iam::<AWS_id>:role/test_cluster-HCP-ROSA-Installer-Role
Support Role ARN: arn:aws:iam::<AWS_id>:role/test_cluster-HCP-ROSA-Support-Role
Instance IAM Roles:
- Worker: arn:aws:iam::<AWS_id>:role/test_cluster-HCP-ROSA-Worker-Role
Operator IAM Roles: (2)
- arn:aws:iam::<AWS_id>:role/test_cluster-openshift-cloud-network-config-controller-cloud-crede
- arn:aws:iam::<AWS_id>:role/test_cluster-openshift-image-registry-installer-cloud-credentials
- arn:aws:iam::<AWS_id>:role/test_cluster-openshift-ingress-operator-cloud-credentials
- arn:aws:iam::<AWS_id>:role/test_cluster-kube-system-kube-controller-manager
- arn:aws:iam::<AWS_id>:role/test_cluster-kube-system-capa-controller-manager
- arn:aws:iam::<AWS_id>:role/test_cluster-kube-system-control-plane-operator
- arn:aws:iam::<AWS_id>:role/hcpcluster-kube-system-kms-provider
- arn:aws:iam::<AWS_id>:role/test_cluster-openshift-cluster-csi-drivers-ebs-cloud-credentials
Managed Policies: Yes
State: ready
Private: No
Created: Apr 16 2024 20:32:06 UTC
User Workload Monitoring: Enabled
Details Page: https://console.redhat.com/openshift/details/s/<cluster_id>
OIDC Endpoint URL: https://oidc.op1.openshiftapps.com/<cluster_id> (Managed) (3)
Audit Log Forwarding: Disabled
External Authentication: Disabled
| 1 | 列出集群ID。 |
| 2 | 指定集群特定操作员角色的ARN。例如,在示例输出中,机器配置操作员所需的该角色的ARN是arn:aws:iam::<aws_account_id>:role/mycluster-x4q9-openshift-machine-api-aws-cloud-credentials。 |
| 3 | 显示集群特定OIDC提供程序的端点URL。 |
|
删除集群后,您需要集群ID才能使用ROSA CLI删除集群特定的STS资源。 |
使用OpenShift集群管理器或ROSA CLI (rosa)删除集群
要使用OpenShift集群管理器删除集群
导航到OpenShift集群管理器。
点击集群旁边的选项菜单 并选择**删除集群**。
在提示符中键入集群名称,然后单击**删除**。
要使用ROSA CLI删除集群
运行以下命令,将<cluster_name>替换为集群的名称或ID
$ rosa delete cluster --cluster=<cluster_name> --watch
|
您必须等到集群删除完成才能删除操作员角色和OIDC提供程序。 |
通过运行以下命令删除集群特定的操作员IAM角色
$ rosa delete operator-roles --prefix <operator_role_prefix>
通过运行以下命令删除OIDC提供程序
$ rosa delete oidc-provider --oidc-config-id <oidc_config_id>
删除所有依赖于帐户范围AWS身份和访问管理(IAM)资源的带有托管控制平面(HCP)集群的Red Hat OpenShift Service on AWS (ROSA)后,您可以删除帐户范围的资源。
如果您不再需要使用Red Hat OpenShift集群管理器安装带有HCP集群的ROSA,您还可以删除OpenShift集群管理器和用户IAM角色。
|
帐户范围的IAM角色和策略可能被同一AWS帐户中的其他带有HCP集群的ROSA使用。只有在其他集群不需要这些资源时才删除它们。 如果您想使用OpenShift集群管理器在同一AWS帐户中安装、管理和删除其他Red Hat OpenShift Service on AWS集群,则需要OpenShift集群管理器和用户IAM角色。只有在您不再需要使用OpenShift集群管理器在您的帐户中安装Red Hat OpenShift Service on AWS集群时才删除这些角色。有关在删除这些角色之前修复集群的更多信息,请参阅《故障排除集群部署》中的“修复无法删除的集群”。 |
本节提供删除为 ROSA with HCP 部署创建的帐户范围的 IAM 角色和策略以及帐户范围的操作员策略的步骤。只有在删除所有依赖它们的 ROSA with HCP 集群后,才能删除帐户范围的 AWS Identity and Access Management (IAM) 角色和策略。
|
帐户范围的 IAM 角色和策略可能被同一 AWS 帐户中的其他 Red Hat OpenShift Service on AWS 使用。只有在其他集群不需要这些角色时,才能删除它们。 |
您有一些要删除的帐户范围的 IAM 角色。
您已在安装主机上安装并配置了最新的ROSA CLI (rosa)。
删除帐户范围的角色
使用 ROSA CLI (rosa) 列出 AWS 帐户中的帐户范围的角色
$ rosa list account-roles
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
删除帐户范围的内联策略和操作员策略
在 AWS IAM 控制台 的**策略**页面下,按创建帐户范围的角色和策略时指定的 prefix 筛选策略列表。
|
如果您在创建帐户范围的角色时未指定自定义前缀,请搜索默认前缀 |
使用 AWS IAM 控制台 删除帐户范围的内联策略和操作员策略。有关使用 AWS IAM 控制台删除 IAM 策略的更多信息,请参见 AWS 文档中的 删除 IAM 策略。
|
同一 AWS 帐户中的其他 ROSA with HCP 可能使用帐户范围的内联和操作员 IAM 策略。只有在其他集群不需要这些角色时,才能删除它们。 |
使用 Red Hat OpenShift 集群管理器安装 ROSA with HCP 集群时,还会创建链接到 Red Hat 组织的 OpenShift 集群管理器和用户 Identity and Access Management (IAM) 角色。删除集群后,您可以使用 ROSA CLI (rosa) 取消链接并删除这些角色。
|
如果您想使用 OpenShift 集群管理器在同一 AWS 帐户中安装和管理其他 ROSA with HCP,则需要 OpenShift 集群管理器和用户 IAM 角色。只有在您不再需要使用 OpenShift 集群管理器安装 ROSA with HCP 集群时,才能删除这些角色。 |
您创建了 OpenShift 集群管理器和用户 IAM 角色,并将它们链接到您的 Red Hat 组织。
您已在安装主机上安装并配置了最新的ROSA CLI (rosa)。
您在 Red Hat 组织中拥有组织管理员权限。
取消链接 OpenShift 集群管理器 IAM 角色与您的 Red Hat 组织,并删除该角色
列出 AWS 帐户中的 OpenShift 集群管理器 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 集群管理器 IAM 角色在前面命令的输出中列为已链接,请运行以下命令将其与您的 Red Hat 组织取消链接
$ rosa unlink ocm-role --role-arn <arn> (1)
| 1 | 将<arn>替换为您的 OpenShift 集群管理器 IAM 角色的 Amazon 资源名称 (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 集群管理器 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 集群管理器 IAM 角色和策略。在manual模式下,ROSA CLI 会生成删除角色和策略所需的aws命令。manual模式使您能够在手动运行aws命令之前查看详细信息。 |
取消链接用户 IAM 角色与您的 Red Hat 组织,并删除该角色
列出 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 角色在前面命令的输出中列为已链接,请将其与您的 Red Hat 组织取消链接
$ rosa unlink user-role --role-arn <arn> (1)
| 1 | 将<arn>替换为您的用户 IAM 角色的 Amazon 资源名称 (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 角色。在manual模式下,ROSA CLI 会生成删除角色所需的aws命令。manual模式使您能够在手动运行aws命令之前查看详细信息。 |