7.2. 使用 ROSA CLI 管理对象


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

注意

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

7.2.1. 常用命令和参数

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

7.2.1.1. debug

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

示例

$ rosa create cluster --cluster-name=<cluster_name> --debug
Copy to Clipboard Toggle word wrap

7.2.1.2. 下载

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

示例

$ rosa download <software>
Copy to Clipboard Toggle word wrap

7.2.1.3. 帮助

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

例子

显示 ROSA CLI 的常规帮助。

$ rosa --help
Copy to Clipboard Toggle word wrap

显示 版本 的常规帮助。

$ rosa version --help
Copy to Clipboard Toggle word wrap

7.2.1.4. interactive

启用交互模式。

示例

$ rosa create cluster --cluster-name=<cluster_name> --interactive
Copy to Clipboard Toggle word wrap

7.2.1.5. 配置集

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

示例

$ rosa create cluster --cluster-name=<cluster_name> --profile=myAWSprofile
Copy to Clipboard Toggle word wrap

7.2.1.6. version

显示 rosa 版本,并检查是否有新版本可用。

示例

$ rosa version [arguments]
Copy to Clipboard Toggle word wrap

输出示例

当有新版本的 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/
Copy to Clipboard Toggle word wrap

7.2.2. 父命令

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

7.2.2.1. create

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

示例

$ rosa create cluster --cluster-name=mycluster
Copy to Clipboard Toggle word wrap

7.2.2.2. edit

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

示例

$ rosa edit cluster --cluster=mycluster --private
Copy to Clipboard Toggle word wrap

7.2.2.3. delete

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

示例

$ rosa delete ingress --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.2.4. list

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

示例

$ rosa list users --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.2.5. describe

显示集群的详情。

示例

$ rosa describe cluster --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.3. 创建对象

注意

要创建 Hosted Control Plane 集群,请根据需要包含 '--hosted-cp' 标志。

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

7.2.3.1. 创建 account-roles

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

语法

$ rosa create account-roles [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.11. 标记
选项定义

--debug

启用调试模式。

-i, --interactive

启用交互模式。

-m,--mode 字符串

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

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

--path string

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

--permissions-boundary 字符串

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

--prefix 字符串

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

--profile string

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

-y,--yes

自动回答 yes 以确认操作。

7.2.3.2. 创建管理员

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

语法

$ rosa create admin --cluster=<cluster_name>|<cluster_id>
Copy to Clipboard Toggle word wrap

Expand
表 7.12. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile string

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

示例

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

$ rosa create admin --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.3.3. 创建 breakuildDefaults 凭证

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

语法

$ rosa create break-glass-credential --cluster=<cluster_name> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.14. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

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

--expiration

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

--username

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--region

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

--yes

自动回答 yes 以确认操作。

例子

向名为 mycluster 的集群添加 breakfish 凭据。

语法

$ rosa create break-glass-credential --cluster=mycluster
Copy to Clipboard Toggle word wrap

使用交互模式,向名为 mycluster 的集群添加 breakfish 凭据。

语法

$ rosa create break-glass-credential --cluster=mycluster -i
Copy to Clipboard Toggle word wrap

7.2.3.4. 创建集群

创建新集群。

语法

$ rosa create cluster --cluster-name=<cluster_name> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.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 存储加密。

--external-id <arn_string>

在另一个帐户中假定角色时可能需要的可选唯一标识符。

--host-prefix <subnet>

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

--machine-cidr <address_block>

安装集群时使用的 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

--no-cni

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

--operator-roles-prefix <string>

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

--pod-cidr <address_block>

从中分配 Pod IP 地址的 IP 地址块,例如 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 端点和应用程序路由来直接、专用连接。

--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

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

--subnet-ids <aws_subnet_id>

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

将-- private 用于"私有 API"时,需要 --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.19.0。对于 account-role,使用 X.Y 格式,如 4.19

--worker-iam-role 字符串

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

创建名为 mycluster 的集群。

$ rosa create cluster --cluster-name=mycluster
Copy to Clipboard Toggle word wrap

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

$ rosa create cluster --cluster-name=mycluster --region=us-east-2
Copy to Clipboard Toggle word wrap

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

$ rosa create cluster --cluster-name=mycluster -region=us-east-1 --enable-autoscaling --min-replicas=2 --max-replicas=5
Copy to Clipboard Toggle word wrap

7.2.3.5. 创建 external-auth-provider

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

重要

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

语法

$ rosa create external-auth-provider --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.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>

一个 audiences 数组,用于检查传入的令牌。有效令牌必须在其 audience 声明中包含至少一个这些值。

--issuer-ca-file <string>

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

--issuer-url <string>

令牌签发者的服务 URL。

--name <string>

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

Expand
表 7.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
Copy to Clipboard Toggle word wrap

7.2.3.6. 创建 idp

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

语法

$ rosa create idp --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.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

Expand
表 7.21. GitHub 参数
选项定义

--hostname

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

--organizations

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

--teams

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

Expand
表 7.22. GitLab 参数
选项定义

--host-url

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

Expand
表 7.23. Google 参数
选项定义

--hosted-domain

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

Expand
表 7.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

Expand
表 7.25. OpenID 参数
选项定义

--email-claims

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

--extra-scopes

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

--issuer-url

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

--name-claims

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

--username-claims

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

--groups-claims

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

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

$ rosa create idp --type=github --cluster=mycluster
Copy to Clipboard Toggle word wrap

根据交互式提示添加身份提供程序。

$ rosa create idp --cluster=mycluster --interactive
Copy to Clipboard Toggle word wrap

7.2.3.7. 创建入口

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

语法

$ rosa create ingress --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.27. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

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

--label-match

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

--private

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

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

$ rosa create ingress --private --cluster=mycluster
Copy to Clipboard Toggle word wrap

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

$ rosa create ingress --cluster=mycluster
Copy to Clipboard Toggle word wrap

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

$ rosa create ingress --cluster=mycluster --label-match=foo=bar,bar=baz
Copy to Clipboard Toggle word wrap

7.2.3.8. 创建 kubeletconfig

创建自定义 KubeletConfig 对象,以允许自定义节点配置

语法

$ rosa create kubeletconfig --cluster=<cluster_name|cluster_id> --name=<kubeletconfig_name> --pod-pids-limit=<number> [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.29. 标记
选项定义

--pod-pids-limit <number>

必需。中每个节点的 PID 数量上限

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

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

--name

KubeletConfig 对象指定一个名称。

-i, --interactive

启用交互模式。

-h, --help

显示此命令的帮助信息。

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

7.2.3.9. 创建 machinepool

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

提示

机器池也称为托管 control plane 集群上的节点池。

语法

$ rosa create machinepool --cluster=<cluster_name> | <cluster_id> --replicas=<number> --name=<machinepool_name> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.30. 参数
选项定义

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

与这个机器池的默认安全组一起使用的一个或多个额外安全组的标识符。有关其他安全组的更多信息,请参阅附加资源 中的 安全组 要求。

--cluster <cluster_name>|<cluster_id>

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

--disk-size

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

对于 {rosa-classic} 集群版本 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>

对于 Red Hat OpenShift Service on AWS 集群,适用于机器池节点的任何 KubeletConfig 对象的名称。

--labels

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

--max-replicas

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

--min-replicas

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

--max-surge

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

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

--max-unavailable

对于 Red Hat OpenShift Service on AWS 集群,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 列表的形式。此列表将永久覆盖对节点污点所做的任何修改。

--autorepair

为机器池的 AutoRepair 设置以布尔值 truefalse 表示。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

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

$ rosa create machinepool --cluster=mycluster --interactive
Copy to Clipboard Toggle word wrap

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

$ rosa create machinepool --cluster=mycluster --enable-autoscaling --min-replicas=2 --max-replicas=5 --name=mp-1
Copy to Clipboard Toggle word wrap

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

$ rosa create machinepool --cluster=mycluster --replicas=3 --instance-type=m5.xlarge --name=mp-1
Copy to Clipboard Toggle word wrap

将机器池(mp-1)添加到 Red Hat OpenShift Service on AWS 集群中,配置 6 个副本和以下升级行为:

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

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

$ rosa create machinepool --cluster=mycluster --replicas=2 --instance-type=r5.2xlarge --labels=foo=bar,bar=baz --name=mp-1
Copy to Clipboard Toggle word wrap

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

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

7.2.3.10. 创建网络

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

重要

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

注意

对于自定义或高级配置,强烈建议您直接使用 aws cloudformation 命令或创建带有所需配置的新自定义模板。如果您使用带有 ROSA CLI 的自定义 CloudFormation 模板,则最低版本为 1.2.47 或更高版本。

语法

$ rosa create network [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.32. 参数
选项定义

<template-name>

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

默认 CloudFormation 模板

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.48.
  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: 4
  AZ1:
    Type: String
    Description: "First availability zone to use"
    Default: ""
  AZ2:
    Type: String
    Description: "Second availability zone to use"
    Default: ""
  AZ3:
    Type: String
    Description: "Third availability zone to use"
    Default: ""
  AZ4:
    Type: String
    Description: "Fourth availability zone to use"
    Default: ""
  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:
  AZ1Explicit: !Not [!Equals [!Ref AZ1, ""]]
  AZ2Explicit: !Not [!Equals [!Ref AZ2, ""]]
  AZ3Explicit: !Not [!Equals [!Ref AZ3, ""]]
  AZ4Explicit: !Not [!Equals [!Ref AZ4, ""]]

  ExplicitAZs:   !Or [!Condition AZ1Explicit, !Condition AZ2Explicit, !Condition AZ3Explicit, !Condition AZ4Explicit]
  NoExplicitAZs: !Not [!Condition ExplicitAZs]

  AZ4Implicit: !Equals [!Ref AvailabilityZoneCount, 4]
  AZ3Implicit: !Or [!Equals [!Ref AvailabilityZoneCount, 3], !Condition AZ4Implicit]
  AZ2Implicit: !Or [!Equals [!Ref AvailabilityZoneCount, 2], !Condition AZ3Implicit]
  AZ1Implicit: !Or [!Equals [!Ref AvailabilityZoneCount, 1], !Condition AZ2Implicit]

  One:   !Or [!And [!Condition ExplicitAZs, !Condition AZ1Explicit], !And [!Condition NoExplicitAZs, !Condition AZ1Implicit]]
  Two:   !Or [!And [!Condition ExplicitAZs, !Condition AZ2Explicit], !And [!Condition NoExplicitAZs, !Condition AZ2Implicit]]
  Three: !Or [!And [!Condition ExplicitAZs, !Condition AZ3Explicit], !And [!Condition NoExplicitAZs, !Condition AZ3Implicit]]
  Four:  !Or [!And [!Condition ExplicitAZs, !Condition AZ4Explicit], !And [!Condition NoExplicitAZs, !Condition AZ4Implicit]]

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:
    Type: AWS::EC2::Subnet
    Condition: One
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [0, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ1, !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:
    Type: AWS::EC2::Subnet
    Condition: One
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [1, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ1, !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:
    Type: AWS::EC2::Subnet
    Condition: Two
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [2, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ2, !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:
    Type: AWS::EC2::Subnet
    Condition: Two
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [3, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ2, !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:
    Type: AWS::EC2::Subnet
    Condition: Three
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [4, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ3, !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:
    Type: AWS::EC2::Subnet
    Condition: Three
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [5, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ3, !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'

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

  SubnetPrivate4:
    Type: AWS::EC2::Subnet
    Condition: Four
    Properties:
      VpcId: !Ref VPC
      CidrBlock: !Select [7, !Cidr [!Ref VpcCidr, 8, 8]]
      AvailabilityZone: !If [ExplicitAZs, !Ref AZ4, !Select [3, !GetAZs '']]
      MapPublicIpOnLaunch: false
      Tags:
        - Key: Name
          Value: !Sub "${Name}-Private-Subnet-4"
        - 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:
    Condition: One
    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:
    Condition: Two
    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: Three
    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'

  ElasticIP4:
    Condition: Four
    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: Three
    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'

  NATGateway4:
    Condition: Four
    Type: 'AWS::EC2::NatGateway'
    Properties:
      AllocationId: !GetAtt ElasticIP4.AllocationId
      SubnetId: !Ref SubnetPublic4
      Tags:
        - Key: Name
          Value: !Sub "${Name}-NAT-4"
        - 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
            - Three
            - !Ref NATGateway3
            - !If
              - Four
              - !Ref NATGateway4
              - !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: Three
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPublic3
      RouteTableId: !Ref PublicRouteTable

  PublicSubnetRouteTableAssociation4:
    Condition: Four
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPublic4
      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: Three
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPrivate3
      RouteTableId: !Ref PrivateRouteTable

  PrivateSubnetRouteTableAssociation4:
    Condition: Four
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      SubnetId: !Ref SubnetPrivate4
      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 [Three, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
        - !If [Four, !Ref SubnetPrivate4, !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 [Three, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
        - !If [Four, !Ref SubnetPrivate4, !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 [Three, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
        - !If [Four, !Ref SubnetPrivate4, !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 [Three, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
        - !If [Four, !Ref SubnetPrivate4, !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 [Three, !Ref SubnetPrivate3, !Ref "AWS::NoValue"]
        - !If [Four, !Ref SubnetPrivate4, !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 [Three, !Ref SubnetPublic3, !Ref "AWS::NoValue"], !If [Four, !Ref SubnetPublic4, !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 [Three, !Ref SubnetPrivate3, !Ref "AWS::NoValue"], !If [Four, !Ref SubnetPublic4, !Ref "AWS::NoValue"]]]
    Export:
      Name: !Sub "${Name}-PrivateSubnets"

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

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

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

  EIP4AllocationId:
    Condition: Four
    Description: Allocation ID for ElasticIP4
    Value: !GetAtt ElasticIP4.AllocationId
    Export:
      Name: !Sub "${Name}-EIP4-AllocationId"

  NatGatewayId:
    Description: The NAT Gateway IDs
    Value: !Join [",", [!If [One, !Ref NATGateway1, !Ref "AWS::NoValue"], !If [Two, !Ref NATGateway2, !Ref "AWS::NoValue"], !If [Three, !Ref NATGateway3, !Ref "AWS::NoValue"], !If [Four, !Ref NATGateway4, !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"
Copy to Clipboard Toggle word wrap

Expand
表 7.33. 标记
选项定义

--template-dir

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

--param name

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

--param Region

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

--param <various>

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

--mode=manual

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

Example

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

$ rosa create network rosa-quickstart-default-vpc --param Tags=key1=value1,key2=value2 --param Name=example-stack --param Region=us-west-2
Copy to Clipboard Toggle word wrap
  • 默认模板中提供了完整的参数列表。

    模板示例

    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'
    Copy to Clipboard Toggle word wrap

7.2.3.11. 创建 ocm-role

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

语法

$ rosa create ocm-role [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.34. 标记
选项定义

--admin

为角色启用管理功能。

--debug

启用调试模式。

-i, --interactive

启用交互模式。

-m,--mode 字符串

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

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

--path string

OCM 角色和策略的 ARN 路径。

--permissions-boundary 字符串

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

--prefix 字符串

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

--profile string

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

-y,--yes

自动回答 yes 以确认操作。

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

7.2.3.12. 创建 user-role

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

语法

$ rosa create user-role [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.35. 标记
选项定义

--debug

启用调试模式。

-i, --interactive

启用交互模式。

-m,--mode 字符串

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

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

--path string

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

--permissions-boundary 字符串

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

--prefix 字符串

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

--profile string

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

-y,--yes

自动回答 yes 以确认操作。

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

7.2.3.13. Create iamserviceaccount

创建 AWS Identity and Access Management (IAM)角色,该角色可使用 OpenID Connect (OIDC)身份联邦来假定 Red Hat OpenShift Service on AWS 服务帐户。

语法

$ rosa create iamserviceaccount --cluster=<cluster_name> | <cluster_id> --name=<service_account_name> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.36. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。创建 IAM 服务帐户角色的集群的名称或 ID。

--name <service_account_name>

必需。Red Hat OpenShift Service on AWS 服务帐户的名称。此标志可以多次用于为多个服务帐户创建角色。

--namespace <namespace_name>

服务帐户的 Red Hat OpenShift Service on AWS 命名空间。默认值:default

--role-name <role_name>

要创建的 IAM 角色的名称。如果没有指定,则使用模式 {cluster-name}-{namespace}-{service-account-name}-role 自动生成名称。

--attach-policy-arn <policy_arn>

要附加到角色的 IAM 策略的 ARN。此标志可以多次使用来附加多个策略。

--inline-policy <policy_document>

JSON 格式的内联策略文档,或者前缀为 file:// 的文件路径(例如 file://policy.json)。

--permissions-boundary <boundary_arn>

IAM 策略的 ARN,用作角色的权限边界。

--path <iam_path>

角色的 IAM 路径。默认: /

-m, --mode string

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

auto
资源更改将使用当前的 AWS 帐户自动应用。
manual
修改 AWS 资源所需的命令将输出手动运行。
Expand
表 7.37. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile string

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

--yes

自动回答 yes 以确认操作。

例子

default 命名空间中创建一个名为 my-app 的服务帐户的 IAM 角色,具有 S3 只读访问权限。

$ rosa create iamserviceaccount --cluster=mycluster --name=my-app --attach-policy-arn=arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
Copy to Clipboard Toggle word wrap

使用自定义名称和多个策略创建一个 IAM 角色。

$ rosa create iamserviceaccount --cluster=mycluster --name=my-app --namespace=production --role-name=my-custom-role --attach-policy-arn=arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess --attach-policy-arn=arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess
Copy to Clipboard Toggle word wrap

从文件中创建带有内联策略的 IAM 角色。

$ rosa create iamserviceaccount --cluster=mycluster --name=my-app --inline-policy=file://my-policy.json
Copy to Clipboard Toggle word wrap

7.2.4. 编辑对象

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

7.2.4.1. 编辑集群

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

语法

$ rosa edit cluster --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.38. 参数
选项定义

--additional-allowed-principals <arn>

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

--cluster

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

--private

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

--enable-delete-protection=true

启用删除保护功能。

--enable-delete-protection=false

禁用删除保护功能。

--billing-account-string

指定用于从 AWS 市场购买的计费订阅的帐户。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

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

$ rosa edit cluster --cluster=mycluster --private
Copy to Clipboard Toggle word wrap

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

$ rosa edit cluster --cluster=mycluster --interactive
Copy to Clipboard Toggle word wrap

7.2.4.2. edit ingress

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

注意

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

语法

$ rosa edit ingress --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.40. 参数
选项定义

--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

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

--private

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

--route-selector

ingress 的路由 Selector。格式是用逗号分开的 key=value 列表。如果没有指定标签,则所有路由都会在两个路由器上公开。对于传统的 ingress 支持,它们会被包含标签,否则它们被视为排除标签。

--wildcard-policy

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

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

$ rosa edit ingress --private --cluster=mycluster a1b2
Copy to Clipboard Toggle word wrap

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

$ rosa edit ingress --label-match=foo=bar --cluster=mycluster a1b2
Copy to Clipboard Toggle word wrap

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

$ rosa edit ingress --private=false --cluster=mycluster apps
Copy to Clipboard Toggle word wrap

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

$ rosa edit ingress --lb-type=nlb --cluster=mycluster apps2
Copy to Clipboard Toggle word wrap

7.2.4.3. 编辑 kubeletconfig

编辑一个自定义 KubeletConfig 对象

语法

$ rosa edit kubeletconfig --cluster=<cluster_name|cluster_id> --name=<kubeletconfig_name> --pod-pids-limit=<number> [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.42. 标记
选项定义

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

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

-i, --interactive

启用交互模式。

--pod-pids-limit <number>

必需。中每个节点的 PID 数量上限

--name

KubeletConfig 对象指定一个名称。

-h, --help

显示此命令的帮助信息。

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

7.2.4.4. edit machinepool

编辑集群中的机器池。

语法

$ rosa edit machinepool --cluster=<cluster_name_or_id> <machinepool_name> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.43. 参数
选项定义

--cluster

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

--enable-autoscaling

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

--labels

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

--kubelet-configs <kubeletconfig_name>

对于 Red Hat OpenShift Service on AWS 集群,适用于机器池节点的任何 KubeletConfig 对象的名称。

--max-replicas

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

--min-replicas

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

--max-surge

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

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

--max-unavailable

对于 Red Hat OpenShift Service on AWS 集群,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 列表的形式。编辑此值只会影响机器池的新创建的节点,这通过增加节点号创建,而不影响现有节点。此列表会永久覆盖对节点污点所做的任何修改。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

例子

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

$ rosa edit machinepool --cluster=mycluster --replicas=4 mp1
Copy to Clipboard Toggle word wrap

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

$ rosa edit machinepool --cluster=mycluster --enable-autoscaling --min-replicas=3 --max-replicas=5 mp1
Copy to Clipboard Toggle word wrap

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

$ rosa edit machinepool --cluster=mycluster  --enable-autoscaling=false --replicas=3 mp1
Copy to Clipboard Toggle word wrap

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

$ rosa edit machinepool --max-replicas=9 --cluster=mycluster mp1
Copy to Clipboard Toggle word wrap

在 Red Hat OpenShift Service on AWS 集群中,编辑 mp1 机器池,以在升级过程中添加以下行为:

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

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

$ rosa edit machinepool -c mycluster --kubelet-configs=set-high-pids high-pid-pool
Copy to Clipboard Toggle word wrap

7.2.6. 删除对象

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

7.2.6.1. 删除管理员

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

语法

$ rosa delete admin --cluster=<cluster_name> | <cluster_id>
Copy to Clipboard Toggle word wrap

Expand
表 7.45. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

示例

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

$ rosa delete admin --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.6.2. 删除集群

删除集群。

语法

$ rosa delete cluster --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.47. 参数
选项定义

--cluster

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

--watch

监视集群卸载日志。

--best-effort

跳过已知导致集群删除过程的集群销毁链中的步骤。您应该谨慎使用这个选项,并建议您手动检查 AWS 帐户在使用- best-effort 后可能保留的任何资源。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--yes

自动回答 yes 以确认操作。

例子

删除名为 mycluster 的集群。

$ rosa delete cluster --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.6.3. 删除 external-auth-provider

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

语法

$ rosa delete external-auth-provider <name_of_external_auth_provider> --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.49. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--yes

自动回答 yes 以确认操作。

Example

从名为 mycluster 的集群中删除名为 exauth-1 的身份提供程序。

$ rosa delete external-auth-provider exauth-1 --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.6.4. 删除 idp

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

语法

$ rosa delete idp --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.51. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--yes

自动回答 yes 以确认操作。

示例

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

$ rosa delete idp github --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.6.5. delete iamserviceaccount

删除为 Red Hat OpenShift Service on AWS 服务帐户创建的 AWS Identity and Access Management (IAM)角色。

语法

$ rosa delete iamserviceaccount --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.53. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。从中删除 IAM 服务帐户角色的集群名称或 ID。

--name <service_account_name>

Red Hat OpenShift Service on AWS 服务帐户的名称。未指定 --role-name 时需要。

--namespace <namespace_name>

服务帐户的 Red Hat OpenShift Service on AWS 命名空间。默认值:default

--role-name <role_name>

要删除的 IAM 角色的名称。如果未指定,则使用服务帐户详细信息自动探测到角色名称。

-m,--mode 字符串

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

auto
资源更改将使用当前的 AWS 帐户自动应用。
manual
修改 AWS 资源所需的命令将是手动运行的输出。
Expand
表 7.54. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--yes

自动回答 yes 以确认操作。

例子

删除 default 命名空间中名为 my-app 的服务帐户的 IAM 角色。

$ rosa delete iamserviceaccount --cluster=mycluster --name=my-app
Copy to Clipboard Toggle word wrap

通过直接指定角色名称来删除 IAM 角色。

$ rosa delete iamserviceaccount --cluster=mycluster --role-name=my-custom-role --yes
Copy to Clipboard Toggle word wrap

7.2.6.6. 删除入口

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

语法

$ rosa delete ingress --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.55. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--yes

自动回答 yes 以确认操作。

例子

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

$ rosa delete ingress --cluster=mycluster a1b2
Copy to Clipboard Toggle word wrap

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

$ rosa delete ingress --cluster=mycluster apps2
Copy to Clipboard Toggle word wrap

7.2.6.7. 删除 kubeletconfig

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

语法

$ rosa delete kubeletconfig --cluster=<cluster_name|cluster_id> [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.57. 标记
选项定义

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

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

-h, --help

显示此命令的帮助信息。

--name

KubeletConfig 对象指定一个名称。

-y,--yes

自动回答 yes 以确认操作。

7.2.6.8. delete machinepool

从集群中删除机器池。

语法

$ rosa delete machinepool --cluster=<cluster_name> | <cluster_id> <machine_pool_id>
Copy to Clipboard Toggle word wrap

Expand
表 7.58. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--interactive

启用交互模式。

--profile

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

--yes

自动回答 yes 以确认操作。

示例

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

$ rosa delete machinepool --cluster=mycluster mp-1
Copy to Clipboard Toggle word wrap

7.2.7. 安装和卸载附加组件

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

7.2.7.1. 安装附加组件

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

语法

$ rosa install addon --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.60. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

--yes

自动回答 yes 以确认操作。

示例

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

$ rosa install addon --cluster=mycluster dbaas-operator
Copy to Clipboard Toggle word wrap

7.2.7.2. 卸载附加组件

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

语法

$ rosa uninstall addon --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.62. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

--yes

自动回答 yes 以确认操作。

示例

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

$ rosa uninstall addon --cluster=mycluster dbaas-operator
Copy to Clipboard Toggle word wrap

7.2.8. 列出和描述对象

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

7.2.8.1. 列出附加组件

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

语法

$ rosa list addons --cluster=<cluster_name> | <cluster_id>
Copy to Clipboard Toggle word wrap

Expand
表 7.64. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

7.2.8.2. 列出断镜凭证

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

语法

$ rosa list break-glass-credential [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.66. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。添加 breakfish 凭据的集群的名称或 ID。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

Example

列出名为 mycluster 的集群的所有分组镜凭据。

$ rosa list break-glass-credential --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.3. 列出集群

列出所有集群。

语法

$ rosa list clusters [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.68. 参数
选项定义

--count

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

7.2.8.4. 列出 external-auth-provider

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

语法

$ rosa list external-auth-provider --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.70. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa list external-auth-provider --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.5. list idps

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

语法

$ rosa list idps --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.72. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa list idps --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.6. list iamserviceaccounts

列出为 OpenShift 服务帐户创建的 IAM 角色。

语法

$ rosa list iamserviceaccounts [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.74. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

用于过滤服务帐户角色的集群的名称或 ID。

--namespace <namespace_name>

用于过滤服务帐户角色的 OpenShift 命名空间。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--output

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

--profile

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

例子

列出所有 IAM 服务帐户角色。

$ rosa list iamserviceaccounts
Copy to Clipboard Toggle word wrap

列出特定集群的 IAM 服务帐户角色。

$ rosa list iamserviceaccounts --cluster=mycluster
Copy to Clipboard Toggle word wrap

列出集群中特定命名空间的 IAM 服务帐户角色。

$ rosa list iamserviceaccounts --cluster=mycluster --namespace=production
Copy to Clipboard Toggle word wrap

7.2.8.7. describe iamserviceaccount

显示为 OpenShift 服务帐户创建的 IAM 角色的详细信息。

语法

$ rosa describe iamserviceaccount --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.76. 参数
选项定义

--cluster <cluster_name>|<cluster_id>

必需。集群的名称或 ID。

--name <service_account_name>

OpenShift 服务帐户的名称。未指定 --role-name 时需要。

--namespace <namespace_name>

服务帐户的 OpenShift 命名空间。默认值:default

--role-name <role_name>

要描述的 IAM 角色的名称。如果未指定,则使用服务帐户详细信息自动探测到角色名称。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--output

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

--profile

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

例子

描述 default 命名空间中名为 my-app 的服务帐户的 IAM 角色。

$ rosa describe iamserviceaccount --cluster=mycluster --name=my-app
Copy to Clipboard Toggle word wrap

通过直接指定角色名称来描述 IAM 角色。

$ rosa describe iamserviceaccount --cluster=mycluster --role-name=my-custom-role
Copy to Clipboard Toggle word wrap

7.2.8.8. 列出 ingresses

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

语法

$ rosa list ingresses --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.78. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa list ingresses --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.9. list instance-types

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

语法

$ rosa list instance-types [arguments]
Copy to Clipboard Toggle word wrap

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--output

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

--profile

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

示例

列出所有实例类型。

$ rosa list instance-types
Copy to Clipboard Toggle word wrap

7.2.8.10. 列出 kubeletconfigs

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

语法

$ rosa list kubeletconfigs --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.81. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

Example

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

$ rosa list kubeletconfigs --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.11. list machinepools

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

语法

$ rosa list machinepools --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.83. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa list machinepools --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.12. 列出区域

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

语法

$ rosa list regions [arguments]
Copy to Clipboard Toggle word wrap

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

列出所有可用的区域。

$ rosa list regions
Copy to Clipboard Toggle word wrap

7.2.8.13. 列出升级

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

语法

$ rosa list upgrades --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.87. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa list upgrades --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.14. 列出用户

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

语法

$ rosa list users --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.89. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa list users --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.15. 列出版本

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

语法

$ rosa list versions [arguments]
Copy to Clipboard Toggle word wrap

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

列出所有 OpenShift Container Platform 版本。

$ rosa list versions
Copy to Clipboard Toggle word wrap

7.2.8.16. 描述管理员

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

语法

$ rosa describe admin --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.92. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa describe admin --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.17. 描述附加组件

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

语法

$ rosa describe addon <addon_id> | <addon_name> [arguments]
Copy to Clipboard Toggle word wrap

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

示例

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

$ rosa describe addon dbaas-operator
Copy to Clipboard Toggle word wrap

7.2.8.18. 描述 breakfish 凭证

显示了特定集群的中断图形凭据的详细信息。

语法

$ rosa describe break-glass-credential --id=<break_glass_credential_id> --cluster=<cluster_name>| <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.95. 参数
选项定义

--cluster

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

--id

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

--kubeconfig

可选:从 breakfish 凭证中检索 kubeconfig。

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

7.2.8.19. 描述集群

显示集群的详情。

语法

$ rosa describe cluster --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.97. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--external-id <arn_string>

在另一个帐户中假定角色时可能需要的可选唯一标识符。

--profile

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

--get-role-policy-bindings

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

Example

描述名为 mycluster 的集群。

$ rosa describe cluster --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.8.20. 描述 kubeletconfig

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

语法

$ rosa describe kubeletconfig --cluster=<cluster_name|cluster_id> [flags]
Copy to Clipboard Toggle word wrap

Expand
表 7.99. 标记
选项定义

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

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

-h, --help

显示此命令的帮助信息。

--name

必需。指定要描述的 KubeletConfig 对象的名称。

-o, --output string

-o, --output string

7.2.8.21. 描述 machinepool

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

语法

$ rosa describe machinepool --cluster=[<cluster_name>|<cluster_id>] --machinepool=<machinepool_name> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.100. 参数
选项定义

--cluster

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

--machinepool

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

Example

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

$ rosa describe machinepool --cluster=mycluster --machinepool=mymachinepool
Copy to Clipboard Toggle word wrap

7.2.9. 撤销对象

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

7.2.9.1. revoke-break-glass-credential

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

语法

$ rosa revoke break-glass-credential --cluster=<cluster_name> | <cluster_id>
Copy to Clipboard Toggle word wrap

Expand
表 7.102. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

--yes

自动回答 yes 以确认操作。

Example

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

$ rosa revoke break-glass-credential --cluster=mycluster
Copy to Clipboard Toggle word wrap

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

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

7.2.10.1. 升级集群

调度集群升级。

语法

$ rosa upgrade cluster --cluster=<cluster_name> | <cluster_id> [arguments]
Copy to Clipboard Toggle word wrap

Expand
表 7.104. 参数
选项定义

--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
Expand
表 7.105. 从父命令继承的可选参数
选项定义

--help

显示此命令的帮助信息。

例子

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

$ rosa upgrade cluster --cluster=mycluster --interactive
Copy to Clipboard Toggle word wrap

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

$ rosa upgrade cluster --cluster=mycluster --version 4.5.20
Copy to Clipboard Toggle word wrap

7.2.10.2. 删除集群升级

取消调度的集群升级。

语法

$ rosa delete upgrade --cluster=<cluster_name> | <cluster_id>
Copy to Clipboard Toggle word wrap

Expand
表 7.106. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--yes

自动回答 yes 以确认操作。

7.2.10.3. 升级 machinepool

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

注意

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

语法

$ rosa upgrade machinepool --cluster=<cluster_name> <machinepool_name>
Copy to Clipboard Toggle word wrap

Expand
表 7.108. 参数
选项定义

--cluster

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

--schedule-date

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

--schedule-time

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

Example

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

$ rosa upgrade machinepool --cluster=mycluster
Copy to Clipboard Toggle word wrap

7.2.10.4. 删除 machinepool 升级

取消调度的 machinepool 升级。

语法

$ rosa delete upgrade --cluster=<cluster_name> <machinepool_name>
Copy to Clipboard Toggle word wrap

Expand
表 7.110. 参数
选项定义

--cluster

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

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

--help

显示此命令的帮助信息。

--debug

启用调试模式。

--profile

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

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat