第 8 章 为使用 STS 设置环境
满足 AWS 的先决条件后,设置您的环境并安装 Red Hat OpenShift Service on AWS (ROSA)。
AWS 安全令牌服务 (STS) 是推荐的凭证模式,用于安装 Red Hat OpenShift Service on AWS (ROSA) 集群并与之交互,因为它提供了增强的安全性。
8.1. 为 STS 设置环境
在创建使用 AWS 安全令牌服务 (STS) 的 Red Hat OpenShift Service on AWS (ROSA) 集群前,请完成以下步骤来设置您的环境。
前提条件
- 检查并完成部署先决条件和策略。
- 如果还没有 红帽帐户,请创建一个红帽帐户。然后,检查您的电子邮件中的验证链接。您需要这些凭证来安装 ROSA。
流程
登录到您要使用的 Amazon Web Services (AWS)帐户。
建议您使用专用 AWS 帐户来运行生产环境集群。如果使用 AWS Organizations,您可以使用您所在机构的 AWS 帐户或创建一个新账户。
如果您使用 AWS 机构,且您需要有一个服务控制策略 (SCP) 应用于您计划使用的 AWS 帐户,则这些策略必须比集群所需的角色和策略更严格。
在 AWS 管理控制台中启用 ROSA 服务。
安装和配置 AWS CLI。
按照 AWS 命令行界面文档为您的操作系统 安装和配置 AWS CLI。
在
.aws/credentials
文件中指定正确的aws_access_key_id
和aws_secret_access_key
。请参阅 AWS 文档中的 AWS 配置基础知识。设置默认 AWS 区域。
注意您可以使用环境变量设置默认的 AWS 区域。
ROSA 服务以以下优先级顺序评估区域:
-
使用
--region
标志运行rosa
命令时指定的区域。 -
AWS_DEFAULT_REGION
环境变量中设置的区域。请参阅 AWS 文档中的配置 AWS CLI 的环境变量。 - AWS 配置文件中设置的默认区域。请参阅 AWS 文档中的使用 aws 配置的快速配置。
-
使用
可选:使用名为 profile 的 AWS CLI 设置和凭证配置 AWS CLI 设置和凭证。
ROSA
按照以下优先级顺序评估 AWS 命名配置集:-
使用
--profile
标志运行rosa
命令时指定的配置集。 -
在
AWS_PROFILE
环境变量中设置的配置集。请参阅 AWS 文档中的 名称配置集。
-
使用
运行以下命令查询 AWS API 来验证 AWS CLI 是否已正确安装和配置:
$ aws sts get-caller-identity
安装最新版本的 ROSA CLI (
rosa
)。- 为您的操作系统下载 ROSA CLI 的最新版本。
可选:命名您下载到
rosa
的文件,并使文件可执行。本文档使用rosa
参考可执行文件。$ chmod +x rosa
可选:在路径中添加
rosa
。$ mv rosa /usr/local/bin/rosa
输入以下命令验证您的安装:
$ rosa
输出示例
Command line tool for Red Hat OpenShift Service on AWS. For further documentation visit https://access.redhat.com/documentation/zh-cn/red_hat_openshift_service_on_aws Usage: rosa [command] Available Commands: completion Generates completion scripts create Create a resource from stdin delete Delete a specific resource describe Show details of a specific resource download Download necessary tools for using your cluster edit Edit a specific resource grant Grant role to a specific resource help Help about any command init Applies templates to support Red Hat OpenShift Service on AWS install Installs a resource into a cluster link Link a ocm/user role from stdin list List all resources of a specific type login Log in to your Red Hat account logout Log out logs Show installation or uninstallation logs for a cluster revoke Revoke role from a specific resource uninstall Uninstalls a resource from a cluster unlink UnLink a ocm/user role from stdin upgrade Upgrade a resource verify Verify resources are configured correctly for cluster install version Prints the version of the tool whoami Displays user account information Flags: --color string Surround certain characters with escape sequences to display them in color on the terminal. Allowed options are [auto never always] (default "auto") --debug Enable debug mode. -h, --help help for rosa Use "rosa [command] --help" for more information about a command.
为 ROSA CLI 生成命令完成脚本。以下示例为 Linux 机器生成 Bash 完成脚本:
$ rosa completion bash | sudo tee /etc/bash_completion.d/rosa
提供脚本,以从现有终端中启用
rosa
命令完成。以下示例在 Linux 机器上提供rosa
的 Bash 完成脚本:$ source /etc/bash_completion.d/rosa
使用 ROSA CLI 登录您的红帽帐户。
输入以下命令。
$ rosa login
将
<my_offline_access_token&
gt; 替换为您的令牌。输出示例
To login to your Red Hat account, get an offline access token at https://console.redhat.com/openshift/token/rosa ? Copy the token and paste it here: <my-offline-access-token>
输出持续示例
I: Logged in as '<rh-rosa-user>' on 'https://api.openshift.com'
验证您的 AWS 帐户是否有部署 ROSA 集群所需的配额。
$ rosa verify quota [--region=<aws_region>]
输出示例
I: Validating AWS quota... I: AWS quota ok
注意有时,AWS 配额因区域而异。如果您收到任何错误,请尝试不同的区域。
如果需要提高配额,进入 AWS 管理控制台,并为失败的服务请求配额增加。
在配额检查成功后,继续下一步。
为集群部署准备 AWS 帐户:
运行以下命令验证您的 Red Hat 和 AWS 凭证是否已正确设置。检查 AWS 帐户 ID、默认区域和 ARN 是否与您所期望的内容匹配。您可以安全地忽略以 OpenShift Cluster Manager 开始的行。
$ rosa whoami
输出示例
AWS Account ID: 000000000000 AWS Default Region: us-east-1 AWS ARN: arn:aws:iam::000000000000:user/hello OCM API: https://api.openshift.com OCM Account ID: 1DzGIdIhqEWyt8UUXQhSoWaaaaa OCM Account Name: Your Name OCM Account Username: you@domain.com OCM Account Email: you@domain.com OCM Organization ID: 1HopHfA2hcmhup5gCr2uH5aaaaa OCM Organization Name: Red Hat OCM Organization External ID: 0000000
通过 ROSA (
rosa
) CLI 安装 OpenShift CLI (oc
)、版本 4.7.9 或更高版本。输入这个命令下载
oc
CLI 的最新版本:$ rosa download openshift-client
-
下载
oc
CLI 后,解压它并将其添加到您的路径中。 输入这个命令来验证
oc
CLI 是否已正确安装:$ rosa verify openshift-client
创建角色
完成这些步骤后,就可以设置 IAM 和 OIDC 访问的角色。