8.2. 使用 ROSA CLI 管理对象


使用 Red Hat OpenShift Service on AWS (ROSA) CLI 管理对象 rosa,如添加 dedicated-admin 用户、管理集群和调度集群升级。

注意

要访问只能通过 HTTP 代理服务器访问的集群,您可以设置 HTTP_PROXYHTTPS_PROXYNO_PROXY 变量。rosa CLI 尊重这些环境变量,以便与集群的所有通信都通过 HTTP 代理进行。

8.2.1. 常用命令和参数

这些常用命令和参数可用于 Red Hat OpenShift Service on AWS (ROSA) CLI。

8.2.1.1. debug

为父命令启用调试模式,以帮助进行故障排除。

示例

$ rosa create cluster --cluster-name=<cluster_name> --debug

8.2.1.2. 下载

将指定软件的最新兼容版本下载到存档文件中的当前目录。提取存档内容,并将内容添加到您的路径中以使用软件。要下载最新的 ROSA CLI,请指定 rosa。要下载最新的 OpenShift CLI,请指定 oc

示例

$ rosa download <software>

8.2.1.3. 帮助

显示 ROSA CLI (rosa)和可用命令列表的常规帮助信息。此选项也可以用作参数来显示父命令(如 versioncreate)的帮助信息。

例子

显示 ROSA CLI 的常规帮助。

$ rosa --help

显示 版本 的一般帮助。

$ rosa version --help

8.2.1.4. interactive

启用交互模式。

示例

$ rosa create cluster --cluster-name=<cluster_name> --interactive

8.2.1.5. 配置集

从凭证文件中指定 AWS 配置集。

示例

$ rosa create cluster --cluster-name=<cluster_name> --profile=myAWSprofile

8.2.1.6. version

显示 rosa 版本,并检查是否有更新的版本。

示例

$ rosa version [arguments]

输出示例

当有较新版本的 ROSA CLI 可用时显示。

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/

8.2.2. 父命令

Red Hat OpenShift Service on AWS (ROSA) CLI rosa 使用父命令和子命令来管理对象。父命令是 create, edit, delete, list, 和 describe。并非所有父命令都可用于所有子命令。如需更多信息,请参阅描述子命令的特定参考主题。

8.2.2.1. create

使用子命令对对象或资源时创建对象或资源。

示例

$ rosa create cluster --cluster-name=mycluster

8.2.2.2. edit

对对象的编辑选项,如使集群私有。

示例

$ rosa edit cluster --cluster=mycluster --private

8.2.2.3. delete

使用子命令对对象或资源时删除对象或资源。

示例

$ rosa delete ingress --cluster=mycluster

8.2.2.4. list

列出特定集群的集群或资源。

示例

$ rosa list users --cluster=mycluster

8.2.2.5. describe

显示集群的详情。

示例

$ rosa describe cluster --cluster=mycluster

8.2.3. 创建对象

本节论述了集群和资源的 create 命令

8.2.3.1. 创建 account-roles

为集群创建所需的集群范围的角色和策略资源。

语法

$ rosa create account-roles [flags]

表 8.11. 标记
选项定义

--debug

启用调试模式。

-i,--interactive

启用交互模式。

-m, --mode string

如何执行操作。有效选项有:

auto
资源更改将使用当前的 AWS 帐户自动应用。
manual
修改 AWS 资源所需的命令将输出手动运行。

--path string

集群范围的角色和策略的 Amazon 资源名称(ARN)路径,包括 Operator 策略。

--permissions-boundary string

用于为帐户角色设置权限边界的策略 ARN。

--prefix string

所有生成的 AWS 资源的用户定义前缀。默认值为 ManagedOpenShift

--profile string

使用您的凭证文件中的特定 AWS 配置集。

-y,--yes

自动回答 yes 以确认操作。

8.2.3.2. 创建管理员

使用自动生成的密码创建集群管理员,以便登录到集群。

语法

$ rosa create admin --cluster=<cluster_name>|<cluster_id>

表 8.12. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。要添加到身份提供程序(IDP)的集群的名称或 ID (字符串)。

表 8.13. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile string

从您的凭证文件中指定一个 AWS 配置集。

示例

创建一个集群管理员,它可以登录到名为 mycluster 的集群。

$ rosa create admin --cluster=mycluster

8.2.3.3. 创建 breakuildDefaults 凭证

为启用了外部身份验证的托管 control plane 集群创建一个 breakfish 凭证。

语法

$ rosa create break-glass-credential --cluster=<cluster_name> [arguments]

表 8.14. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。将添加 break visualization 凭据的集群的名称或 ID。

--expiration

可选:在过期前可以使用 breakerior 凭证的时间。过期持续时间必须至少为 10 分钟,最多 24 小时。如果没有输入值,则过期持续时间默认为 24 小时。

--username

可选。中断简介凭据的用户名。如果没有输入值,则会为您生成一个随机用户名。

表 8.15. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--region

指定一个 AWS 区域,覆盖 AWS_REGION 环境变量。

--yes

自动回答 yes 以确认操作。

例子

向名为 mycluster 的集群添加一个 breakerior 凭证。

语法

$ rosa create break-glass-credential --cluster=mycluster

使用交互模式,向名为 mycluster 的集群添加 breaktra credential。

语法

$ rosa create break-glass-credential --cluster=mycluster -i

8.2.3.4. 创建集群

创建新集群。

语法

$ rosa create cluster --cluster-name=<cluster_name> [arguments]

表 8.16. 参数
选项定义

--additional-compute-security-group-ids <sec_group_id>

与集群创建的标准机器池一起使用的一个或多个额外安全组的标识符。有关额外安全组的更多信息,请参阅附加资源安全组 的要求。

--additional-infra-security-group-ids <sec_group_id>

与与集群一同创建的 infra 节点一起使用的一个或多个额外安全组的标识符。有关额外安全组的更多信息,请参阅附加资源安全组 的要求。

--additional-control-plane-security-group-ids <sec_group_id>

与与集群创建的 control plane 节点一起使用的一个或多个额外安全组的标识符。有关额外安全组的更多信息,请参阅附加资源安全组 的要求。

--additional-allowed-principals <arn>

以逗号分隔的额外允许主体 ARN 列表,添加到托管的 control plane 的 VPC 端点服务中,以便自动接受额外的 VPC 端点连接请求。

--cluster-name <cluster_name>

必需。集群的名称。与 create cluster 命令一同使用时,此参数用于设置集群名称,并最多可保存 54 个字符。此参数的值在您的机构中必须是唯一的。

--compute-machine-type <instance_type>

集群中计算节点的实例类型。这决定了分配给每个计算节点的内存和 vCPU 数量。有关有效实例类型的更多信息,请参阅 ROSA 服务定义中的 AWS 实例类型

--controlplane-iam-role <arn>

附加到 control plane 实例的 IAM 角色的 ARN。

--create-cluster-admin

可选。作为集群创建的一部分,为集群创建本地管理员用户(cluster-admin)。这会为 cluster-admin 用户自动配置 htpasswd 身份提供程序。(可选)使用 -cluster-admin -user 和--cluster-admin -password 选项指定管理员用户的用户名和密码。省略这些选项会自动生成凭据,并将其值显示为终端输出。

--cluster-admin-user

可选。指定与- create-cluster-admin 选项一起使用的 集群管理员用户的用户名。

--cluster-admin-password

可选。指定与- create-cluster-admin 选项一起使用时创建的集群管理员用户的密码。

--disable-scp-checks

指明在尝试安装集群时是否禁用了云权限检查。

--dry-run

模拟创建集群。

--domain-prefix

可选:当与 create cluster 命令一同使用时,此参数会在 If openshiftapps.com 上为集群设置子域。此参数的值在您的机构中必须是唯一的,它不能超过 15 个字符,且在集群创建后无法更改。如果没有提供该参数,则会创建一个自动生成的值,它依赖于集群名称的长度。如果集群名称小于或等于 15 个字符,该名称用于域前缀。如果集群名称超过 15 个字符,则域前缀会随机生成给 15 个字符的字符串。

--ec2-metadata-http-tokens string

为 EC2 实例配置 IMDSv2。有效值为 可选 (默认)或 必需

--enable-autoscaling

