$ aws sts get-caller-identity --output text
使用 Red Hat OpenShift Service on AWS (ROSA) 命令行界面 (CLI),即 `rosa` 命令,来创建、更新、管理和删除 ROSA 集群和资源。
按照以下步骤在您的安装主机上安装和配置 ROSA CLI (`rosa`)。
安装并配置最新的 AWS CLI (`aws`)。
按照 AWS 命令行界面 文档安装和配置适合您操作系统的 AWS CLI。
在 `.aws/credentials` 文件中指定您的 `aws_access_key_id`、`aws_secret_access_key` 和 `region`。请参见 AWS 文档中的 AWS 配置基础知识。
您可以选择使用 `AWS_DEFAULT_REGION` 环境变量来设置默认的 AWS 区域。 |
查询 AWS API 以验证 AWS CLI 是否已正确安装和配置
$ aws sts get-caller-identity --output text
<aws_account_id> arn:aws:iam::<aws_account_id>:user/<username> <aws_user_id>
从 OpenShift 集群管理器上的 下载 页面下载适合您操作系统的最新版 ROSA CLI (`rosa`)。
从下载的压缩包中解压 `rosa` 二进制文件。以下示例是从 Linux tar 压缩包中解压二进制文件
$ tar xvf rosa-linux.tar.gz
将 `rosa` 添加到您的路径中。在以下示例中,用户的路径中包含 `/usr/local/bin` 目录
$ sudo mv rosa /usr/local/bin/rosa
通过查询 `rosa` 版本来验证 ROSA CLI 是否已正确安装
$ rosa version
1.2.15
Your ROSA CLI is up to date.
可选:为 ROSA CLI 启用制表符自动补全。启用制表符自动补全后,您可以按两次 `Tab` 键来自动补全子命令并接收命令建议
要在 Linux 主机上为 Bash 启用持久的制表符自动补全
为 Bash 生成一个 `rosa` 制表符自动补全配置文件,并将其保存到您的 `/etc/bash_completion.d/` 目录
# rosa completion bash > /etc/bash_completion.d/rosa
打开一个新终端以激活配置。
要在 macOS 主机上为 Bash 启用持久的制表符自动补全
为 Bash 生成一个 `rosa` 制表符自动补全配置文件,并将其保存到您的 `/usr/local/etc/bash_completion.d/` 目录
$ rosa completion bash > /usr/local/etc/bash_completion.d/rosa
打开一个新终端以激活配置。
要为 Zsh 启用持久的制表符自动补全
如果您的 Zsh 环境未启用制表符自动补全,请运行以下命令启用它
$ echo "autoload -U compinit; compinit" >> ~/.zshrc
为 Zsh 生成一个 `rosa` 制表符自动补全配置文件,并将其保存到您的 functions 路径中的第一个目录
$ rosa completion zsh > "${fpath[1]}/_rosa"
打开一个新终端以激活配置。
要为 fish 启用持久的制表符自动补全
为 fish 生成一个 `rosa` 制表符自动补全配置文件,并将其保存到您的 `~/.config/fish/completions/` 目录
$ rosa completion fish > ~/.config/fish/completions/rosa.fish
打开一个新终端以激活配置。
要为 PowerShell 启用持久的制表符自动补全
为 PowerShell 生成一个 `rosa` 制表符自动补全配置文件,并将其保存到名为 `rosa.ps1` 的文件中
PS> rosa completion powershell | Out-String | Invoke-Expression
从您的 PowerShell 配置文件中引用 `rosa.ps1` 文件。
有关配置 `rosa` 制表符自动补全的更多信息,请运行 `rosa completion --help` 命令查看帮助菜单。 |
使用以下命令配置 Red Hat OpenShift Service on AWS (ROSA) CLI,`rosa`。
登录您的 Red Hat 帐户,并将凭据保存到 `rosa` 配置文件。登录时必须提供令牌。您可以从 ROSA 令牌页面 复制您的令牌。
ROSA CLI (`rosa`) 按以下优先级顺序查找令牌
命令行参数
`ROSA_TOKEN` 环境变量
`rosa` 配置文件
从命令行提示符交互式输入
$ rosa login [arguments]
选项 | 定义 |
---|---|
--client-id |
OpenID 客户端标识符 (字符串)。默认值:`cloud-services` |
--client-secret |
OpenID 客户端密钥 (字符串)。 |
--insecure |
启用与服务器的不安全通信。这将禁用 TLS 证书和主机名的验证。 |
--scope |
OpenID 范围 (字符串)。如果使用此选项,它将替换默认范围。可以多次重复此选项以指定多个范围。默认值:`openid` |
--token |
访问或刷新令牌 (字符串)。 |
--token-url |
OpenID 令牌 URL (字符串)。默认值:`https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token` |
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
--profile |
从您的凭据文件中指定 AWS 配置文件 (字符串)。 |
从 `rosa` 登出。登出还会删除 `rosa` 配置文件。
$ rosa logout [arguments]
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
--profile |
从您的凭据文件中指定 AWS 配置文件 (字符串)。 |
验证创建 ROSA 集群所需的 AWS 权限是否已正确配置
$ rosa verify permissions [arguments]
此命令仅验证不使用 AWS 安全令牌服务 (STS) 的集群的权限。 |
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
--region |
运行命令的 AWS 区域 (字符串)。此值将覆盖 `AWS_REGION` 环境变量。 |
--profile |
从您的凭据文件中指定 AWS 配置文件 (字符串)。 |
验证 AWS 权限是否已正确配置
$ rosa verify permissions
验证特定区域中 AWS 权限是否已正确配置
$ rosa verify permissions --region=us-west-2
验证您的默认区域中 AWS 配额是否已正确配置。
$ rosa verify quota [arguments]
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
--region |
运行命令的 AWS 区域 (字符串)。此值将覆盖 `AWS_REGION` 环境变量。 |
--profile |
从您的凭据文件中指定 AWS 配置文件 (字符串)。 |
验证默认区域的 AWS 配额是否配置正确
$ rosa verify quota
验证特定区域的 AWS 配额是否配置正确
$ rosa verify quota --region=us-west-2
下载最新兼容版本的 rosa
命令行界面。
下载 rosa
后,解压存档内容并将其添加到您的路径中。
$ rosa download rosa [arguments]
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
下载最新兼容版本的 OpenShift Container Platform 命令行界面 (oc
)。
下载 oc
后,您必须解压存档内容并将其添加到您的路径中。
$ rosa download oc [arguments]
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
下载 oc
客户端工具
$ rosa download oc
仅当您使用非 STS 时,才使用 init
命令初始化 Red Hat OpenShift Service on AWS (ROSA)。
执行一系列检查以验证您是否已准备好部署 ROSA 集群。
检查列表包括以下内容:
检查您是否已登录 (请参见 login
)
检查您的 AWS 凭证是否有效
检查您的 AWS 权限是否有效 (请参见 verify permissions
)
检查您的 AWS 配额级别是否足够高 (请参见 verify quota
)
运行集群模拟以确保集群创建将按预期执行
检查您的 AWS 账户中是否已创建 osdCcsAdmin
用户
检查您的系统上是否可用 OpenShift Container Platform 命令行工具
$ rosa init [arguments]
选项 | 定义 |
---|---|
--region |
用于验证配额和权限的 AWS 区域 (字符串)。此值仅在运行 |
--delete |
删除在 |
--client-id |
OpenID 客户端标识符 (字符串)。默认值:`cloud-services` |
--client-secret |
OpenID 客户端密钥 (字符串)。 |
--insecure |
启用与服务器的不安全通信。这将禁用 TLS 证书和主机名的验证。 |
--scope |
OpenID 作用域 (字符串)。如果使用此选项,它将完全替换默认作用域。可以多次重复此操作以指定多个作用域。默认值: |
--token |
访问或刷新令牌 (字符串)。 |
--token-url |
OpenID 令牌 URL (字符串)。默认值:`https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token` |
选项 | 定义 |
---|---|
--help |
显示此命令的帮助信息。 |
--debug |
启用调试模式。 |
--profile |
从您的凭据文件中指定 AWS 配置文件 (字符串)。 |
配置您的 AWS 帐户以允许 ROSA 集群
$ rosa init
使用预先存在的 OpenShift Cluster Manager 凭证配置新的 AWS 帐户
$ rosa init --token=$OFFLINE_ACCESS_TOKEN
这是一个关于如何将 Bash 脚本与 Red Hat OpenShift Service on AWS (ROSA) CLI (rosa
) 一起使用的示例工作流程。
确保 AWS 凭证可通过以下选项之一获得:
AWS 配置文件
环境变量 (AWS_ACCESS_KEY_ID
、AWS_SECRET_ACCESS_KEY
)
使用 Red Hat OpenShift Cluster Manager 脱机令牌初始化 rosa
来自 Red Hat
$ rosa init --token=<token>
创建 ROSA 集群
$ rosa create cluster --cluster-name=<cluster_name>
添加身份提供商 (IDP)
$ rosa create idp --cluster=<cluster_name> --type=<identity_provider> [arguments]
添加 dedicated-admin
用户
$ rosa grant user dedicated-admin --user=<idp_user_name> --cluster=<cluster_name>
更新到最新兼容版本的 ROSA CLI (rosa
)。
确认新的 ROSA CLI (rosa
) 版本可用
$ rosa version
1.2.12
There is a newer release version '1.2.15', please consider updating: https://mirror.openshift.com/pub/openshift-v4/clients/rosa/latest/
下载最新兼容版本的 ROSA CLI
$ rosa download rosa
此命令将名为 rosa-*.tar.gz
的存档下载到当前目录。文件的准确名称取决于您的操作系统和系统架构。
解压存档内容
$ tar -xzf rosa-linux.tar.gz
通过将解压后的文件移动到您的路径中来安装新版本的 ROSA CLI。在以下示例中,/usr/local/bin
目录包含在用户的路径中
$ sudo mv rosa /usr/local/bin/rosa
验证是否已安装新版本的 ROSA。
$ rosa version
1.2.15
Your ROSA CLI is up to date.