

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 C ROSA LI 创建带有 HCP 集群的 ROSA
<a name="getting-started-hcp"></a>

以下各节介绍如何使用托管控制平面（带有 HCP 的 ROSA） AWS STS 和 C ROSA LI 开始使用 ROSA。有关使用 Terraform 创建带有 HCP 集群的 ROSA [的步骤，请参阅红帽文档](https://docs.openshift.com/rosa/rosa_hcp/terraform/rosa-hcp-creating-a-cluster-quickly-terraform.html)。要了解有关用于创建 ROSA 集群的 Terraform 提供程序的更多信息，请参阅 [Terraform 文档](https://registry.terraform.io/providers/terraform-redhat/rhcs/latest/docs)。

 ROSA CLI 使用`auto`模式或`manual`模式来创建所需 IAM 资源和 OpenID Connect (OIDC) 配置。 ROSA 集群`auto`模式会自动创建所需的 IAM 角色和策略以及 OIDC 提供者。 `manual`模式输出手动创建 IAM 资源所需的 AWS CLI 命令。通过使用`manual`模式，您可以在手动运行生成的 AWS CLI 命令之前查看这些命令。在 `manual` 模式下，您还可以将命令传递给组织中的其他管理员或组，以便其可以创建资源。

本文档中的过程使用 ROSA CLI `auto` 模式为使用 HCP 的 ROSA 创建所需的 IAM 资源和 OIDC 配置。有关入门的更多选项，请参阅[开始使用 ROSA](getting-started.md)。

**Topics**
+ [先决条件](#getting-started-hcp-prereqs)
+ [创建 Amazon VPC 架构](#create-vpc-hcp)
+ [创建所需的 IAM 角色和 OpenID Connect 配置](#create-iam-roles-oidc-hcp)
+ [使用 C ROSA LI 创建带有 HCP 集群的 ROSA 和 AWS STS](#create-hcp-cluster-cli)
+ [配置身份提供商并授予 集群 访问权限](#configure-oidc-hcp-cli)
+ [授予用户访问权限 集群](#grant-user-access-hcp-cli)
+ [配置 `cluster-admin` 权限](#configure-cluster-admin-hcp)
+ [配置 `dedicated-admin` 权限](#configure-dedicated-admin-hcp)
+ [集群 通过红帽混合云控制台访问](#console-access-hcp-cli)
+ [从开发者目录部署应用程序](#deploy-app-hcp-cli)
+ [撤销用户的 `cluster-admin` 权限](#revoke-cluster-admin-hcp-cli)
+ [撤销用户的 `dedicated-admin` 权限](#revoke-dedicated-admin-hcp-cli)
+ [撤消用户对 a 的访问权限 集群](#revoke-user-hcp-cli)
+ [删除集群和 AWS STS 资源](#delete-cluster-hcp-cli)

## 先决条件
<a name="getting-started-hcp-prereqs"></a>

完成中列出的先决条件操作[设置为使用 ROSA](set-up.md)。

## 创建 Amazon VPC 架构
<a name="create-vpc-hcp"></a>

以下过程创建了可用于托管集群的 Amazon VPC 架构。所有 集群 资源都托管在私有子网中。公有子网将来自私有子网的出站流量通过 NAT 网关路由到公有互联网。此示例使用 Amazon VPC的 CIDR 块 `10.0.0.0/16`。但您可以选择其他 CIDR 块。有关更多信息，请参阅 [VPC 大小调整](https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html#vpc-sizing)。

**重要**  
如果不 Amazon VPC 满足要求，集群创建将失败。

**Example**  

1. 安装 Terraform CLI。有关更多信息，请参阅 [Terraform 文档中的安装说明](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli)。

1. 打开终端会话并克隆 Terraform VPC 存储库。

   ```
   git clone https://github.com/openshift-cs/terraform-vpc-example
   ```

1. 导航到创建的目录。

   ```
   cd terraform-vpc-example
   ```

1. 启动 Terraform 文件。

   ```
   terraform init
   ```

   完成后，CLI 会返回一条消息，说明 Terraform 已成功初始化。

1. 要基于现有模板构建 Terraform 计划，请运行以下命令。 AWS 区域 必须指定。或者，您可以选择指定集群名称。

   ```
   terraform plan -out rosa.tfplan -var region=<region>
   ```

   命令运行后，会向`hypershift-tf`目录中添加一个`rosa.tfplan`文件。有关更多详细选项，请参阅 [Terraform VPC 存储库的自述文件](https://github.com/openshift-cs/terraform-vpc-example/blob/main/README.md)。

1. 应用计划文件来构建 VPC。

   ```
   terraform apply rosa.tfplan
   ```

   完成后，CLI 会返回一条成功消息，验证添加的资源。

   1. （可选）为由 Terraform 配置的私有、公有和机器池子网创建环境变量， IDs 以便在使用 HCP 集群创建 ROSA 时使用。

      ```
      export SUBNET_IDS=$(terraform output -raw cluster-subnets-string)
      ```

   1. （可选）验证环境变量设置是否正确。

      ```
      echo $SUBNET_IDS
      ```

1. 打开 [Amazon VPC 控制台](https://console.aws.amazon.com/vpc)。

1. 在 VPC 控制面板上，选择**创建 VPC**。

1. 对于**要创建的资源**，选择 **VPC 等**。

1. 保持选中**自动生成名称标签**以为 VPC 资源创建名称标签，或者清除此选项以为 VPC 资源提供您自己的名称标签。

1. 在 **IPv4 CIDR 块**中，输入 VPC IPv4 的地址范围。VPC 必须有 IPv4 地址范围。

1. （可选）要支持 IPv6 流量，请选择 **IPv6 CIDR 块，即亚马逊提供 IPv6 **的 CIDR 块。

1. 将**租赁**保留为. `Default` 

1. **在可用区数量 (AZs)** 中，选择所需的数量。对于多可用区部署， ROSA 需要三个可用区。要 AZs 为您的子网选择，请展开**自定义 AZs**。
**注意**  
某些 ROSA 实例类型仅在部分可用区域中可用。您可以使用 ROSA CLI `rosa list instance-types` 命令列出所有可用的 ROSA 实例类型。要检查某个实例类型是否适用于给定可用区，请使用 AWS CLI 命令`aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=location,Values=<availability_zone> --region <region> --output text | egrep "<instance_type>"`。

1. 要配置子网，请选择**公有子网的数量**和**私有子网的数量**的值。要选择子网的 IP 地址范围，请展开**自定义子网 CIDR 块**。
**注意**  
带 HCP 的 ROSA 要求客户为每个可用区至少配置一个公有子网和私有子网，用于创建集群。

1. 要授予私有子网中的资源访问公有互联网的权限 IPv4，对于 **NAT 网关**，请选择要 AZs 在其中创建 NAT 网关的数量。在生产环境中，我们建议您在每个可用区部署一个 NAT 网关，其中包含需要访问公共互联网的资源。

1. （可选）如果您需要 Amazon S3 直接从 VPC 进行访问，请选择 VP **C 终端节点，即 S3 网关**。

1. 保留默认 DNS 选项处于选中状态。 ROSA 需要 VPC 上支持 DNS 主机名。

1. 展开**其他标签**，选择**添加新标签**，然后添加以下标签密钥。 ROSA 使用自动预检来验证是否使用了这些标签。
   +  **键**：`kubernetes.io/role/elb`
   +  **键**：`kubernetes.io/role/internal-elb`

1. 选择**创建 VPC**。

1. 创建具有 `10.0.0.0/16` CIDR 块的 VPC。

   ```
    aws ec2 create-vpc \
        --cidr-block 10.0.0.0/16 \
        --query Vpc.VpcId \
        --output text
   ```

   前面的命令返回 VPC ID。下面是一个示例输出。

   ```
   vpc-1234567890abcdef0
   ```

1. 将 VPC ID 存储在环境变量中。

   ```
   export VPC_ID=vpc-1234567890abcdef0
   ```

1. 使用`VPC_ID`环境变量为 VPC 创建`Name`标签。

   ```
   aws ec2 create-tags --resources $VPC_ID --tags Key=Name,Value=MyVPC
   ```

1. 在 VPC 上启用 DNS 主机名支持。

   ```
   aws ec2 modify-vpc-attribute \
       --vpc-id $VPC_ID \
       --enable-dns-hostnames
   ```

1. 在 VPC 中创建公有和私有子网，指定应在其中创建资源的可用区。
**重要**  
带 HCP 的 ROSA 要求客户为每个可用区至少配置一个公有子网和私有子网，用于创建集群。对于多可用区部署，需要三个可用区。如果未满足这些要求，则集群创建失败。
**注意**  
某些 ROSA 实例类型仅在部分可用区域中可用。您可以使用 ROSA CLI `rosa list instance-types` 命令列出所有可用的 ROSA 实例类型。要检查某个实例类型是否适用于给定可用区，请使用 AWS CLI 命令`aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=location,Values=<availability_zone> --region <region> --output text | egrep "<instance_type>"`。

   ```
   aws ec2 create-subnet \
       --vpc-id $VPC_ID \
       --cidr-block 10.0.1.0/24 \
       --availability-zone us-east-1a \
       --query Subnet.SubnetId \
       --output text
   aws ec2 create-subnet \
       --vpc-id $VPC_ID \
       --cidr-block 10.0.0.0/24 \
       --availability-zone us-east-1a \
       --query Subnet.SubnetId \
       --output text
   ```

1. 将公有和私有子网存储 IDs 在环境变量中。

   ```
   export PUBLIC_SUB=subnet-1234567890abcdef0
   export PRIVATE_SUB=subnet-0987654321fedcba0
   ```

1. 为您的 VPC 子网创建以下标签。 ROSA 使用自动预检来验证是否使用了这些标签。
**注意**  
您必须至少标记一个私有子网，如果适用，还必须标记一个公有子网。

   ```
   aws ec2 create-tags --resources $PUBLIC_SUB --tags Key=kubernetes.io/role/elb,Value=1
   aws ec2 create-tags --resources $PRIVATE_SUB --tags Key=kubernetes.io/role/internal-elb,Value=1
   ```

1. 为出站流量创建互联网网关和路由表。为私有流量创建路由表和弹性 IP 地址。

   ```
   aws ec2 create-internet-gateway \
       --query InternetGateway.InternetGatewayId \
       --output text
   aws ec2 create-route-table \
       --vpc-id $VPC_ID \
       --query RouteTable.RouteTableId \
       --output text
   aws ec2 allocate-address \
       --domain vpc \
       --query AllocationId \
       --output text
   aws ec2 create-route-table \
       --vpc-id $VPC_ID \
       --query RouteTable.RouteTableId \
       --output text
   ```

1. 将环境变量存储 IDs 在环境中。

   ```
   export IGW=igw-1234567890abcdef0
   export PUBLIC_RT=rtb-0987654321fedcba0
   export EIP=eipalloc-0be6ecac95EXAMPLE
   export PRIVATE_RT=rtb-1234567890abcdef0
   ```

1. 将互联网网关连接到 VPC。

   ```
   aws ec2 attach-internet-gateway \
       --vpc-id $VPC_ID \
       --internet-gateway-id $IGW
   ```

1. 将公有路由表关联到公有子网，并将流量配置为路由到 Internet 网关。

   ```
   aws ec2 associate-route-table \
       --subnet-id $PUBLIC_SUB \
       --route-table-id $PUBLIC_RT
   aws ec2 create-route \
       --route-table-id $PUBLIC_RT \
       --destination-cidr-block 0.0.0.0/0 \
       --gateway-id $IGW
   ```

1. 创建 NAT 网关并将其与弹性 IP 地址关联以启用流向私有子网的流量。

   ```
   aws ec2 create-nat-gateway \
       --subnet-id $PUBLIC_SUB \
       --allocation-id $EIP \
       --query NatGateway.NatGatewayId \
       --output text
   ```

1. 将私有路由表关联到私有子网，并将流量配置为路由到 NAT 网关。

   ```
   aws ec2 associate-route-table \
       --subnet-id $PRIVATE_SUB \
       --route-table-id $PRIVATE_RT
   aws ec2 create-route \
       --route-table-id $PRIVATE_RT \
       --destination-cidr-block 0.0.0.0/0 \
       --gateway-id $NATGW
   ```

1. （可选）对于多可用区部署，请重复上述步骤，再配置两个包含公有子网和私有子网的可用区。

## 创建所需的 IAM 角色和 OpenID Connect 配置
<a name="create-iam-roles-oidc-hcp"></a>

在使用 HCP 集群创建 ROSA 之前，必须创建必要的 IAM 角色和策略以及 OpenID Connect (OIDC) 配置。有关使用 HCP 的 ROSA 的 IAM 角色和策略的更多信息，请参阅[AWS 的托管策略 ROSA](security-iam-awsmanpol.md)。

此过程使用 ROSA CLI `auto` 模式自动创建带有 HCP 集群的 ROSA 所需的 OIDC 配置。

1. 创建所需的 IAM 账户角色和策略。该`--force-policy-creation`参数更新存在的所有现有角色和策略。如果没有任何角色和策略，则该命令会改为创建这些资源。

   ```
   rosa create account-roles --force-policy-creation
   ```
**注意**  
如果您的离线访问令牌已过期， ROSA CLI 会输出一条错误消息，指出您的授权令牌需要更新。有关故障排除的步骤，请参阅[ROSA CLI 过期的离线访问令牌疑难解答](troubleshooting-rosa.md#rosa-cli-expired-token)。

1. 创建 OpenID Connect（OIDC）配置，以启用对集群的用户身份验证。此配置已注册为与 OpenShift 集群管理器 (OCM) 配合使用。

   ```
   rosa create oidc-config --mode=auto
   ```

1. 复制 CL ROSA I 输出中提供的 OIDC 配置 ID。稍后需要提供 OIDC 配置 ID 才能创建带 HCP 的 ROSA 集群。

1. 要验证与您的用户组织相关联集群可用的 OIDC 配置，请运行以下命令。

   ```
   rosa list oidc-config
   ```

1. 创建所需的 IAM 操作员角色，`<OIDC_CONFIG_ID>`替换为之前复制的 OIDC 配置 ID。  
**Example**  
**重要**  
创建操作员角色时，必须在 `<PREFIX_NAME>` 中提供前缀。否则会产生错误。

   ```
   rosa create operator-roles --prefix <PREFIX_NAME> --oidc-config-id <OIDC_CONFIG_ID> --hosted-cp
   ```

1. 要验证 IAM 操作员角色是否已创建，请运行以下命令：

   ```
   rosa list operator-roles
   ```

## 使用 C ROSA LI 创建带有 HCP 集群的 ROSA 和 AWS STS
<a name="create-hcp-cluster-cli"></a>

您可以 集群 使用 AWS Security Token Service (AWS STS) 和 C ROSA LI 中提供的`auto`模式创建 HCP 的 ROSA。您可以选择使用公共 API 和 Ingress 或私有 API 和 Ingress 创建集群。

您可以创建 集群 具有单个可用区（单可用区）或多个可用区（多可用区）的。无论哪种情况，您的计算机的 CIDR 值都必须匹配 VPC 的 CIDR 值。

以下过程使用`rosa create cluster --hosted-cp`命令创建带有 HCP 集群的单可用区 ROSA。要创建多可用区 集群，请在命令`multi-az`中指定要部署到 IDs 的每个私有子网的私有子网。

1. 使用以下命令之一，创建带 HCP 的 ROSA 集群。
   + 使用公共 API 和 Ingress 创建带有 HCP 集群的 ROSA，指定集群名称、操作员角色前缀、OIDC 配置 ID 以及公有和私有子网。 IDs

     ```
     rosa create cluster --cluster-name=<CLUSTER_NAME> --sts --mode=auto --hosted-cp --operator-roles-prefix <OPERATOR_ROLE_PREFIX> --oidc-config-id <OIDC_CONFIG_ID> --subnet-ids=<PUBLIC_SUBNET_ID>,<PRIVATE_SUBNET_ID>
     ```
   + 使用私有 API 和 Ingress 创建带有 HCP 集群的 ROSA，指定集群名称、操作员角色前缀、OIDC 配置 ID 和私有子网。 IDs

     ```
     rosa create cluster --private --cluster-name=<CLUSTER_NAME> --sts --mode=auto --hosted-cp --subnet-ids=<PRIVATE_SUBNET_ID>
     ```

1. 检查您的状态 集群。

   ```
   rosa describe cluster -c <CLUSTER_NAME>
   ```
**注意**  
如果创建过程失败或`State`字段在 10 分钟后仍未变为就绪状态，请参阅[问题排查](troubleshooting-rosa.md)。  
要联系 Support 我们的红帽支持部门寻求帮助，请参阅[获得 ROSA 支持](rosa-support.md)。

1. 通过查看 OpenShift 安装程序日志来跟踪 集群 创建进度。

   ```
   rosa logs install -c <CLUSTER_NAME> --watch
   ```

## 配置身份提供商并授予 集群 访问权限
<a name="configure-oidc-hcp-cli"></a>

 ROSA 包括内置 OAuth 服务器。创建 集群 完成后，必须配置 OAuth 为使用身份提供商。然后，您可以将用户添加到您配置的身份提供商，以授予其访问 集群的权限。您可以根据需要授予这些用户 `cluster-admin` 或 `dedicated-admin` 权限。

您可以为自己 ROSA 集群配置不同的身份提供商类型。支持的类型包括 GitHub En GitHub terprise、Google GitLab、LDAP、OpenID Connect 和 HTPasswd 身份提供商。

**重要**  
包含 HTPasswd 身份提供者只是为了允许创建单个静态管理员用户。 HTPasswd 不支持作为通用身份提供商。 ROSA

以下过程以配置 GitHub 身份提供者为例。有关如何配置每种支持的身份提供商类型的说明，请参阅[为 AWS STS配置身份提供商](https://access.redhat.com/documentation/en-us/red_hat_openshift_service_on_aws/4/html/install_rosa_classic_clusters/rosa-sts-config-identity-providers)。

1. 导航到 [github.com](https://github.com/) 并登录到你的 GitHub 账户。

1. 如果您没有 GitHub 组织可以用于您的身份配置 集群，请创建一个组织。有关更多信息，请参阅[ GitHub 文档中的步骤](https://docs.github.com/en/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch)。

1. 使用 ROSA CLI 的交互模式，为您的集群配置身份提供商。

   ```
   rosa create idp --cluster=<CLUSTER_NAME> --interactive
   ```

1. 按照输出中的配置提示限制 GitHub 组织成员的 集群 访问权限。

   ```
   I: Interactive mode enabled.
   Any optional fields can be left empty and a default will be selected.
   ? Type of identity provider: github
   ? Identity provider name: github-1
   ? Restrict to members of: organizations
   ? GitHub organizations: <GITHUB_ORG_NAME>
   ? To use GitHub as an identity provider, you must first register the application:
     - Open the following URL:
       https://github.com/organizations/<GITHUB_ORG_NAME>/settings/applications/new?oauth_application%5Bcallback_url%5D=https%3A%2F%2Foauth-openshift.apps.<CLUSTER_NAME>/<RANDOM_STRING>.p1.openshiftapps.com%2Foauth2callback%2Fgithub-1&oauth_application%5Bname%5D=<CLUSTER_NAME>&oauth_application%5Burl%5D=https%3A%2F%2Fconsole-openshift-console.apps.<CLUSTER_NAME>/<RANDOM_STRING>.p1.openshiftapps.com
     - Click on 'Register application'
   ...
   ```

1. 在输出中打开 URL，`<GITHUB_ORG_NAME>`替换为您的 GitHub 组织名称。

1. 在 GitHub 网页上，选择**注册应用程序**以在您的 GitHub 组织中注册新 OAuth 应用程序。

1. 运行以下命令，使用 GitHub OAuth 页面中的信息填充剩余的`rosa create idp`交互式提示。用 GitHub OAuth 应用程序中的`<GITHUB_CLIENT_SECRET>`凭据替换`<GITHUB_CLIENT_ID>`和。

   ```
   ...
   ? Client ID: <GITHUB_CLIENT_ID>
   ? Client Secret: [? for help] <GITHUB_CLIENT_SECRET>
   ? GitHub Enterprise Hostname (optional):
   ? Mapping method: claim
   I: Configuring IDP for cluster '<CLUSTER_NAME>'
   I: Identity Provider 'github-1' has been created.
      It will take up to 1 minute for this configuration to be enabled.
      To add cluster administrators, see 'rosa grant user --help'.
      To login into the console, open https://console-openshift-console.apps.<CLUSTER_NAME>.<RANDOM_STRING>.p1.openshiftapps.com and click on github-1.
   ```
**注意**  
身份提供商配置可能需要大约两分钟才能生效。如果您配置了`cluster-admin`用户，则可以运行`oc get pods -n openshift-authentication --watch`观看 OAuth pod 使用更新的配置重新部署。

1. 确认身份提供商已正确配置。

   ```
   rosa list idps --cluster=<CLUSTER_NAME>
   ```

## 授予用户访问权限 集群
<a name="grant-user-access-hcp-cli"></a>

您可以通过将用户添加到已配置的身份提供商 集群 来授予他们对您的访问权限。

以下过程将用户添加到已配置为向集群配置身份的 GitHub 组织。

1. 导航到 [github.com](https://github.com/) 并登录到你的 GitHub 账户。

1. 邀请需要 集群 访问您的 GitHub 组织的用户。有关更多信息，请参阅 GitHub 文档中的[邀请用户加入您的组织](https://docs.github.com/en/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization)。

## 配置 `cluster-admin` 权限
<a name="configure-cluster-admin-hcp"></a>

1. 通过运行以下命令授予 `cluster-admin` 权限。将 `<IDP_USER_NAME>` 和 `<CLUSTER_NAME>` 替换为您的用户名和集群名。

   ```
   rosa grant user cluster-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
   ```

1. 确认该用户是否已列为 `cluster-admins` 组的成员。

   ```
   rosa list users --cluster=<CLUSTER_NAME>
   ```

## 配置 `dedicated-admin` 权限
<a name="configure-dedicated-admin-hcp"></a>

1. 通过使用以下命令授予 `dedicated-admin` 权限。运行以下命令`<CLUSTER_NAME>`，用您的用户 集群 名和名称替换`<IDP_USER_NAME>`和。

   ```
   rosa grant user dedicated-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
   ```

1. 确认该用户是否已列为 `cluster-admins` 组的成员。

   ```
   rosa list users --cluster=<CLUSTER_NAME>
   ```

## 集群 通过红帽混合云控制台访问
<a name="console-access-hcp-cli"></a>

 集群 通过红帽混合云控制台登录您的。

1.  集群 使用以下命令获取您的控制台 URL。`<CLUSTER_NAME>`用你的名字替换 集群。

   ```
   rosa describe cluster -c <CLUSTER_NAME> | grep Console
   ```

1. 导航到输出中的控制台 URL 并登录。

   在**登录方式…​ **对话框中，选择身份提供商名称，然后完成提供商提出的任何授权请求。

## 从开发者目录部署应用程序
<a name="deploy-app-hcp-cli"></a>

在 Red Hat Hybrid Cloud Console 中，您可以部署开发人员目录测试应用程序，并通过路由将其公开。

1. 导航到 [Red Hat Hybrid Cloud Console](https://console.redhat.com/openshift)，然后选择要将应用程序部署到的集群。

1. 在集群的页面上，选择 **Open console**。

1. 在 **Administrator** 视角中，选择 **Home** > **Projects** > **Create Project**。

1. 输入项目的名称，然后添加 **Display Name** 和 **Description**（可选）。

1. 选择 **Create** 以创建项目。

1. 切换到 **Developer** 视角并选择 **\+Add**。确保所选的项目是刚刚创建的项目。

1. 在 **Developer Catalog** 对话框中，选择 **All services**。

1. 在 “**开发者目录**” 页面中，**JavaScript**从菜单中选择 “**语言**” >。

1. 选择 **Node.js**，然后选择 “**创建应用程序**” 以打开 “**创建 Source-to-Image应用程序**” 页面。
**注意**  
您可能需要选择 **Clear All Filters** 才能显示 **Node.js** 选项。

1. 在 **Git** 部分中，选择 **Try Sample**。

1. 在 **Name** 字段中，添加一个唯一的名称。

1. 选择**创建**。
**注意**  
部署新应用程序需要几分钟时间。

1. 部署完成后，选择应用程序的路由 URL。

   浏览器中将打开一个新选项卡，并显示与以下内容类似的一则消息。

   ```
   Welcome to your Node.js application on OpenShift
   ```

1. （可选）删除应用程序并清理资源：

   1. 在 **Administrator** 视角中，选择 **Home** > **Projects**。

   1. 打开项目的操作菜单，然后选择 **Delete Project**。

## 撤销用户的 `cluster-admin` 权限
<a name="revoke-cluster-admin-hcp-cli"></a>

1. 使用以下命令撤销 `cluster-admin` 权限。`<CLUSTER_NAME>`用您的用户名`<IDP_USER_NAME>`和 集群 名称替换和。

   ```
   rosa revoke user cluster-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
   ```

1. 确认该用户未列为 `cluster-admins` 组的成员。

   ```
   rosa list users --cluster=<CLUSTER_NAME>
   ```

## 撤销用户的 `dedicated-admin` 权限
<a name="revoke-dedicated-admin-hcp-cli"></a>

1. 通过使用以下命令，撤销 `dedicated-admin` 权限。`<CLUSTER_NAME>`用您的用户名`<IDP_USER_NAME>`和 集群 名称替换和。

   ```
   rosa revoke user dedicated-admin --user=<IDP_USER_NAME> --cluster=<CLUSTER_NAME>
   ```

1. 确认该用户未列为 `dedicated-admins` 组的成员。

   ```
   rosa list users --cluster=<CLUSTER_NAME>
   ```

## 撤消用户对 a 的访问权限 集群
<a name="revoke-user-hcp-cli"></a>

您可以通过将身份提供商用户从已配置的身份提供商中移除来撤消其 集群 访问权限。

您可以为自己的 集群配置不同类型的身份提供商。以下过程将撤消 GitHub 组织成员的 集群 访问权限。

1. 导航到 [github.com](https://github.com/) 并登录到你的 GitHub 账户。

1. 将该用户从您的 GitHub 组织中移除。有关更多信息，请参阅 GitHub 文档[中的从组织中移除成员](https://docs.github.com/en/organizations/managing-membership-in-your-organization/removing-a-member-from-your-organization)。

## 删除集群和 AWS STS 资源
<a name="delete-cluster-hcp-cli"></a>

您可以使用 ROSA CLI 删除使用 AWS Security Token Service (AWS STS) 集群 的。您也可以使用 ROSA CLI 删除由创建的 IAM 角色和 OIDC 提供者。 ROSA要删除由创建的 IAM 策略 ROSA，您可以使用 IAM 控制台。

**注意**  
 IAM 由创建的角色和策略 ROSA 可能会被同一账户中的其他 ROSA 集群使用。

1. 删除 集群 并查看日志。将 `<CLUSTER_NAME>` 替换为 集群的名称或 ID。

   ```
   rosa delete cluster --cluster=<CLUSTER_NAME> --watch
   ```
**重要**  
必须等待完全删除， 集群 然后才能移除 IAM 角色、策略和 OIDC 提供商。删除安装程序创建的资源需要账户 IAM 角色。需要操作员 IAM 角色才能清理 OpenShift 操作员创建的资源。操作员使用 OIDC 提供商进行身份验证。

1. 运行以下命令，删除 集群 操作员用来进行身份验证的 OIDC 提供商。

   ```
   rosa delete oidc-provider -c <CLUSTER_ID> --mode auto
   ```

1. 删除特定于集群的操作员 IAM 角色。

   ```
   rosa delete operator-roles -c <CLUSTER_ID> --mode auto
   ```

1. 使用以下命令删除账户的 IAM 角色。将 `<PREFIX>` 替换为要删除的账户 IAM 角色的前缀。如果您在创建账户 IAM 角色时指定了自定义前缀，请指定默认的 `ManagedOpenShift` 前缀。

   ```
   rosa delete account-roles --prefix <PREFIX> --mode auto
   ```

1. 删除由创建的 IAM 策略 ROSA。

   1. 登录 [IAM 控制台](https://console.aws.amazon.com/iamv2/home#/home)。

   1. 在左侧菜单的**访问管理**下，选择**策略**。

   1. 选择要删除的策略，然后选择**操作** > **删除**。

   1. 输入策略名称，然后选择**删除**。

   1. 重复此步骤以删除 集群的每个 IAM policy。