NSX Cloud 提供了 SHELL 脚本以帮助设置一个或多个 AWS 帐户,方法是针对附加到为您的 AWS 帐户提供必要权限的配置文件的 PCG 生成 IAM 配置文件和角色。
如果计划在两个不同的 AWS 帐户中托管链接到多个计算 VPC 的转换 VPC,则可以使用脚本在这些帐户之间创建信任关系。
注: 默认情况下,
PCG(网关)角色名称为
nsx_pcg_service。如果要为网关角色名称使用不同的值,则可以在脚本中更改它,但请记下此值,因为在
CSM 中添加 AWS 帐户时需要该值。
前提条件
运行脚本之前,必须在 Linux 或兼容系统上安装并配置以下项:
- 已为帐户和默认区域配置 AWS CLI。
- jq(JSON 解析器)。
- openssl(网络安全要求)。
注: 如果使用 AWS GovCloud(美国)帐户,请确保为 GovCloud (美国)帐户配置了 AWS CLI,并且在 AWS CLI 配置文件中指定了默认区域。
过程
- 在 Linux 或兼容的桌面或服务器上,从 NSX 下载页面 > 驱动程序和工具 > NSX Cloud 脚本 > AWS 下载 SHELL 脚本 nsx_csm_iam_script.sh。
- 场景 1:将单个 AWS 帐户与 NSX Cloud 一起使用。
- 运行该脚本,例如:
bash nsx_csm_iam_script.sh
- 系统提示问题
Do you want to create an IAM user for CSM and an IAM role for PCG? [yes/no]
时,输入 yes
- 系统询问
What do you want to name the IAM User?
时,输入 IAM 用户的名称
注: IAM 用户名在 AWS 帐户中必须是唯一的。
- 系统询问
Do you want to add trust relationship for any Transit VPC account? [yes/no]
时,输入 no
脚本成功运行后,会在 AWS 帐户中为
PCG 创建该 IAM 配置文件和角色。值将保存在运行脚本的同一目录下名为
aws_details.txt 的输出文件中。接下来,依次按照
在 CSM 中添加 AWS 帐户和
在 VPC 中部署 PCG中的说明操作,完成转换或自我管理 VPC 的设置过程。
- 场景 2:您希望在 AWS 中使用由一个主 AWS 帐户管理的多个子帐户。
- 从您的 AWS 主帐户中运行脚本。
bash nsx_csm_iam_script.sh
- 系统提示问题
Do you want to create an IAM user for CSM and an IAM role for PCG? [yes/no]
时,输入 yes
- 系统询问
What do you want to name the IAM User?
时,输入 IAM 用户的名称
注: IAM 用户名在 AWS 帐户中必须是唯一的。
- 系统询问
Do you want to add trust relationship for any Transit VPC account? [yes/no]
时,输入 no
注: 对于主 AWS 帐户,如果您的转换 VPC 有权查看子帐户中的计算 VPC,则不需要与子帐户建立信任关系。如果没有,则按照
场景 3 的步骤设置多个帐户。
在成功运行脚本时,将在您的 AWS 主帐户中创建
PCG 的 IAM 配置文件和角色。值将保存在运行脚本时的同一目录下的输出文件中。文件名为
aws_details.txt。接下来,依次按照
在 CSM 中添加 AWS 帐户和
在 VPC 中部署 PCG中的说明操作,完成转换或自我管理 VPC 的设置过程。
- 场景 3:将多个 AWS 帐户与 NSX Cloud 一起使用,以为转换 VPC 指定一个帐户,为计算 VPC 指定其他帐户。有关 PCG 部署选项的详细信息,请参见NSX Public Cloud Gateway:架构和部署模式。
- 记下要托管转换 VPC 的 12 位 AWS 帐号。
- 按照场景 1 中步骤 a 到 d 在 AWS 帐户中设置转换 VPC,并完成在 CSM 中添加帐户的过程。
- 在要托管计算 VPC 的其他 AWS 帐户中,从 Linux 或兼容系统下载并运行 NSX Cloud 脚本。或者,可以将 AWS 配置文件与不同的帐户凭据一起使用,以便使用同一系统对其他 AWS 帐户再次运行脚本。
- 该脚本提出了一个问题:
Do you want to create an IAM user for CSM and an IAM role for PCG? [yes/no]
。请按以下指导做出适当的响应:
此 AWS 帐户已添加到 CSM。 |
输入 no 以响应 Do you want to create an IAM user for CSM and an IAM role for PCG? [yes/no] |
此帐户之前尚未添加到 CSM。 |
输入 yes 以响应 Do you want to create an IAM user for CSM and an IAM role for PCG? [yes/no] |
- (可选) 如果在以上问题中回答 yes 以为 CSM 和 PCG 创建 IAM 用户,请在系统询问
What do you want to name the IAM User?
时输入 IAM 用户的名称。IAM 用户名在 AWS 帐户中必须是唯一的。
- 系统询问
Do you want to add trust relationship for any Transit VPC account? [yes/no]
时,输入 yes
- 系统询问
What is the Transit VPC account number?
时,输入或复制并粘贴在步骤 1 中记录的 12 位 AWS 帐号
在两个 AWS 帐户之间建立了 IAM 信任关系,外部 ID 由脚本生成。