启用计算节点自动扩展。默认情况下,自动缩放设置为 2 个节点。要设置非默认节点限值,请将此参数与 --min-replicas--max-replicas 参数搭配使用。

--etcd-encryption

在 Red Hat OpenShift Service on AWS (classical architecture)集群上启用 ETCD 键值加密。

--etcd-encryption-kms-arn

使用在 AWS 密钥管理服务中管理的客户管理的密钥启用 ETCD 存储加密。

--host-prefix <subnet>

分配给每个节点的子网前缀长度,作为整数。例如,如果主机前缀设置为 23,则每个节点从给定的 CIDR 中分配一个 /23 子网。

--machine-cidr <address_block>

ROSA 在安装集群时使用的 IP 地址块(ipNet),例如 10.0.0.0/16

重要

OVN-Kubernetes 是 ROSA 4.11 及之后的版本中的默认网络供应商,在内部使用 100.64.0.0/16 IP 地址范围。如果您的集群使用 OVN-Kubernetes,请不要在集群中的任何 CIDR 定义中包含 100.64.0.0/16 IP 地址范围。

--max-replicas <number_of_nodes>

指定启用自动扩展时的最大计算节点数量。默认: 2

--min-replicas <number_of_nodes>

指定启用自动扩展时的最小计算节点数量。默认: 2

--multi-az

部署到多个数据中心。

--no-cni

创建没有 Container Network Interface (CNI)插件的集群。然后,用户可以获取自己的 CNI 插件,并在集群创建后安装它。

--operator-roles-prefix <string>

用于 OpenShift 安装程序所需 Operator 使用的所有 IAM 角色的前缀。如果没有指定前缀,则会自动生成前缀。

--pod-cidr <address_block>

从中分配 Pod IP 地址的 IP 地址块(ipNet),例如 10.128.0.0/14

重要

OVN-Kubernetes 是 ROSA 4.11 及之后的版本中的默认网络供应商,在内部使用 100.64.0.0/16 IP 地址范围。如果您的集群使用 OVN-Kubernetes,请不要在集群中的任何 CIDR 定义中包含 100.64.0.0/16 IP 地址范围。

--private

限制主 API 端点和应用程序路由来直接、专用连接。

--private-link

指定使用 AWS PrivateLink 提供 VPC 和服务间的私有连接。使用 --private-link 时需要 --subnet-ids 参数。

--region <region_name>

worker 池所在的 AWS 区域的名称,如 us-east-1。此参数覆盖 AWS_REGION 环境变量。

--replicas n

每个可用区置备的 worker 节点数量。单区集群至少需要 2 个节点。多区集群至少需要 3 个节点。默认: 2 用于单区集群;用于多区集群的 3

--role-arn <arn>

OpenShift Cluster Manager 用来创建集群的安装程序角色的 ARN。如果您还没有创建帐户角色,则需要此项。

--service-cidr <address_block>

服务的 IP 地址块(ipNet),如 172.30.0.0/16

重要

OVN-Kubernetes 是 ROSA 4.11 及之后的版本中的默认网络供应商,在内部使用 100.64.0.0/16 IP 地址范围。如果您的集群使用 OVN-Kubernetes,请不要在集群中的任何 CIDR 定义中包含 100.64.0.0/16 IP 地址范围。

--sts | --non-sts

指定是否使用 AWS 安全令牌服务(STS)或 IAM 凭证(非STS)来部署集群。

--subnet-ids <aws_subnet_id>

安装集群时使用的 AWS 子网 ID,如 subnet-01abc234d5678ef9a。子网 ID 必须与一个私有子网 ID 和每个可用区一个公共子网 ID 进行对。子网以逗号分隔,如 --subnet-ids=subnet-1,subnet-2。保留为安装程序置备的子网 ID 的值为空。

使用 --private-link 时,需要 --subnet-ids 参数,并且每个区只允许一个私有子网。

--support-role-arn string

Red Hat Site Reliability engineerss (SRE)使用的角色 ARN,以启用对集群帐户的访问提供支持。

--tags

在 AWS 中由 Red Hat OpenShift Service on AWS 创建的资源中使用的标签。标签可帮助您管理、识别、组织、搜索和过滤 AWS 中的资源。标签用逗号分开,例如:"key value, foo bar"。

重要

Red Hat OpenShift Service on AWS 只支持在集群创建过程中对 Red Hat OpenShift 资源的自定义标签。添加后,无法删除或编辑标签。集群需要添加的标签才能遵守红帽产品服务等级协议(SLA)。这些标签不能被删除。

Red Hat OpenShift Service on AWS 不支持在 ROSA 集群管理的资源外添加额外的标签。当 AWS 资源由 ROSA 集群管理时,这些标签可能会丢失。在这些情况下,您可能需要自定义解决方案或工具来协调标签,并保持它们保持不变。

--version string

用于安装集群或集群资源的 ROSA 版本。对于 集群,使用 X.Y.Z 格式,如 4.17.0。对于 account-role,使用 X.Y 格式,如 4.17

--worker-iam-role string

附加到计算实例的 IAM 角色的 ARN。

表 8.17. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

创建名为 mycluster 的集群。

$ rosa create cluster --cluster-name=mycluster

使用特定 AWS 区域创建集群。

$ rosa create cluster --cluster-name=mycluster --region=us-east-2

创建在默认 worker 机器池上启用自动扩展的集群。

$ rosa create cluster --cluster-name=mycluster -region=us-east-1 --enable-autoscaling --min-replicas=2 --max-replicas=5

8.2.3.5. 创建 external-auth-provider

添加外部身份提供程序,而不是 OpenShift OAuth2 服务器。

重要

您只能在 ROSA 上使用带有 HCP 集群的外部身份验证供应商。

语法

$ rosa create external-auth-provider --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.18. 参数
选项定义

--claim-mapping-groups-claim <string>

必需。描述如何将信息从 ID 令牌转换为集群身份的规则。

--claim-validation-rule <strings>

用于验证令牌声明的规则,以验证用户身份。输入将采用 < claim>:<required_value> 格式。要有多个声明验证规则,您可以通过 来分隔值。例如,< claim>:<required_value>,<claim>:<required_value>

--claim-mapping-username-claim <string>

用于构建集群身份的用户名的声明名称。

--cluster <cluster_name>|<cluster_id>

必需。将添加 IDP 的集群的名称或 ID。

--console-client-id <string>

OpenShift Cluster Manager Web 控制台的 OIDC 客户端的 OIDC 客户端的标识符。

--console-client-secret <string>

与控制台应用程序注册关联的 secret。

--issuer-audiences <strings>

用于检查传入令牌的一组受众。有效令牌必须在其受众声明中至少包含这些值之一。

--issuer-ca-file <string>

对服务器发出请求时使用的 PEM 编码证书文件的路径。

--issuer-url <string>

令牌签发者的服务 URL。

--name <string>

用于引用外部身份验证提供程序的名称。

表 8.19. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集字符串。

例子

将 Microsoft Entra ID 身份提供程序添加到名为 mycluster 的集群。

$ rosa create external-auth-provider --cluster=mycluster --name <provider_name> --issuer-audiences <audience_id> --issuer-url <issuing id> --claim-mapping-username-claim email --claim-mapping-groups-claim groups

8.2.3.6. 创建 idp

添加身份提供程序 (IDP) 以定义用户如何登录到集群。

语法

$ rosa create idp --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.20. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。将添加 IDP 的集群的名称或 ID。

--ca <path_to_file>

在向服务器发出请求时使用的 PEM 编码证书文件的路径,例如 /usr/share/cert.pem

--client-id

注册的应用程序中的客户端 ID (字符串)。

--client-secret

来自注册的应用程序的客户端 secret(字符串)。

--mapping-method

指定在用户登录时如何将新身份(字符串)映射到用户。默认:claim

--name

身份提供程序的名称(字符串)。

--type

身份提供程序的类型(字符串)。选择:github, gitlab, google, ldap, openid

表 8.21. GitHub 参数
选项定义

--hostname

与托管 GitHub Enterprise 实例一起使用的可选域(字符串)。

--organizations

指定用于登录访问的组织。只有至少是一个所列机构(字符串)成员的用户才能登录。

--teams

指定用于登录访问的团队。只有至少属于列出的团队(字符串)的成员的用户才能登录。格式为 <org>/<team>

表 8.22. GitLab 参数
选项定义

--host-url

GitLab 提供程序的主机 URL (字符串)。默认:https://gitlab.com

表 8.23. Google 参数
选项定义

--hosted-domain

将用户限制为 Google Apps 域(字符串)。

表 8.24. LDAP 参数
选项定义

--bind-dn

在搜索阶段要绑定的域名(字符串)。

--bind-password

在搜索阶段要绑定到的密码(字符串)。

--email-attributes

列表(字符串)应用作电子邮件地址的属性。

--id-attributes

列表(字符串)值应用作用户 ID 的属性。默认:dn

--insecure

不使 TLS 连接到服务器。

--name-attributes

列表(字符串)值应用作显示名称的属性。默认:cn

--url

RFC 2255 URL (字符串),用于指定正在使用的 LDAP 搜索参数。

--username-attributes

列表(字符串)值应用作首选用户名的属性。默认: uid

表 8.25. OpenID 参数
选项定义

--email-claims

用作电子邮件地址的声明的列表(字符串)。

--extra-scopes

在授权令牌请求期间,除了 openid 范围外,还列出请求的范围(字符串)。

--issuer-url

OpenID 供应商断言为签发者标识符的 URL (字符串)。它必须使用没有 URL 查询参数或片段的 HTTPS 方案。

--name-claims

用作显示名称的声明的列表(字符串)。

--username-claims

在置备用户时用作首选用户名的声明的列表(字符串)。

--groups-claims

用作组名称的声明的列表(字符串)。

表 8.26. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

将 GitHub 身份提供程序添加到名为 mycluster 的集群。

$ rosa create idp --type=github --cluster=mycluster

按照交互式提示添加身份提供程序。

$ rosa create idp --cluster=mycluster --interactive

8.2.3.7. 创建入口

添加入口端点以启用集群的 API 访问。

语法

$ rosa create ingress --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.27. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需:将添加入口的集群的名称或 ID。

--label-match

ingress 的标签匹配(字符串)。格式必须是用逗号分开的 key=value 对列表。如果没有指定标签,则在两个路由器上都公开所有路由。

--private

将应用程序路由限制为直接、私有连接。

表 8.28. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

将内部入口添加到名为 mycluster 的集群。

$ rosa create ingress --private --cluster=mycluster

将公共入口添加到名为 mycluster 的集群。

$ rosa create ingress --cluster=mycluster

使用路由选择器标签匹配添加 ingress。

$ rosa create ingress --cluster=mycluster --label-match=foo=bar,bar=baz

8.2.3.8. 创建 kubeletconfig

创建自定义 KubeletConfig 对象,以允许自定义机器池中的节点配置。对于 Red Hat OpenShift Service on AWS 集群,这些设置是集群范围的。对于带有托管的 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),每个机器池可以以不同的方式配置。

语法

$ rosa create kubeletconfig --cluster=<cluster_name|cluster_id> --name=<kubeletconfig_name> --pod-pids-limit=<number> [flags]

表 8.29. 标记
选项定义

--pod-pids-limit <number>

必需。与 KubeletConfig 对象关联的机器池中每个节点的最大 PID 数量。

-c, --cluster <cluster_name>|<cluster_id>

必需。要创建 KubeletConfig 对象的集群的名称或 ID。

--name

带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA)是必需的。可选 for Red Hat OpenShift Service on AWS,因为集群只有一个 KubeletConfig。指定 KubeletConfig 对象的名称。

-i,--interactive

启用交互模式。

-h, --help

显示此命令的帮助信息。

有关为集群设置 PID 限制的更多信息,请参阅配置 PID 限制

8.2.3.9. 创建 machinepool

将机器池添加到现有集群。

语法

$ rosa create machinepool --cluster=<cluster_name> | <cluster_id> --replicas=<number> --name=<machinepool_name> [arguments]

表 8.30. 参数
选项定义

--additional-security-group-ids <sec_group_id>

此机器池要使用的一个或多个额外安全组的标识符。有关额外安全组的更多信息,请参阅附加资源安全组 的要求。

--cluster <cluster_name>|<cluster_id>

必需:将添加机器池的集群的名称或 ID。

--disk-size

在 Gib 或 TiB 中设置机器池的磁盘大小。默认值为 300 GiB。

对于 ROSA (经典架构)集群版本 4.13 或更早版本,最小磁盘大小为 128 GiB,最大为 1 TiB。对于集群版本 4.14 及更新的版本,最小值为 128 GiB,最大值为 16 TiB。

对于带有 HCP 集群的 ROSA,最小磁盘大小为 75 GiB,最大值为 16,384 GiB。

--enable-autoscaling

启用或禁用计算节点的自动扩展。若要启用自动扩展,请使用此参数及 --min-replicas--max-replicas 参数。要禁用自动扩展,请使用带有 --replicas 参数的 --enable-autoscaling=false

--instance-type

应该使用的实例类型(字符串)。默认值: m5.xlarge

--kubelet-configs <kubeletconfig_name>

对于带有托管的 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),任何 KubeletConfig 对象的名称,应用到机器池中的节点。

--labels

机器池的标签(字符串)。格式必须是用逗号分开的 key=value 对列表。此列表会持续覆盖对节点标签所做的任何修改。

--max-replicas

指定启用自动扩展时的最大计算节点数量。

--min-replicas

指定启用自动扩展时的最小计算节点数量。

--max-surge

对于带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),max-surge 参数定义在启用自动扩展时可在自动扩展过程中置备的新节点数量,超过机器池的副本数(如使用- replicas 参数配置),或者由自动扩展器决定。这可以是绝对数字(如 2),也可以是机器池大小的百分比(如 20%),但必须使用与 max-unavailable 参数相同的单位。

默认值为 1,表示升级过程中机器池中最大节点数为 1 加上机器池所需的副本数。在这种情况下,可以在现有节点不可用时置备一个超额的节点。在升级过程中可以同时置备的节点数是 max-surge 加上 max-unavailable

--max-unavailable

对于带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),max-unavailable 参数定义在升级过程中可在机器池中不可用的节点数量。这可以是绝对数字(例如 2),也可以是机器池中当前副本数的百分比(例如,20%),但必须使用与 max-surge 参数相同的单位。

默认值为 0, 这意味着在置备新节点前不会删除过时的节点。这个值的有效范围是从 0 到当前机器池大小,或从 0%100%。在升级过程中可以同时升级的节点数量为 max-surge 加上 max-unavailable

--name

必需:机器池的名称(字符串)。

--replicas

没有配置自动扩展时需要。此机器池的机器数量(整数)。

--tags

将用户定义的标签应用到 AWS 中 ROSA 创建的所有资源。标签用逗号分开,例如: 'key value, foo bar'

--taints

机器池的污点。此字符串值应该以逗号分隔的 key=value:ScheduleType 列表的形式。此列表将永久覆盖对节点污点所做的任何修改。

表 8.31. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

交互式将机器池添加到名为 mycluster 的集群。

$ rosa create machinepool --cluster=mycluster --interactive

将名为 mp-1 的机器池添加到启用了自动扩展的集群。

$ rosa create machinepool --cluster=mycluster --enable-autoscaling --min-replicas=2 --max-replicas=5 --name=mp-1

添加名为 mp-1 的机器池,其 3 个副本为 m5.xlarge 到一个集群。

$ rosa create machinepool --cluster=mycluster --replicas=3 --instance-type=m5.xlarge --name=mp-1

将机器池(mp-1)添加到带有托管的 control plane (HCP)集群的 Red Hat OpenShift Service (ROSA)中,配置 6 个副本和以下升级行为:

  • 在升级过程中最多可以置备 2 个超额节点。
  • 确保在升级过程中没有超过 3 个节点。
$ rosa create machinepool --cluster=mycluster --replicas=6 --name=mp-1 --max-surge=2 --max-unavailable=3

在集群中添加带有标签的机器池。

$ rosa create machinepool --cluster=mycluster --replicas=2 --instance-type=r5.2xlarge --labels=foo=bar,bar=baz --name=mp-1

添加带有标签到集群的机器池。

$ rosa create machinepool --cluster=mycluster --replicas=2 --instance-type=r5.2xlarge --tags='foo bar,bar baz' --name=mp-1

8.2.3.10. 创建网络

创建网络,以通过 AWS CloudFormation 模板创建任何必要的 AWS 资源。此帮助程序命令旨在帮助创建和配置 VPC 以用于 HCP 的 ROSA。此命令还支持零个出口集群。

重要

运行此命令会在 AWS 帐户中创建资源。

注意

对于自定义或高级配置,强烈建议您直接使用 aws cloudformation 命令或创建带有所需配置的新自定义模板。

语法

$ rosa create network [flags]

表 8.32. 参数
选项定义

<template-name>

允许您使用自定义模板。模板必须位于模板文件夹中,构建为 templates/<template-name>/cloudformation.yaml。如果没有提供模板名称,命令将使用默认模板。对于二进制构建,必须在下载后手动引用此模板目录。

默认模板 YAML

AWSTemplateFormatVersion: '2010-09-09'
Description: CloudFormation template to create a ROSA Quickstart default VPC.
  This CloudFormation template may not work with rosa CLI versions later than 1.2.47.
  Please ensure that you are using the compatible CLI version before deploying this template.

Parameters:
  AvailabilityZoneCount:
    Type: Number
    Description: "Number of Availability Zones to use"
    Default: 1
    MinValue: 1
    MaxValue: 3
  Region:
    Type: String
    Description: "AWS Region"
    Default: "us-west-2"
  Name:
    Type: String
    Description: "Name prefix for resources"
  VpcCidr:
    Type: String
    Description: CIDR block for the VPC
    Default: '10.0.0.0/16'

Conditions:
  HasAZ1: !Equals [!Ref AvailabilityZoneCount, 1]
  HasAZ2: !Equals [!Ref AvailabilityZoneCount, 2]
  HasAZ3: !Equals [!Ref AvailabilityZoneCount, 3]

  One:
    Fn::Or:
      - Condition: HasAZ1
      - Condition: HasAZ2
      - Condition: HasAZ3

  Two:
    Fn::Or:
      - Condition: HasAZ3
      - Condition: HasAZ2

Resources:
  VPC:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: !Ref VpcCidr
      EnableDnsSupport: true
      EnableDnsHostnames: true
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  S3VPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcId: !Ref VPC
      ServiceName: !Sub "com.amazonaws.${Region}.s3"
      VpcEndpointType: Gateway
      RouteTableIds:
        - !Ref PublicRouteTable
        - !Ref PrivateRouteTable

  SubnetPublic1:
    Condition: One
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [0, !Cidr [!Ref VpcCidr, 6, 8]]
      AvailabilityZone: !Select [0, !GetAZs '']
      MapPublicIpOnLaunch: true
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Public-Subnet-1"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'kubernetes.io/role/elb'
          Value: '1'

  SubnetPrivate1:
    Condition: One
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [1, !Cidr [!Ref VpcCidr, 6, 8]]
      AvailabilityZone: !Select [0, !GetAZs '']
      MapPublicIpOnLaunch: false
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Private-Subnet-1"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'kubernetes.io/role/internal-elb'
          Value: '1'

  SubnetPublic2:
    Condition: Two
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [2, !Cidr [!Ref VpcCidr, 6, 8]]
      AvailabilityZone: !Select [1, !GetAZs '']
      MapPublicIpOnLaunch: true
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Public-Subnet-2"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'kubernetes.io/role/elb'
          Value: '1'

  SubnetPrivate2:
    Condition: Two
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [3, !Cidr [!Ref VpcCidr, 6, 8]]
      AvailabilityZone: !Select [1, !GetAZs '']
      MapPublicIpOnLaunch: false
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Private-Subnet-2"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'kubernetes.io/role/internal-elb'
          Value: '1'

  SubnetPublic3:
    Condition: HasAZ3
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [4, !Cidr [!Ref VpcCidr, 6, 8]]
      AvailabilityZone: !Select [2, !GetAZs '']
      MapPublicIpOnLaunch: true
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Public-Subnet-3"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'kubernetes.io/role/elb'
          Value: '1'

  SubnetPrivate3:
    Condition: HasAZ3
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [5, !Cidr [!Ref VpcCidr, 6, 8]]
      AvailabilityZone: !Select [2, !GetAZs '']
      MapPublicIpOnLaunch: false
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Private-Subnet-3"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'kubernetes.io/role/internal-elb'
          Value: '1'

  InternetGateway:
    Type: AWS::EC2::InternetGateway
    Properties:
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  AttachGateway:
    Type: AWS::EC2::VPCGatewayAttachment
    Properties:
      VpcId: !Ref VPC
      InternetGatewayId: !Ref InternetGateway

  ElasticIP1:
    Type: AWS::EC2::EIP
    Properties:
      Domain: vpc
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  ElasticIP2:
    Type: AWS::EC2::EIP
    Properties:
      Domain: vpc
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  ElasticIP3:
    Condition: HasAZ3
    Type: AWS::EC2::EIP
    Properties:
      Domain: vpc
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  NATGateway1:
    Condition: One
    Type: 'AWS::EC2::NatGateway'
    Properties:
      AllocationId: !GetAtt ElasticIP1.AllocationId
      SubnetId: !Ref SubnetPublic1
      Tags:
        - Key: Name
          Value: !Sub "${Name}-NAT-1"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  NATGateway2:
    Condition: Two
    Type: 'AWS::EC2::NatGateway'
    Properties:
      AllocationId: !GetAtt ElasticIP2.AllocationId
      SubnetId: !Ref SubnetPublic2
      Tags:
        - Key: Name
          Value: !Sub "${Name}-NAT-2"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  NATGateway3:
    Condition: HasAZ3
    Type: 'AWS::EC2::NatGateway'
    Properties:
      AllocationId: !GetAtt ElasticIP3.AllocationId
      SubnetId: !Ref SubnetPublic3
      Tags:
        - Key: Name
          Value: !Sub "${Name}-NAT-3"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  PublicRouteTable:
    Type: AWS::EC2::RouteTable
    Properties:
      VpcId: !Ref VPC
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  PublicRoute:
    Type: AWS::EC2::Route
    DependsOn: AttachGateway
    Properties:
      RouteTableId: !Ref PublicRouteTable
      DestinationCidrBlock: 0.0.0.0/0
      GatewayId: !Ref InternetGateway

  PrivateRouteTable:
    Type: AWS::EC2::RouteTable
    Properties:
      VpcId: !Ref VPC
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Private-Route-Table"
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'
        - Key: 'service'
          Value: 'ROSA'

  PrivateRoute:
    Type: AWS::EC2::Route
    Properties:
      RouteTableId: !Ref PrivateRouteTable
      DestinationCidrBlock: 0.0.0.0/0
      NatGatewayId: !If
        - One
        - !Ref NATGateway1
        - !If
          - Two
          - !Ref NATGateway2
          - !If
            - HasAZ3
            - !Ref NATGateway3
            - !Ref "AWS::NoValue"

  PublicSubnetRouteTableAssociation1:
    Condition: One
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPublic1
      RouteTableId: !Ref PublicRouteTable

  PublicSubnetRouteTableAssociation2:
    Condition: Two
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPublic2
      RouteTableId: !Ref PublicRouteTable

  PublicSubnetRouteTableAssociation3:
    Condition: HasAZ3
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPublic3
      RouteTableId: !Ref PublicRouteTable

  PrivateSubnetRouteTableAssociation1:
    Condition: One
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPrivate1
      RouteTableId: !Ref PrivateRouteTable

  PrivateSubnetRouteTableAssociation2:
    Condition: Two
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPrivate2
      RouteTableId: !Ref PrivateRouteTable

  PrivateSubnetRouteTableAssociation3:
    Condition: HasAZ3
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPrivate3
      RouteTableId: !Ref PrivateRouteTable

  SecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: "Authorize inbound VPC traffic"
      VpcId: !Ref VPC
      SecurityGroupIngress:
        - IpProtocol: -1
          FromPort: 0
          ToPort: 0
          CidrIp: "10.0.0.0/16"
      SecurityGroupEgress:
        - IpProtocol: -1
          FromPort: 0
          ToPort: 0
          CidrIp: 0.0.0.0/0
      Tags:
        - Key: Name
          Value: !Ref Name
        - Key: 'service'
          Value: 'ROSA'
        - Key: 'rosa_managed_policies'
          Value: 'true'
        - Key: 'rosa_hcp_policies'
          Value: 'true'

  EC2VPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcId: !Ref VPC
      ServiceName: !Sub "com.amazonaws.${Region}.ec2"
      PrivateDnsEnabled: true
      VpcEndpointType: Interface
      SubnetIds:
        - !If [One, !Ref SubnetPrivate1, !Ref "AWS::NoValue"]
        - !If [Two, !Ref SubnetPrivate2, !Ref "AWS::NoValue"]
        - !If [HasAZ3, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
      SecurityGroupIds:
        - !Ref SecurityGroup

  KMSVPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcId: !Ref VPC
      ServiceName: !Sub "com.amazonaws.${Region}.kms"
      PrivateDnsEnabled: true
      VpcEndpointType: Interface
      SubnetIds:
        - !If [One, !Ref SubnetPrivate1, !Ref "AWS::NoValue"]
        - !If [Two, !Ref SubnetPrivate2, !Ref "AWS::NoValue"]
        - !If [HasAZ3, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
      SecurityGroupIds:
        - !Ref SecurityGroup

  STSVPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcId: !Ref VPC
      ServiceName: !Sub "com.amazonaws.${Region}.sts"
      PrivateDnsEnabled: true
      VpcEndpointType: Interface
      SubnetIds:
        - !If [One, !Ref SubnetPrivate1, !Ref "AWS::NoValue"]
        - !If [Two, !Ref SubnetPrivate2, !Ref "AWS::NoValue"]
        - !If [HasAZ3, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
      SecurityGroupIds:
        - !Ref SecurityGroup

  EcrApiVPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcId: !Ref VPC
      ServiceName: !Sub "com.amazonaws.${Region}.ecr.api"
      PrivateDnsEnabled: true
      VpcEndpointType: Interface
      SubnetIds:
        - !If [One, !Ref SubnetPrivate1, !Ref "AWS::NoValue"]
        - !If [Two, !Ref SubnetPrivate2, !Ref "AWS::NoValue"]
        - !If [HasAZ3, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
      SecurityGroupIds:
        - !Ref SecurityGroup

  EcrDkrVPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcId: !Ref VPC
      ServiceName: !Sub "com.amazonaws.${Region}.ecr.dkr"
      PrivateDnsEnabled: true
      VpcEndpointType: Interface
      SubnetIds:
        - !If [One, !Ref SubnetPrivate1, !Ref "AWS::NoValue"]
        - !If [Two, !Ref SubnetPrivate2, !Ref "AWS::NoValue"]
        - !If [HasAZ3, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
      SecurityGroupIds:
        - !Ref SecurityGroup

Outputs:
  VPCId:
    Description: "VPC Id"
    Value: !Ref VPC
    Export:
      Name: !Sub "${Name}-VPCId"

  VPCEndpointId:
    Description: The ID of the VPC Endpoint
    Value: !Ref S3VPCEndpoint
    Export:
      Name: !Sub "${Name}-VPCEndpointId"

  PublicSubnets:
    Description: "Public Subnet Ids"
    Value: !Join [",", [!If [One, !Ref SubnetPublic1, !Ref "AWS::NoValue"], !If [Two, !Ref SubnetPublic2, !Ref "AWS::NoValue"], !If [HasAZ3, !Ref SubnetPublic3, !Ref "AWS::NoValue"]]]
    Export:
      Name: !Sub "${Name}-PublicSubnets"

  PrivateSubnets:
    Description: "Private Subnet Ids"
    Value: !Join [",", [!If [One, !Ref SubnetPrivate1, !Ref "AWS::NoValue"], !If [Two, !Ref SubnetPrivate2, !Ref "AWS::NoValue"], !If [HasAZ3, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]]]
    Export:
      Name: !Sub "${Name}-PrivateSubnets"

  EIP1AllocationId:
    Description: Allocation ID for ElasticIP1
    Value: !GetAtt ElasticIP1.AllocationId
    Export:
      Name: !Sub "${Name}-EIP1-AllocationId"

  EIP2AllocationId:
    Description: Allocation ID for ElasticIP2
    Value: !GetAtt ElasticIP2.AllocationId
    Export:
      Name: !Sub "${Name}-EIP2-AllocationId"

  EIP3AllocationId:
    Condition: HasAZ3
    Description: Allocation ID for ElasticIP3
    Value: !GetAtt ElasticIP3.AllocationId
    Export:
      Name: !Sub "${Name}-EIP3-AllocationId"

  NatGatewayId:
    Description: The NAT Gateway IDs
    Value: !Join [",", [!If [One, !Ref NATGateway1, !Ref "AWS::NoValue"], !If [Two, !Ref NATGateway2, !Ref "AWS::NoValue"], !If [HasAZ3, !Ref NATGateway3, !Ref "AWS::NoValue"]]]
    Export:
      Name: !Sub "${Name}-NatGatewayId"

  InternetGatewayId:
    Description: The ID of the Internet Gateway
    Value: !Ref InternetGateway
    Export:
      Name: !Sub "${Name}-InternetGatewayId"

  PublicRouteTableId:
    Description: The ID of the public route table
    Value: !Ref PublicRouteTable
    Export:
      Name: !Sub "${Name}-PublicRouteTableId"

  PrivateRouteTableId:
    Description: The ID of the private route table
    Value: !Ref PrivateRouteTable
    Export:
      Name: !Sub "${Name}-PrivateRouteTableId"

  EC2VPCEndpointId:
    Description: The ID of the EC2 VPC Endpoint
    Value: !Ref EC2VPCEndpoint
    Export:
      Name: !Sub "${Name}-EC2VPCEndpointId"

  KMSVPCEndpointId:
    Description: The ID of the KMS VPC Endpoint
    Value: !Ref KMSVPCEndpoint
    Export:
      Name: !Sub "${Name}-KMSVPCEndpointId"

  STSVPCEndpointId:
    Description: The ID of the STS VPC Endpoint
    Value: !Ref STSVPCEndpoint
    Export:
      Name: !Sub "${Name}-STSVPCEndpointId"

  EcrApiVPCEndpointId:
    Description: The ID of the ECR API VPC Endpoint
    Value: !Ref EcrApiVPCEndpoint
    Export:
      Name: !Sub "${Name}-EcrApiVPCEndpointId"

  EcrDkrVPCEndpointId:
    Description: The ID of the ECR DKR VPC Endpoint
    Value: !Ref EcrDkrVPCEndpoint
    Export:
      Name: !Sub "${Name}-EcrDkrVPCEndpointId"

表 8.33. 标记
选项定义

--template-dir

允许您指定模板目录的路径。覆盖 OCM_TEMPLATE_DIR 环境变量。如果未在模板目录中运行命令,则需要此项。

--param name

定义网络的名称。使用自定义模板文件时所需的参数。

--param Region

定义网络的区域。使用自定义模板文件时所需的参数。

--param <various>

可用的参数取决于模板。当模板目录中查找可用参数时,请使用- help

--mode=manual

提供 AWS 命令以创建网络堆栈。

示例

使用常规参数和标志创建基本网络。

$ rosa create network rosa-quickstart-default-vpc --param Tags=key1=value1,key2=value2 --param Name=example-stack --param Region=us-west-2

8.2.3.11. 创建 ocm-role

为集群创建所需的 ocm-role 资源。

语法

$ rosa create ocm-role [flags]

表 8.34. 标记
选项定义

--admin

为角色启用管理功能。

--debug

启用调试模式。

-i,--interactive

启用交互模式。

-m, --mode string

如何执行操作。有效选项有:

  • auto: 使用当前 AWS 帐户自动应用资源更改
  • 手动 :修改 AWS 资源所需的命令将输出手动运行

--path string

OCM 角色和策略的 ARN 路径。

--permissions-boundary string

用于为 OCM 角色设置权限边界的策略 ARN。

--prefix string

所有生成的 AWS 资源的用户定义前缀。默认值为 ManagedOpenShift

--profile string

使用您的凭证文件中的特定 AWS 配置集。

-y,--yes

自动回答 yes 以确认操作。

有关使用 rosa create ocm-role 命令创建 OCM 角色的更多信息,请参阅 帐户范围的 IAM 角色和策略引用

8.2.3.12. 创建 user-role

为集群创建所需的 user-role 资源。

语法

$ rosa create user-role [flags]

表 8.35. 标记
选项定义

--debug

启用调试模式。

-i,--interactive

启用交互模式。

-m, --mode string

如何执行操作。有效选项有:

  • auto: 使用当前 AWS 帐户自动应用资源更改
  • 手动 :修改 AWS 资源所需的命令将输出手动运行

--path string

用户角色和策略的 ARN 路径。

--permissions-boundary string

用于为用户角色设置权限边界的策略 ARN。

--prefix string

所有生成的 AWS 资源的用户定义前缀。默认为 ManagedOpenShift

--profile string

使用您的凭证文件中的特定 AWS 配置集。

-y,--yes

自动回答 yes 以确认操作。

有关使用 rosa create user-role 命令创建的用户角色的更多信息,请参阅了解 AWS 帐户关联

8.2.4. 其他资源

8.2.5. 编辑对象

本节论述了集群和资源的 edit 命令。

8.2.5.1. 编辑集群

允许对现有集群进行编辑。

语法

$ rosa edit cluster --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.36. 参数
选项定义

--additional-allowed-principals <arn>

以逗号分隔的额外允许主体 ARN 列表,添加到 Hosted Control Plane 的 VPC 端点服务中,以便自动接受额外的 VPC 端点连接请求。

--cluster

必需:要编辑的集群的名称或 ID (字符串)。

--private

限制主 API 端点直接和专用连接。

--enable-delete-protection=true

启用删除保护功能。

--enable-delete-protection=false

禁用删除保护功能。

表 8.37. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

编辑名为 mycluster 的集群使其私有。

$ rosa edit cluster --cluster=mycluster --private

在名为 mycluster 的集群中以交互方式编辑所有集群选项。

$ rosa edit cluster --cluster=mycluster --interactive

8.2.5.2. edit ingress

编辑集群的默认应用程序路由器。

注意

有关编辑非默认应用程序路由器的详情,请参考 其他资源

语法

$ rosa edit ingress --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.38. 参数
选项定义

--cluster

必需:将添加入口的集群的名称或 ID (字符串)。

--cluster-routes-hostname

OAuth、控制台和下载的组件路由主机名。

--cluster-routes-tls-secret-ref

用于 OAuth、控制台和下载的组件路由 TLS secret 引用。

--excluded-namespaces

ingress 排除的命名空间。格式是一个以逗号分隔的列表 值1,value2…​。如果没有指定值,则会公开所有命名空间。

--label-match

ingress 的标签匹配(字符串)。格式必须是用逗号分开的 key=value 对列表。如果没有指定标签,则在两个路由器上都公开所有路由。

--lb-type

Load Balancer 类型。选项是 经典的 , nlb

--namespace-ownership-policy

ingress 的命名空间所有权策略。选项为 StrictInterNamespaceAllowed。默认为 Strict

--private

将应用程序路由限制为直接、私有连接。

--route-selector

ingress 的路由选择器。format 是以逗号分隔的 key=value 列表。如果没有指定标签,则在两个路由器上都公开所有路由。对于旧的入口支持,它们会包括标签,否则它们被视为排除标签。

--wildcard-policy

ingress 的通配符策略。选项是 WildcardsDisallowedWildcardsAllowed。默认为 WildcardsDisallowed

表 8.39. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

在名为 mycluster 的集群上,创建一个 ID 为 a1b2 的额外入口作为私有连接。

$ rosa edit ingress --private --cluster=mycluster a1b2

使用名为 mycluster 的集群上的 ID a1b2 更新额外入口的路由器选择器。

$ rosa edit ingress --label-match=foo=bar --cluster=mycluster a1b2

使用名为 mycluster 的集群中的子域标识符 应用程序 更新默认入口。

$ rosa edit ingress --private=false --cluster=mycluster apps

更新 apps2 入口的负载均衡器类型。

$ rosa edit ingress --lb-type=nlb --cluster=mycluster apps2

8.2.5.3. 编辑 kubeletconfig

编辑机器池中的自定义 KubeletConfig 对象。

语法

$ rosa edit kubeletconfig --cluster=<cluster_name|cluster_id> --name=<kubeletconfig_name> --pod-pids-limit=<number> [flags]

表 8.40. 标记
选项定义

-c, --cluster <cluster_name>|<cluster_id>

必需。编辑 KubeletConfig 对象的集群的名称或 ID。

-i,--interactive

启用交互模式。

--pod-pids-limit <number>

必需。与 KubeletConfig 对象关联的机器池中每个节点的最大 PID 数量。

--name

带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA)是必需的。可选 for Red Hat OpenShift Service on AWS,因为集群只有一个 KubeletConfig。指定 KubeletConfig 对象的名称。

-h, --help

显示此命令的帮助信息。

有关为集群设置 PID 限制的更多信息,请参阅配置 PID 限制

8.2.5.4. edit machinepool

编辑集群中的机器池。

语法

$ rosa edit machinepool --cluster=<cluster_name_or_id> <machinepool_name> [arguments]

表 8.41. 参数
选项定义

--cluster

必需:要编辑额外机器池的集群的名称或 ID (字符串)。

--enable-autoscaling

启用或禁用计算节点的自动扩展。若要启用自动扩展,请使用此参数及 --min-replicas--max-replicas 参数。要禁用自动扩展,请使用带有 --replicas 参数的 --enable-autoscaling=false

--labels

机器池的标签(字符串)。格式必须是用逗号分开的 key=value 对列表。编辑此值只会影响机器池的新创建的节点,这通过增加节点号创建,而不影响现有节点。此列表会持续覆盖对节点标签所做的任何修改。

--kubelet-configs <kubeletconfig_name>

对于带有托管的 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),任何 KubeletConfig 对象的名称,应用到机器池中的节点。

--max-replicas

指定启用自动扩展时的最大计算节点数量。

--min-replicas

指定启用自动扩展时的最小计算节点数量。

--max-surge

对于带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),max-surge 参数定义在启用自动扩展时可在自动扩展过程中置备的新节点数量,超过机器池的副本数(如使用- replicas 参数配置),或者由自动扩展器决定。这可以是绝对数字(如 2),也可以是机器池大小的百分比(如 20%),但必须使用与 max-unavailable 参数相同的单位。

默认值为 1,表示升级过程中机器池中最大节点数为 1 加上机器池所需的副本数。在这种情况下,可以在现有节点不可用时置备一个超额的节点。在升级过程中可以同时置备的节点数是 max-surge 加上 max-unavailable

--max-unavailable

对于带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA),max-unavailable 参数定义在升级过程中可在机器池中不可用的节点数量。这可以是绝对数字(例如 2),也可以是机器池中当前副本数的百分比(例如,20%),但必须使用与 max-surge 参数相同的单位。

默认值为 0, 这意味着在置备新节点前不会删除过时的节点。这个值的有效范围是从 0 到当前机器池大小,或从 0%100%。在升级过程中可以同时升级的节点数量为 max-surge 加上 max-unavailable

--node-drain-grace-period

指定升级或替换机器池时的节点排空宽限期。(仅适用于 HCP 集群的 ROSA。)

--replicas

没有配置自动扩展时需要。此机器池的机器数量(整数)。

--taints

机器池的污点。此字符串值应该以逗号分隔的 key=value:ScheduleType 列表的形式。编辑此值只会影响机器池的新创建的节点,这通过增加节点号创建,而不影响现有节点。此列表会永久覆盖对节点污点所做的任何修改。

表 8.42. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

例子

在名为 mycluster 的集群上,设置一个名为 mp1 的机器池上的 4 个副本。

$ rosa edit machinepool --cluster=mycluster --replicas=4 mp1

在名为 mycluster 的集群上,启用名为 mp1 的机器池上的自动扩展。

$ rosa edit machinepool --cluster=mycluster --enable-autoscaling --min-replicas=3 --max-replicas=5 mp1

在名为 mycluster 的集群上,禁用名为 mp1 的机器池上的自动扩展。

$ rosa edit machinepool --cluster=mycluster  --enable-autoscaling=false --replicas=3 mp1

在名为 mycluster 的集群上,修改名为 mp1 的机器池上的自动扩展范围。

$ rosa edit machinepool --max-replicas=9 --cluster=mycluster mp1

在带有托管的 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA)上,编辑 mp1 机器池,以在升级过程中添加以下行为:

  • 在升级过程中最多可以置备 2 个超额节点。
  • 确保在升级过程中没有超过 3 个节点。
$ rosa edit machinepool --cluster=mycluster mp1 --max-surge=2 --max-unavailable=3

KubeletConfig 对象与带有 HCP 集群的 ROSA 上的现有 high-pid-pool 机器池关联。

$ rosa edit machinepool -c mycluster --kubelet-configs=set-high-pids high-pid-pool

8.2.6. 其他资源

  • 有关编辑非默认应用程序路由器的信息,请参阅配置 Ingress Controller

8.2.7. 删除对象

本节论述了集群和资源的 delete 命令。

8.2.7.1. 删除管理员

从指定的集群删除集群管理员。

语法

$ rosa delete admin --cluster=<cluster_name> | <cluster_id>

表 8.43. 参数
选项定义

--cluster

必需:要添加到身份提供程序(IDP)的集群名称或 ID (字符串)。

表 8.44. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

从名为 mycluster 的集群中删除集群管理员。

$ rosa delete admin --cluster=mycluster

8.2.7.2. 删除集群

删除集群。

语法

$ rosa delete cluster --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.45. 参数
选项定义

--cluster

必需:要删除的集群的名称或 ID (字符串)。

--watch

监视集群卸载日志。

--best-effort

跳过集群破坏性链中的步骤,这些链中已知会导致集群删除过程失败。您应该谨慎使用这个选项,建议您在使用 --best-effort 后手动检查 AWS 帐户是否有可能保留的任何资源。

表 8.46. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

例子

删除名为 mycluster 的集群。

$ rosa delete cluster --cluster=mycluster

8.2.7.3. 删除 external-auth-provider

从集群中删除外部身份验证供应商。

语法

$ rosa delete external-auth-provider <name_of_external_auth_provider> --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.47. 参数
选项定义

--cluster

必需。集群的名称或 ID 字符串将从外部身份验证供应商从中删除。

表 8.48. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集字符串。

--yes

自动回答 yes 以确认操作。

示例

从名为 mycluster 的集群中删除名为 exauth-1 的身份供应商。

$ rosa delete external-auth-provider exauth-1 --cluster=mycluster

8.2.7.4. 删除 idp

从集群中删除特定的身份提供程序 (IDP)。

语法

$ rosa delete idp --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.49. 参数
选项定义

--cluster

必需:删除 IDP 的集群的名称或 ID (字符串)。

表 8.50. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

示例

从名为 mycluster 的集群中删除名为 github 的身份供应商。

$ rosa delete idp github --cluster=mycluster

8.2.7.5. 删除入口

从集群中删除非默认应用程序路由器(入口)。

语法

$ rosa delete ingress --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.51. 参数
选项定义

--cluster

必需:要删除入口的集群的名称或 ID (字符串)。

表 8.52. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

例子

从名为 mycluster 的集群中删除 ID 为 a1b2 的 ingress。

$ rosa delete ingress --cluster=mycluster a1b2

从名为 mycluster 的集群中删除子域名称 apps2 的二级入口。

$ rosa delete ingress --cluster=mycluster apps2

8.2.7.6. 删除 kubeletconfig

从集群中删除自定义 KubeletConfig 对象。

语法

$ rosa delete kubeletconfig --cluster=<cluster_name|cluster_id> [flags]

表 8.53. 标记
选项定义

-c, --cluster <cluster_name>|<cluster_id>

必需。要删除 KubeletConfig 对象的集群的名称或 ID。

-h, --help

显示此命令的帮助信息。

--name

带有托管 control plane (HCP)集群的 Red Hat OpenShift Service on AWS (ROSA)是必需的。可选 for Red Hat OpenShift Service on AWS,因为集群只有一个 KubeletConfig。指定 KubeletConfig 对象的名称。

-y,--yes

自动回答 yes 以确认操作。

8.2.7.7. delete machinepool

从集群中删除机器池。

语法

$ rosa delete machinepool --cluster=<cluster_name> | <cluster_id> <machine_pool_id>

表 8.54. 参数
选项定义

--cluster

必需:将从中删除机器池的集群的名称或 ID (字符串)。

表 8.55. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

示例

从名为 mycluster 的集群中删除 ID 为 mp-1 的机器池。

$ rosa delete machinepool --cluster=mycluster mp-1

8.2.8. 安装和卸载附加组件

本节论述了如何在集群中安装和卸载 Red Hat managed service add-ons。

8.2.8.1. 安装附加组件

在集群上安装受管服务附加组件。

语法

$ rosa install addon --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.56. 参数
选项定义

--cluster

必需:安装附加组件的集群的名称或 ID (字符串)。

表 8.57. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

使用您的凭据文件中的特定 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

示例

dbaas-operator 附加组件安装添加到名为 mycluster 的集群。

$ rosa install addon --cluster=mycluster dbaas-operator

8.2.8.2. 卸载附加组件

从集群中删除受管服务附加组件。

语法

$ rosa uninstall addon --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.58. 参数
选项定义

--cluster

必需:将从中卸载附加组件的集群的名称或 ID (字符串)。

表 8.59. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

使用您的凭据文件中的特定 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

示例

从名为 mycluster 的集群中删除 dbaas-operator 附加组件安装。

$ rosa uninstall addon --cluster=mycluster dbaas-operator

8.2.9. 列出和描述对象

本节介绍了集群和资源的 listdescribe 命令。

8.2.9.1. 列出附加组件

列出受管服务附加组件安装。

语法

$ rosa list addons --cluster=<cluster_name> | <cluster_id>

表 8.60. 参数
选项定义

--cluster

必需:要列出附加组件的集群的名称或 ID (字符串)。

表 8.61. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

8.2.9.2. 列出 breakinitial 凭证

列出集群的所有中断特征凭据。

语法

$ rosa list break-glass-credential [arguments]

表 8.62. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。添加了 break visualization 凭据的集群的名称或 ID。

表 8.63. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出名为 mycluster 的集群的所有 breaktra credentials。

$ rosa list break-glass-credential --cluster=mycluster

8.2.9.3. 列出集群

列出所有集群。

语法

$ rosa list clusters [arguments]

表 8.64. 参数
选项定义

--count

要显示的集群数量(整数)。默认: 100

表 8.65. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

8.2.9.4. 列出 external-auth-provider

列出集群的任何外部身份验证供应商。

语法

$ rosa list external-auth-provider --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.66. 参数
选项定义

--cluster

必需:列出外部身份验证供应商的集群的名称或 ID 字符串。

表 8.67. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集字符串。

示例

列出名为 mycluster 的集群的任何外部身份验证供应商。

$ rosa list external-auth-provider --cluster=mycluster

8.2.9.5. list idps

列出集群的所有身份提供程序 (IDP)。

语法

$ rosa list idps --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.68. 参数
选项定义

--cluster

必需:为其列出 IDP 的集群的名称或 ID (字符串)。

表 8.69. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出名为 mycluster 的集群的所有身份提供程序 (IDP)。

$ rosa list idps --cluster=mycluster

8.2.9.6. 列出 ingresses

列出集群的所有 API 和入口端点。

语法

$ rosa list ingresses --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.70. 参数
选项定义

--cluster

必需:为其列出 IDP 的集群的名称或 ID (字符串)。

表 8.71. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出名为 mycluster 的集群的所有 API 和入口端点。

$ rosa list ingresses --cluster=mycluster

8.2.9.7. list instance-types

列出用于 ROSA 的所有可用实例类型。可用性基于帐户的 AWS 配额。

语法

$ rosa list instance-types [arguments]

表 8.72. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--output

输出格式。允许的格式是 jsonyaml

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出所有实例类型。

$ rosa list instance-types

8.2.9.8. 列出 kubeletconfigs

列出集群中配置的 KubeletConfig 对象。

语法

$ rosa list kubeletconfigs --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.73. 参数
选项定义

--cluster

必需:列出机器池用于的集群的名称或 ID (字符串)。

表 8.74. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

示例

列出名为 mycluster 的集群上所有 KubeletConfig 对象。

$ rosa list kubeletconfigs --cluster=mycluster

8.2.9.9. list machinepools

列出集群上配置的机器池。

语法

$ rosa list machinepools --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.75. 参数
选项定义

--cluster

必需:列出机器池用于的集群的名称或 ID (字符串)。

表 8.76. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出名为 mycluster 的集群中的所有机器池。

$ rosa list machinepools --cluster=mycluster

8.2.9.10. 列出区域

列出当前 AWS 帐户的所有可用区域。

语法

$ rosa list regions [arguments]

表 8.77. 参数
选项定义

--multi-az

列出为多个可用区支持的区域。

表 8.78. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出所有可用区域。

$ rosa list regions

8.2.9.11. 列出升级

列出所有可用的和已调度的集群版本升级。

语法

$ rosa list upgrades --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.79. 参数
选项定义

--cluster

必需:列出可用升级的集群的名称或 ID (字符串)。

表 8.80. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出名为 mycluster 的集群的所有可用升级。

$ rosa list upgrades --cluster=mycluster

8.2.9.12. 列出用户

列出指定集群的集群管理员和专用管理员用户。

语法

$ rosa list users --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.81. 参数
选项定义

--cluster

必需:集群管理员要列出的集群的名称或 ID (字符串)。

表 8.82. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出名为 mycluster 的集群的所有集群管理员和专用管理员。

$ rosa list users --cluster=mycluster

8.2.9.13. 列出版本

列出所有可用于创建集群的 OpenShift 版本。

语法

$ rosa list versions [arguments]

表 8.83. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

列出所有 OpenShift Container Platform 版本。

$ rosa list versions

8.2.9.14. 描述管理员

显示指定 cluster-admin 用户以及要登录到集群的命令的详细信息。

语法

$ rosa describe admin --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.84. 参数
选项定义

--cluster

必需: cluster-admin 所属集群的名称或 ID (字符串)。

表 8.85. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

描述名为 mycluster 的集群的 cluster-admin 用户。

$ rosa describe admin --cluster=mycluster

8.2.9.15. 描述附加组件

显示托管服务附加组件的详细信息。

语法

$ rosa describe addon <addon_id> | <addon_name> [arguments]

表 8.86. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

描述名为 dbaas-operator 的附加组件。

$ rosa describe addon dbaas-operator

8.2.9.16. 描述 breakinitial 凭证

显示特定集群的 breaktra credential 的详细信息。

语法

$ rosa describe break-glass-credential --id=<break_glass_credential_id> --cluster=<cluster_name>| <cluster_id> [arguments]

表 8.87. 参数
选项定义

--cluster

必需:集群的名称或 ID (字符串)。

--id

必需: breakinitial 凭证的 ID (字符串)。

--kubeconfig

可选:从 break visualization 凭证中删除 kubeconfig。

表 8.88. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

8.2.9.17. 描述集群

显示集群的详情。

语法

$ rosa describe cluster --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.89. 参数
选项定义

--cluster

必需:集群的名称或 ID (字符串)。

表 8.90. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--get-role-policy-bindings

列出附加到分配给集群的 STS 角色的策略。

示例

描述名为 mycluster 的集群。

$ rosa describe cluster --cluster=mycluster

8.2.9.18. 描述 kubeletconfig

显示自定义 KubeletConfig 对象的详情。

语法

$ rosa describe kubeletconfig --cluster=<cluster_name|cluster_id> [flags]

表 8.91. 标记
选项定义

-c, --cluster <cluster_name>|<cluster_id>

必需。您要查看 KubeletConfig 对象的集群的名称或 ID。

-h, --help

显示此命令的帮助信息。

--name

可选。指定要描述的 KubeletConfig 对象的名称。

-o, --output string

-o, --output string

8.2.9.19. 描述 machinepool

描述在集群中配置的特定机器池。

语法

$ rosa describe machinepool --cluster=[<cluster_name>|<cluster_id>] --machinepool=<machinepool_name> [arguments]

表 8.92. 参数
选项定义

--cluster

必需:集群的名称或 ID (字符串)。

--machinepool

必需: machinepool 的名称或 ID (字符串)。

表 8.93. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

描述名为 mycluster 的集群上名为 mymachinepool 的机器池。

$ rosa describe machinepool --cluster=mycluster --machinepool=mymachinepool

8.2.10. 撤销对象

本节论述了集群和资源的 revoke 命令。

8.2.10.1. revoke-break-glass-credential

从启用了外部身份验证的指定的托管 control plane 集群中撤销所有 breakcommands 凭证。

语法

$ rosa revoke break-glass-credential --cluster=<cluster_name> | <cluster_id>

表 8.94. 参数
选项定义

--cluster

必需:将删除中断凭证的集群的名称或 ID (字符串)。

表 8.95. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

--yes

自动回答 yes 以确认操作。

示例

从名为 mycluster 的集群中撤销 breakinitial 凭据。

$ rosa revoke break-glass-credential --cluster=mycluster

8.2.11. 升级和删除对象的升级

本节论述了对象的 upgrade 命令用法。

8.2.11.1. 升级集群

调度集群升级。

语法

$ rosa upgrade cluster --cluster=<cluster_name> | <cluster_id> [arguments]

表 8.96. 参数
选项定义

--cluster

必需:要调度升级的集群的名称或 ID (字符串)。

--interactive

启用交互模式。

--version

集群要升级到的 OpenShift Container Platform 的版本(字符串)。

--schedule-date

升级将在协调通用时间(UTC)中指定的时间运行时的下一个日期(字符串)。格式: yyyy-mm-dd

--schedule-time

下次升级将在 Coordinated Universal Time (UTC)中的指定日期上运行。格式: HH:mm

--node-drain-grace-period [1]

设置一个宽限期(字符串),以便在升级过程中遵守 pod 中断预算保护的工作负载的时间。在此宽限期后,任何无法从节点成功排空的 pod 中断预算保护的所有工作负载都会强制被驱除。默认: 1 小时

--control-plane [2]

升级集群的托管 control plane。

  1. 仅限经典集群
  2. 仅限使用 HCP 集群的 ROSA
表 8.97. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

例子

在名为 mycluster 的集群上以交互方式调度升级。

$ rosa upgrade cluster --cluster=mycluster --interactive

在名为 mycluster 的集群上,在小时内调度集群升级。

$ rosa upgrade cluster --cluster=mycluster --version 4.5.20

8.2.11.2. 删除集群升级

取消调度的集群升级。

语法

$ rosa delete upgrade --cluster=<cluster_name> | <cluster_id>

表 8.98. 参数
选项定义

--cluster

必需:将取消升级的集群的名称或 ID (字符串)。

表 8.99. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--yes

自动回答 yes 以确认操作。

8.2.11.3. 升级 machinepool

升级在使用 HCP 集群的 ROSA 上配置的特定机器池。

注意

machinepools 的 upgrade 命令只适用于 HCP 集群的 ROSA。

语法

$ rosa upgrade machinepool --cluster=<cluster_name> <machinepool_name>

表 8.100. 参数
选项定义

--cluster

必需:集群的名称或 ID (字符串)。

--schedule-date

升级将在协调通用时间(UTC)中指定的时间运行时的下一个日期(字符串)。格式: yyyy-mm-dd

--schedule-time

下次升级将在 Coordinated Universal Time (UTC)中的指定日期上运行。格式: HH:mm

表 8.101. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

在名为 mycluster 的集群上升级机器池。

$ rosa upgrade machinepool --cluster=mycluster

8.2.11.4. delete machinepool upgrade

取消调度的 machinepool 升级。

语法

$ rosa delete upgrade --cluster=<cluster_name> <machinepool_name>

表 8.102. 参数
选项定义

--cluster

必需:集群的名称或 ID (字符串)。

表 8.103. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

8.2.11.5. 升级角色

升级在集群中配置的角色。

语法

$ rosa upgrade roles --cluster=<cluster_id>

表 8.104. 参数
选项定义

--cluster

必需:集群的名称或 ID (字符串)。

表 8.105. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

指定来自您的凭证文件中的 AWS 配置集(字符串)。

示例

升级名为 mycluster 的集群上的角色。

$ rosa upgrade roles --cluster=mycluster
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.