第 6 章 为 ROSA 集群配置共享 VPC


您可以在共享、集中管理的 AWS 虚拟私有云(VPC)中创建 Red Hat OpenShift Service on AWS (ROSA)集群。

重要

目前,只有使用 STS 进行身份验证的 ROSA Classic 集群才支持 在多个 AWS 帐户间共享 VPC

注意

此过程需要 两个属于同一 AWS 机构的独立 AWS 帐户。一个帐户作为 VPC-owning AWS 帐户(VPC Owner),另一个帐户在集群创建 AWS 帐户(Cluster Creator)中创建集群。

VPC Owner的先决条件

  • 您有一个具有适当权限的 AWS 帐户,以创建角色和共享资源。
  • Cluster Creator 的 AWS 帐户与 VPC 所有者的 AWS 帐户分开。
  • 两个 AWS 帐户都属于同一 AWS 机构。
  • 您从机构的管理帐户启用了资源共享。
  • 您可以访问 AWS 控制台

集群创建器的先决条件

注意

在共享 VPC 上安装集群只支持 OpenShift 4.12.34 及更新的版本、4.13.10 及更新的版本,以及将来的 4.y-streams。

如果该帐户位于当前 AWS 机构中,您可以将配置的 VPC 中的子网与另一个 AWS 用户帐户共享。

流程

  1. 在 AWS 控制台的 VPC 部分中,创建或修改 VPC 部分的 VPC。
  2. 创建一个自定义策略文件,以允许使用名称 SharedVPCPolicy 的必要共享 VPC 权限:

    $ cat <<EOF > /tmp/shared-vpc-policy.json
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "route53:ChangeResourceRecordSets",
                    "route53:ListHostedZones",
                    "route53:ListHostedZonesByName",
                    "route53:ListResourceRecordSets",
                    "route53:ChangeTagsForResource",
                    "route53:GetAccountLimit",
                    "route53:GetChange",
                    "route53:GetHostedZone",
                    "route53:ListTagsForResource",
                    "route53:UpdateHostedZoneComment",
                    "tag:GetResources",
                    "tag:UntagResources"
                ],
                "Resource": "*"
            }
        ]
    }
    EOF
    Copy to Clipboard Toggle word wrap
  3. 在 AWS 中创建策略:

    $ aws iam create-policy \
        --policy-name SharedVPCPolicy \
        --policy-document file:///tmp/shared-vpc-policy.json
    Copy to Clipboard Toggle word wrap

    您可以将此策略附加到共享 VPC 权限所需的角色。

  4. 创建自定义信任策略文件,授予授予角色的权限:

    $ cat <<EOF > /tmp/shared-vpc-role.json
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "AWS": "arn:aws:iam::<Account-ID>:root"  
    1
    
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
    EOF
    Copy to Clipboard Toggle word wrap
    1
    主体将在 Cluster Creator 创建必要的集群角色后被限定。在创建时,您必须使用 Cluster Creator 的 AWS 帐户 ID 作为 arn:aws:iam::{Account}:root 来创建 root 用户占位符。
  5. 创建 IAM 角色:

    $ aws iam create-role --role-name <role_name> \  
    1
    
        --assume-role-policy-document file:///tmp/shared-vpc-role.json
    Copy to Clipboard Toggle word wrap
    1
    将 < role_name > 替换为您要创建的角色的名称。
  6. 附加自定义 SharedVPCPolicy 权限策略:

    $ aws iam attach-role-policy --role-name <role_name> --policy-arn \  
    1
    
        arn:aws:iam::<AWS_account_ID>:policy/SharedVPCPolicy  
    2
    Copy to Clipboard Toggle word wrap
    1
    <role_name > 替换为您创建的角色的名称。
    2
    <AWS_account_ID > 替换为 VPC 所有者的 AWS 帐户 ID。
  7. Cluster Creator 提供 SharedVPCRole ARN 以继续配置。

其他资源

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat