7.3. 为安全集群生成 init 捆绑包或集群注册 secret
在设置安全集群前,您必须创建一个 init 捆绑包或集群注册 secret (CRS)。然后,安全集群使用此捆绑包或 CRS 与 Central 实例进行身份验证,也称为 Central。您可以使用 RHACS 门户或 roxctl
CLI 创建 init 捆绑包或 CRS。然后,您可以使用 init 捆绑包或 CRS 使用它来创建资源。
您必须具有 Admin
用户角色才能创建 init 捆绑包。
RHACS 在安装过程中使用特殊工件,它允许 RHACS Central 组件与您要添加的安全集群安全通信。在 4.7 发行前,RHACS 使用 init 捆绑包 专门用于启动安全通信频道。从 4.7 开始,RHACS 提供了对称为 集群注册 secret (CRSes)的 init 捆绑包的替代选择。
集群注册 secret 只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
集群注册 secret (CRS)提供改进的安全性,并更易于使用。CRS 包含单个令牌,可在使用 Operator 和 Helm 安装方法安装 RHACS 时使用。
CRSes 提供更高的安全性,因为它们仅用于注册新的安全集群。如果泄漏,则 init 捆绑包中的证书和密钥可用于模拟安全集群中运行的服务。相反,CRS 中的证书和密钥只能用于 注册 新集群。
在使用 CRS 设置集群后,特定于服务的证书由 Central 发布并发送到新的安全集群。这些服务证书用于 Central 和安全集群之间的通信。因此,可以在集群注册后撤销 CRS,而无需断开安全集群。
您可在安装过程中使用 init 捆绑包或集群注册 secret (CRS)。但是,RHACS 尚不提供使用门户创建 CRS 的方法。因此,您必须使用 roxctl
CLI 创建 CRS。
在设置安全集群前,您必须创建一个 init 捆绑包或 CRS。然后,安全集群使用此捆绑包或 CRS 与 Central 进行身份验证。您可以使用 RHACS 门户或 roxctl
CLI 创建 init 捆绑包。如果使用 CRS,则必须使用 roxctl
CLI 创建它。
然后,您可以使用 OpenShift Container Platform Web 控制台或 oc
或 kubectl
CLI 应用 init 捆绑包或 CRS。如果使用 Helm 安装 RHACS,在运行 helm install
命令时提供 init 捆绑包或 CRS。
7.3.1. 生成 init 捆绑包 复制链接链接已复制到粘贴板!
7.3.1.1. 使用 RHACS 门户生成 init 捆绑包 复制链接链接已复制到粘贴板!
您可以使用 RHACS 门户创建包含 secret 的 init 捆绑包。
您必须具有 Admin
用户角色才能创建 init 捆绑包。
流程
- 查找 RHACS 门户的地址,如"使用 Operator 方法验证中心安装"中所述。
- 登录到 RHACS 门户。
-
如果您没有安全集群,则会出现 Platform Configuration
Clusters 页面。 - 点 Create init bundle。
- 为集群 init 捆绑包输入一个名称。
- 选择您的平台。
- 选择用于安全集群的安装方法: Operator 或 Helm Chart。
点 Download 生成并下载 init 捆绑包,该捆绑包以 YAML 文件的形式创建。如果您使用相同的安装方法,您可以使用一个 init 捆绑包及其对应 YAML 文件用于所有安全集群。
重要安全地存储此捆绑包,因为它包含 secret。
- 使用它来应用 init 捆绑包,在安全集群中创建资源。
- 在每个集群中安装安全的集群服务。
7.3.1.2. 使用 roxctl CLI 生成 init 捆绑包 复制链接链接已复制到粘贴板!
您可以使用 roxctl
CLI 创建带有 secret 的 init 捆绑包。
您必须具有 Admin
用户角色才能创建 init 捆绑包。
先决条件
您已配置了
ROX_API_TOKEN
和ROX_CENTRAL_ADDRESS
环境变量:运行以下命令设置
ROX_API_TOKEN
:export ROX_API_TOKEN=<api_token>
$ export ROX_API_TOKEN=<api_token>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令设置
ROX_CENTRAL_ADDRESS
环境变量:export ROX_CENTRAL_ADDRESS=<address>:<port_number>
$ export ROX_CENTRAL_ADDRESS=<address>:<port_number>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
在 RHACS Cloud Service 中,当使用需要 Central 地址的 roxctl
命令时,请使用 Red Hat Hybrid Cloud Console 的 Instance Details 部分中显示的 Central 实例地址。例如,使用 acs-ABCD12345.acs.rhcloud.com
而不是 acs-data-ABCD12345.acs.rhcloud.com
。
流程
要为 Helm 安装生成包含 secret 的集群 init 捆绑包,请运行以下命令:
roxctl -e "$ROX_CENTRAL_ADDRESS" \ central init-bundles generate <cluster_init_bundle_name> --output \ cluster_init_bundle.yaml
$ roxctl -e "$ROX_CENTRAL_ADDRESS" \ central init-bundles generate <cluster_init_bundle_name> --output \ cluster_init_bundle.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要为 Operator 安装生成包含 secret 的集群 init 捆绑包,请运行以下命令:
roxctl -e "$ROX_CENTRAL_ADDRESS" \ central init-bundles generate <cluster_init_bundle_name> --output-secrets \ cluster_init_bundle.yaml
$ roxctl -e "$ROX_CENTRAL_ADDRESS" \ central init-bundles generate <cluster_init_bundle_name> --output-secrets \ cluster_init_bundle.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要确保您安全地存储此捆绑包,因为它包含 secret。您可以使用同一捆绑包来设置多个安全集群。
7.3.2. 生成 CRS 复制链接链接已复制到粘贴板!
7.3.2.1. 使用 roxctl CLI 生成 CRS 复制链接链接已复制到粘贴板!
您可以使用 roxctl
CLI 创建集群注册 secret。
您必须具有 Admin
用户角色才能创建 CRS。
先决条件
您已配置了
ROX_API_TOKEN
和ROX_CENTRAL_ADDRESS
环境变量:运行以下命令设置
ROX_API_TOKEN
:export ROX_API_TOKEN=<api_token>
$ export ROX_API_TOKEN=<api_token>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令设置
ROX_CENTRAL_ADDRESS
环境变量:export ROX_CENTRAL_ADDRESS=<address>:<port_number>
$ export ROX_CENTRAL_ADDRESS=<address>:<port_number>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
在 RHACS Cloud Service 中,当使用需要 Central 地址的 roxctl
命令时,请使用 Red Hat Hybrid Cloud Console 的 Instance Details 部分中显示的 Central 实例地址。例如,使用 acs-ABCD12345.acs.rhcloud.com
而不是 acs-data-ABCD12345.acs.rhcloud.com
。
流程
要生成 CRS,请运行以下命令:
roxctl -e "$ROX_CENTRAL_ADDRESS" \ central crs generate <crs_name> \ --output <file_name>
$ roxctl -e "$ROX_CENTRAL_ADDRESS" \ central crs generate <crs_name> \
1 --output <file_name>
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要确保您安全地存储这个文件,因为它包含 secret。您可以使用同一文件来设置多个安全集群。您无法检索之前生成的 CR。
根据您选择的输出,命令可能会返回有关 CRS 和 YAML 文件的一些 INFO 消息。
输出示例