5.3. 在其他平台上为 RHACS 生成并应用 init 捆绑包
在集群中安装 SecuredCluster
资源前,您必须创建一个 init 捆绑包。安装并配置 SecuredCluster
的集群,然后使用此捆绑包与 Central 进行身份验证。您可以使用 RHACS 门户或 roxctl
CLI 创建 init 捆绑包。然后,您可以使用它应用 init 捆绑包来创建资源。
您必须具有 Admin
用户角色才能创建 init 捆绑包。
5.3.1. 生成 init 捆绑包
5.3.1.1. 使用 RHACS 门户生成 init 捆绑包
您可以使用 RHACS 门户创建包含 secret 的 init 捆绑包。
您必须具有 Admin
用户角色才能创建 init 捆绑包。
流程
根据您的暴露的方法查找 RHACS 门户地址:
对于路由:
$ oc get route central -n stackrox
对于负载均衡器:
$ oc get service central-loadbalancer -n stackrox
对于端口转发:
运行以下命令:
$ oc port-forward svc/central 18443:443 -n stackrox
-
进入到
https://localhost:18443/
。
-
在 RHACS 门户网站中,进入 Platform Configuration
Integrations。 - 进入 Authentication Tokens 部分,再点 Cluster Init Bundle。
- 点 Generate bundle。
为集群 init 捆绑包输入一个名称并点 Generate。
- 如果使用 Helm chart 安装,请点 Download Helm Values File 下载生成的捆绑包。
- 如果使用 Operator 安装,请点 Download Kubernetes Secret File 下载生成的捆绑包。
安全地存储此捆绑包,因为它包含 secret。您可以使用同一捆绑包来创建多个安全集群。
后续步骤
- 通过在安全集群中创建资源来应用 init 捆绑包。
- 在每个集群中安装安全的集群服务。
5.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>
运行以下命令设置
ROX_CENTRAL_ADDRESS
环境变量:$ export ROX_CENTRAL_ADDRESS=<address>:<port_number>
流程
要生成包含 Helm 安装 secret 的集群 init 捆绑包,请运行以下命令:
$ roxctl -e "$ROX_CENTRAL_ADDRESS" \ central init-bundles generate <cluster_init_bundle_name> \ --output cluster_init_bundle.yaml
要生成包含 Operator 安装 secret 的集群 init 捆绑包,请运行以下命令:
$ roxctl -e "$ROX_CENTRAL_ADDRESS" \ central init-bundles generate <cluster_init_bundle_name> \ --output-secrets cluster_init_bundle.yaml
重要确保您安全地存储此捆绑包,因为它包含 secret。您可以使用同一捆绑包来设置多个安全集群。
5.3.1.3. 使用 init 捆绑包创建资源
在安装安全集群前,您必须使用 init 捆绑包在集群中创建所需的资源,以允许安全集群上的服务与 Central 通信。
如果使用 Helm chart 安装,请不要执行此步骤。使用 Helm 完成安装 ; 请参阅"使用 Helm chart 在安全集群中安装 RHACS"。
先决条件
- 您必须生成了一个包含 secret 的 init 捆绑包。
流程
要创建资源,请执行以下步骤之一:
- 在 OpenShift Container Platform Web 控制台中,在顶部菜单中点 + 打开 Import YAML 页面。您可以拖动 init 捆绑包文件或将其内容复制并粘贴到编辑器中,然后点 Create。
使用 Red Hat OpenShift CLI 运行以下命令来创建资源:
$ oc create -f <init_bundle>.yaml \ 1 -n <stackrox> 2
使用
kubectl
CLI,运行以下命令来创建资源:$ kubectl create namespace stackrox 1 $ kubectl create -f <init_bundle>.yaml \ 2 -n <stackrox> 3
5.3.2. 后续步骤
- 在您要监控的所有集群中安装 RHACS 安全集群服务。