3.3. 在 Red Hat OpenShift 中为 RHACS 安装 Central 服务
Central 是包含 RHACS 应用程序管理界面和服务的资源。它处理数据持久性、API 交互和 RHACS 门户访问。您可以使用同一中实例来保护多个 OpenShift Container Platform 或 Kubernetes 集群。
您可以使用以下方法之一在 OpenShift Container Platform 或 Kubernetes 集群上安装 Central:
- 使用 Operator 安装
- 使用 Helm chart 安装
-
使用
roxctl
CLI 安装(除非有需要使用它的特定安装需要)
3.3.1. 使用 Operator 安装 Central 复制链接链接已复制到粘贴板!
使用 OpenShift Container Platform 提供的 OperatorHub 是安装 Red Hat Advanced Cluster Security for Kubernetes 的最简单方法。
前提条件
- 您可以使用具有 Operator 安装权限的账户访问 OpenShift Container Platform 集群。
- 您必须使用 OpenShift Container Platform 4.6 或更高版本。
流程
-
在 Web 控制台中进入 Operators
OperatorHub 页面。 - 如果没有显示 Red Hat Advanced Cluster Security for Kubernetes,在 Filter by keyword 框中输入 Advanced Cluster Security 来查找 Red Hat Advanced Cluster Security for Kubernetes Operator。
- 选择 Red Hat Advanced Cluster Security for Kubernetes Operator 查看详情页。
- 阅读 Operator 信息并单击 Install。
在 Install Operator 页面中:
- 保留安装模式的默认值 All namespaces on the cluster。
- 选择要在其中为 Installed namespace 字段安装 Operator 的特定命名空间。红帽建议在 rhacs-operator 命名空间中安装 Red Hat Advanced Cluster Security for Kubernetes Operator。
为更新批准选择自动或手工。
如果选择自动更新,当有新版 Operator 可用时,Operator Lifecycle Manager(OLM)会自动升级 Operator 的运行实例。
如果选择手动更新,则当有新版 Operator 可用时,OLM 会创建更新请求。作为集群管理员,您必须手动批准更新请求,才能将 Operator 更新至最新版本。
重要如果选择手动更新,在更新安装了 Central 的集群中的 RHACS Operator 时,您必须更新所有安全集群中的 RHACS Operator。安装 Central 的安全集群和集群必须具有相同的版本,以确保最佳功能。
- 点 Install。
验证
-
安装完成后,进入到 Operators
Installed Operators,以验证 Red Hat Advanced Cluster Security for Kubernetes Operator 的状态为 Succeeded。
下一步
-
安装、配置和部署
Central
自定义资源。
3.3.1.2. 使用 Operator 方法安装 Central 复制链接链接已复制到粘贴板!
Red Hat Advanced Cluster Security for Kubernetes 的主要组件名为 Central。您可以使用 Central 自定义资源在 OpenShift Container Platform 上安装 Central
。您只需要部署 Central 一次,并使用同一 Central 安装监控多个独立集群。
当您首次安装 Red Hat Advanced Cluster Security for Kubernetes 时,您必须首先安装 Central
自定义资源,因为 SecuredCluster
自定义资源安装取决于 Central 生成的证书。
前提条件
- 您必须使用 OpenShift Container Platform 4.6 或更高版本。
流程
-
在 OpenShift Container Platform web 控制台中进入到 Operators
Installed Operators 页面。 - 从安装的 Operator 列表中选择 Red Hat Advanced Cluster Security for Kubernetes Operator。
如果您在推荐的命名空间中安装了 Operator,OpenShift Container Platform 会将项目列为
rhacs-operator
。选择 Project: rhacs-operatorCreate project。 警告-
如果您在不同的命名空间中安装了 Operator,则 OpenShift Container Platform 会显示该命名空间的名称,而不是
rhacs-operator
。 -
您必须在自己的项目中安装 Red Hat Advanced Cluster Security for Kubernetes
Central
自定义资源,而不是在rhacs-operator
和openshift-operator
项目中安装 Red Hat Advanced Cluster Security for Kubernetes Operator。
-
如果您在不同的命名空间中安装了 Operator,则 OpenShift Container Platform 会显示该命名空间的名称,而不是
-
输入新项目名称(如
stackrox
),然后点 Create。红帽建议使用stackrox
作为项目名称。 - 在 Provided APIs 部分下,选择 Central。点 Create Central。
-
输入您的
Central
自定义资源的名称并添加您要应用的任何标签。否则,接受可用选项的默认值。 - 点 Create。
如果使用集群范围的代理,Red Hat Advanced Cluster Security for Kubernetes 会使用该代理配置连接到外部服务。
后续步骤
- 验证中央安装。
- 可选:配置中央选项。
-
生成包含集群 secret 的 init 捆绑包,它允许在
Central
和SecuredCluster
资源之间的通信。您需要下载这个捆绑包,使用它来在您要保护的集群中生成资源,并安全地存储它。 - 在您要监控的每个集群中安装安全集群服务。
3.3.1.3. 使用 Operator 方法验证中央安装 复制链接链接已复制到粘贴板!
安装中心后,登录到 RHACS 门户以验证中央安装是否成功。
流程
-
在 OpenShift Container Platform web 控制台中进入到 Operators
Installed Operators 页面。 - 从安装的 Operator 列表中选择 Red Hat Advanced Cluster Security for Kubernetes Operator。
- 选择 Central 选项卡。
-
从 Centrals 列表中,选择
stackrox-central-services
以查看其详细信息。 要获取
admin
用户的密码,您可以:- 点 Admin Password Secret Reference 下的链接。
使用 Red Hat OpenShift CLI 进入 Admin Credentials Info 下列出的命令:
oc -n stackrox get secret central-htpasswd -o go-template='{{index .data "password" | base64decode}}'
$ oc -n stackrox get secret central-htpasswd -o go-template='{{index .data "password" | base64decode}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
使用 Red Hat OpenShift CLI 命令查找到 RHACS 门户的链接:
oc -n stackrox get route central -o jsonpath="{.status.ingress[0].host}"
$ oc -n stackrox get route central -o jsonpath="{.status.ingress[0].host}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 另外,您可以执行以下命令,使用 Red Hat Advanced Cluster Security for Kubernetes web 控制台查找到 RHACS 门户的链接:
-
进入 Networking
Routes。 - 找到 central 路由,再点 Location 列下的 RHACS 门户链接。
-
进入 Networking
-
使用用户名 admin 和密码您在上一步中检索的密码登录 RHACS 门户。在完全配置 RHACS 前(例如,您拥有
Central
资源,并至少安装并配置一个SecuredCluster
资源),仪表板中没有可用的数据。SecuredCluster
资源可以在与Central
资源相同的集群中安装和配置。带有SecuredCluster
资源的集群与 Red Hat Advanced Cluster Management(RHACM)中的受管集群类似。
后续步骤
- 可选:配置中央设置。
-
生成包含集群 secret 的 init 捆绑包,它允许在
Central
和SecuredCluster
资源之间的通信。您需要下载这个捆绑包,使用它来在您要保护的集群中生成资源,并安全地存储它。 - 在您要监控的每个集群中安装安全集群服务。
3.3.2. 使用 Helm chart 安装 Central 复制链接链接已复制到粘贴板!
您可以使用 Helm chart 安装 Central,而无需自定义任何自定义,使用默认值,或使用带有额外自定义配置参数的 Helm chart。
3.3.2.1. 使用 Helm chart 安装 Central,而无需自定义 复制链接链接已复制到粘贴板!
您可以在没有自定义的情况下在集群中安装 RHACS。您必须添加 Helm Chart 仓库并安装 central-services
Helm Chart,以安装 Central 和 Scanner 的集中组件。
3.3.2.1.1. 添加 Helm Chart 仓库 复制链接链接已复制到粘贴板!
流程
添加 RHACS chart 存储库。
helm repo add rhacs https://mirror.openshift.com/pub/rhacs/charts/
$ helm repo add rhacs https://mirror.openshift.com/pub/rhacs/charts/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Red Hat Advanced Cluster Security for Kubernetes 的 Helm 仓库包括用于安装不同组件的 Helm chart,包括:
用于安装集中组件(Central 和 Scanner)的中央服务Helm Chart(
central-services
)。注意您只部署集中式组件一次,并可使用同一安装监控多个独立集群。
安全集群服务 Helm Chart (
secured-cluster-services
) 用于安装针对每个集群(Sensor 和 Admission 控制器)和针对每个节点(Collector) 的组件。注意将 per-cluster 组件部署到要监控的每个集群中,并在要监控的所有节点中部署 per-node 组件。
验证
运行以下命令来验证添加的 chart 存储库:
helm search repo -l rhacs/
$ helm search repo -l rhacs/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.2.1.2. 在不自定义的情况下安装 central-services Helm chart 复制链接链接已复制到粘贴板!
使用以下说明安装 central-services
Helm Chart 以部署集中组件(Central 和 Scanner)。
前提条件
-
您必须有权访问 Red Hat Container Registry。有关从
registry.redhat.io
下载镜像的详情,请参考 Red Hat Container Registry Authentication。
流程
运行以下命令安装 Central 服务并使用一个路由来公开 Central:
helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password> \ --set central.exposure.route.enabled=true
$ helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password> \ --set central.exposure.route.enabled=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 或者,运行以下命令安装 Central 服务并使用一个负载均衡器来公开 Central:
helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password> \ --set central.exposure.loadBalancer.enabled=true
$ helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password> \ --set central.exposure.loadBalancer.enabled=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 或者,运行以下命令安装 Central 服务并使用一个端口转发来公开 Central:
helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password>
$ helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
如果要在需要使用代理连接到外部服务的集群中安装 Red Hat Advanced Cluster Security for Kubernetes,则必须使用
proxyConfig
参数指定代理配置。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
如果您已在安装的命名空间中创建了一个或多个镜像 pull secret,而不是使用用户名和密码,您可以使用
--set imagePullSecrets.useExisting="<pull-secret-1;pull-secret-2>"
。 不要使用镜像 pull secret:
-
如果您要从
quay.io/stackrox-io
或不需要身份验证的专用网络中的 registry 拉取镜像。使用--set imagePullSecrets.allowNone=true
,而不是指定用户名和密码。 -
如果您已经在安装的命名空间中的默认服务帐户中配置了镜像 pull secret。使用
--set imagePullSecrets.useFromDefaultServiceAccount=true
,而不是指定用户名和密码。
-
如果您要从
安装命令的输出包括:
- 自动生成的管理员密码。
- 关于存储所有配置值的说明。
- Helm 生成的任何警告。
3.3.2.2. 使用自定义使用 Helm chart 安装 Central 复制链接链接已复制到粘贴板!
您可以使用 helm install
和 helm upgrade
命令的 Helm Chart 配置参数在 Red Hat OpenShift 集群上安装 RHACS。您可以使用 --set
选项或创建 YAML 配置文件来指定这些参数。
创建以下文件来配置 Helm chart 来安装 Red Hat Advanced Cluster Security for Kubernetes:
-
公共配置文件
values-public.yaml
:使用此文件保存所有非敏感配置选项。 -
专用配置文件
values-private.yaml
:使用此文件保存所有敏感配置选项。确保您安全地存储这个文件。
3.3.2.2.1. 专用配置文件 复制链接链接已复制到粘贴板!
本节列出了 values-private.yaml
文件的可配置参数。这些参数没有默认值。
3.3.2.2.1.1. 镜像 pull secret 复制链接链接已复制到粘贴板!
从 registry 中拉取镜像所需的凭证取决于以下因素:
如果使用自定义 registry,您必须指定这些参数:
-
imagePullSecrets.username
-
imagePullSecrets.password
-
image.registry
-
如果不使用用户名和密码登录到自定义 registry,您必须指定以下参数之一:
-
imagePullSecrets.allowNone
-
imagePullSecrets.useExisting
-
imagePullSecrets.useFromDefaultServiceAccount
-
参数 | Description |
---|---|
| 用于登录到 registry 的帐户的用户名。 |
| 用于登录到 registry 的帐户的密码。 |
|
如果您使用自定义 registry,且允许在没有凭证的情况下拉取镜像,请使用 |
|
以逗号分隔的 secret 列表作为值。例如, |
|
如果您已经在目标命名空间中配置了具有足够范围的镜像 pull secret 的默认服务帐户,请使用 |
3.3.2.2.1.2. 代理配置 复制链接链接已复制到粘贴板!
如果要在需要使用代理连接到外部服务的集群中安装 Red Hat Advanced Cluster Security for Kubernetes,则必须使用 proxyConfig
参数指定代理配置。例如:
参数 | Description |
---|---|
| 您的代理配置。 |
3.3.2.2.1.3. Central 复制链接链接已复制到粘贴板!
Central 的可配置参数。
对于新安装,您可以跳过以下参数:
-
central.jwtSigner.key
-
central.serviceTLS.cert
-
central.serviceTLS.key
-
central.adminPassword.value
-
central.adminPassword.htpasswd
- 当您没有为这些参数指定值时,Helm Chart 会为它们自动生成值。
-
如果要修改这些值,您可以使用
helm upgrade
命令并使用--set
选项指定值。
对于设置管理员密码,您只能使用 central.adminPassword.value
或 central.adminPassword.htpasswd
,但不能同时使用两者。
参数 | Description |
---|---|
| Red Hat Advanced Cluster Security for Kubernetes 应使用的私钥签名 JSON Web 令牌(JWT)进行验证。 |
| Central 服务应用于部署中心的内部证书。 |
| Central 服务应使用的内部证书的私钥。 |
| Central 应该使用的用户面向用户的证书。Red Hat Advanced Cluster Security for Kubernetes 将这个证书用于 RHACS 门户。
|
| Central 应使用面向用户的证书的私钥。
|
| 用于登录到 Red Hat Advanced Cluster Security for Kubernetes 的管理员密码。 |
| 用于登录到 Red Hat Advanced Cluster Security for Kubernetes 的管理员密码。此密码以散列格式存储,使用 bcrypt。 |
如果使用 central.adminPassword.htpasswd
参数,则必须使用 bcrypt 编码的密码哈希。您可以运行 htpasswd -nB admin
命令来生成密码哈希。例如,
htpasswd: | admin:<bcrypt-hash>
htpasswd: |
admin:<bcrypt-hash>
3.3.2.2.1.4. 扫描程序 复制链接链接已复制到粘贴板!
扫描程序的可配置参数。
对于新的安装,您可以跳过以下参数,以及 Helm Chart 自动生成值。否则,如果您升级到新版本,请指定以下参数的值:
-
scanner.dbPassword.value
-
scanner.serviceTLS.cert
-
scanner.serviceTLS.key
-
scanner.dbServiceTLS.cert
-
scanner.dbServiceTLS.key
参数 | Description |
---|---|
| 用于通过 Scanner 数据库进行身份验证的密码。不要修改此参数,因为 Red Hat Advanced Cluster Security for Kubernetes 会自动创建和使用其值。 |
| 扫描程序服务用于部署扫描器的内部证书。 |
| Scanner 服务使用的内部证书的私钥。 |
| Scanner-db 服务应用于部署 Scanner 数据库的内部证书。 |
| Scanner-db 服务应使用的内部证书的私钥。 |
3.3.2.2.2. 公共配置文件 复制链接链接已复制到粘贴板!
本节列出了 values-public.yaml
文件的可配置参数。
3.3.2.2.2.1. 镜像 pull secret 复制链接链接已复制到粘贴板!
镜像拉取 secret 是从 registry 中拉取镜像所需的凭证。
参数 | Description |
---|---|
|
如果您使用自定义 registry,且允许在没有凭证的情况下拉取镜像,请使用 |
|
以逗号分隔的 secret 列表作为值。例如, |
|
如果您已经在目标命名空间中配置了具有足够范围的镜像 pull secret 的默认服务帐户,请使用 |
3.3.2.2.2.2. 镜像 复制链接链接已复制到粘贴板!
镜像声明了配置来设置主 registry,Helm Chart 用来为 central.image
、scanner.image
和 scanner.dbImage
参数解析镜像。
参数 | Description |
---|---|
|
镜像 registry 的地址。使用主机名,如 |
3.3.2.2.2.3. 环境变量 复制链接链接已复制到粘贴板!
Red Hat Advanced Cluster Security for Kubernetes 会自动检测到集群环境,并为 env.openshift
、env.istio
和 env.platform
设置值。仅设置这些值来覆盖自动集群环境检测。
参数 | Description |
---|---|
|
使用 |
|
使用 |
|
安装 Red Hat Advanced Cluster Security for Kubernetes 的平台。将其值设为 |
|
使用 |
3.3.2.2.2.4. 其他可信证书颁发机构 复制链接链接已复制到粘贴板!
Red Hat Advanced Cluster Security for Kubernetes 会自动引用要信任的系统根证书。当 Central 或 Scanner 必须联系到使用您机构中授权或全局可信合作伙伴机构发布的证书的服务时,您可以使用以下参数来指定对这些服务的信任:
参数 | Description |
---|---|
| 指定要信任的根证书颁发机构的 PEM 编码证书。 |
3.3.2.2.2.5. Central 复制链接链接已复制到粘贴板!
Central 的可配置参数。
-
您必须将持久性存储选项指定为
hostPath
或persistentVolumeClaim
。 -
用于公开外部访问的中央部署。您必须指定一个参数,可以是
central.exposure.loadBalancer
、central.exposure.nodePort
或central.exposure.route
。如果没有为这些参数指定任何值,您必须手动公开 Central,或使用端口转发(port-forwarding)访问它。
参数 | Description |
---|---|
|
使用 |
| Central 的端点配置选项。 |
| 如果节点选择器选择污点节点,请使用此参数指定 taint toleration key、value 和 effect。此参数主要用于基础架构节点。 |
| 如果节点选择器选择污点节点,请使用此参数指定 taint toleration key、value 和 effect。此参数主要用于基础架构节点。 |
|
指定 |
|
用于覆盖 Central 镜像的全局 |
|
覆盖默认 Central 镜像名称( |
|
覆盖 Central 镜像默认标签的自定义镜像标签。如果在新安装过程中指定了自己的镜像标签,则您必须在运行 |
|
Central 镜像的完整参考,包括 registry 地址、镜像名称和镜像标签。为此参数设置值会覆盖 |
| Central 的内存请求,以覆盖默认值。 |
| Central 的 CPU 请求,以覆盖默认值。 |
| Central 的内存限值来覆盖默认值。 |
| Central 的 CPU 限制,以覆盖默认值。 |
| Red Hat Advanced Cluster Security for Kubernetes 应该创建数据库卷的节点的路径。红帽不推荐使用这个选项。 |
| 您要使用的持久性卷声明(PVC)的名称。 |
|
使用 |
| 由指定声明管理的持久性卷的大小(以 GiB 为单位)。 |
|
使用 |
| 要公开 Central 的端口号。默认端口号为 443。 |
|
使用 |
| 要公开 Central 的端口号。当您跳过此参数时,OpenShift Container Platform 会自动分配一个端口号。如果您使用节点端口公开 Red Hat Advanced Cluster Security for Kubernetes,红帽建议您不要指定端口号。 |
|
使用 |
3.3.2.2.2.6. 扫描程序 复制链接链接已复制到粘贴板!
扫描程序的可配置参数。
参数 | Description |
---|---|
|
使用 |
|
指定 |
|
为 Scanner 部署创建的副本数。当您将其与 |
|
为 Scanner 配置日志级别。红帽建议您不要更改日志级别的默认值 ( |
|
将节点选择器标签指定为 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
|
使用 |
| 自动扩展的最小副本数。 |
| 自动扩展的最大副本数。 |
| 扫描器的内存请求,以覆盖默认值。 |
| 扫描器的 CPU 请求,以覆盖默认值。 |
| 扫描器的内存限值,以覆盖默认值。 |
| 扫描器的 CPU 限制,以覆盖默认值。 |
| Scanner 数据库部署的内存请求,以覆盖默认值。 |
| 扫描数据库部署的 CPU 请求,以覆盖默认值。 |
| Scanner 数据库部署的内存限值,以覆盖默认值。 |
| 扫描数据库部署的 CPU 限制,以覆盖默认值。 |
| Scanner 镜像的自定义 registry。 |
|
覆盖默认扫描程序镜像名称( |
| Scanner DB 镜像的自定义 registry。 |
|
覆盖默认 Scanner DB 镜像名称 ( |
|
将节点选择器标签指定为 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner DB 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
3.3.2.2.2.7. 自定义 复制链接链接已复制到粘贴板!
使用这些参数为 Red Hat Advanced Cluster Security for Kubernetes 创建的所有对象指定附加属性。
参数 | Description |
---|---|
| 附加到所有对象的自定义标签。 |
| 附加到所有对象的自定义注解。 |
| 附加到所有部署的自定义标签。 |
| 附加到所有部署的自定义注解。 |
| 所有对象中所有容器的自定义环境变量。 |
| 附加到 Central 创建的所有对象的自定义标签。 |
| 附加到中央创建的所有对象的自定义注解。 |
| 附加到所有中央部署的自定义标签。 |
| 附加到所有中央部署的自定义注解。 |
| 所有中央容器的自定义环境变量。 |
| 附加到 Scanner 创建的所有对象的自定义标签。 |
| 附加到 Scanner 创建的所有对象的自定义注解。 |
| 附加到所有 Scanner 部署的自定义标签。 |
| 附加到所有 Scanner 部署的自定义注解。 |
| 所有 Scanner 容器的自定义环境变量。 |
| 附加到 Scanner DB 创建的所有对象的自定义标签。 |
| 附加到 Scanner DB 创建的所有对象的自定义注解。 |
| 附加到所有 Scanner DB 部署的自定义标签。 |
| 附加到所有 Scanner DB 部署的自定义注解。 |
| 所有 Scanner DB 容器的自定义环境变量。 |
您还可以使用:
-
customize.other.service/*.labels
和customize.other.service/*.annotations
参数,为所有对象指定标签和注解。 -
或者,提供特定的服务名称,例如
customize.other.service/central-loadbalancer.labels
和customize.other.service/central-loadbalancer.annotations
作为参数,并设置它们的值。
3.3.2.2.2.8. 高级自定义 复制链接链接已复制到粘贴板!
本节中指定的参数仅用于信息。红帽不支持带有修改后的命名空间和发行版本名称的 Red Hat Advanced Cluster Security for Kubernetes 实例。
参数 | Description |
---|---|
|
使用 |
|
使用 |
3.3.2.2.3. 安装 central-services Helm chart 复制链接链接已复制到粘贴板!
配置 values-public.yaml
和 values-private.yaml
文件后,安装 central-services
Helm Chart 来部署集中式组件(Central 和 Scanner)。
流程
运行以下命令:
helm install -n stackrox --create-namespace \ stackrox-central-services rhacs/central-services \ -f <path_to_values_public.yaml> -f <path_to_values_private.yaml>
$ helm install -n stackrox --create-namespace \ stackrox-central-services rhacs/central-services \ -f <path_to_values_public.yaml> -f <path_to_values_private.yaml>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 使用
-f
选项指定 YAML 配置文件的路径。
3.3.2.3. 在部署 central-services Helm Chart 后更改配置选项 复制链接链接已复制到粘贴板!
在部署 central-services
Helm Chart 后,您可以对任何配置选项进行更改。
流程
-
使用新值更新
values-public.yaml
和values-private.yaml
配置文件。 运行
helm upgrade
命令并使用-f
选项指定配置文件:helm upgrade -n stackrox \ stackrox-central-services rhacs/central-services \ -f <path_to_values_public.yaml> \ -f <path_to_values_private.yaml>
$ helm upgrade -n stackrox \ stackrox-central-services rhacs/central-services \ -f <path_to_values_public.yaml> \ -f <path_to_values_private.yaml>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意您还可以使用
--set
或--set-file
参数指定配置值。但是,这些选项不会被保存,需要您在每次进行更改时手动指定所有选项。
3.3.3. 使用 roxctl CLI 安装 Central 复制链接链接已复制到粘贴板!
对于生产环境,红帽建议使用 Operator 或 Helm chart 来安装 RHACS。除非有需要使用此方法的特定安装需要,否则不要使用 roxctl
安装方法。
3.3.3.1. 安装 roxctl CLI 复制链接链接已复制到粘贴板!
要安装 Red Hat Advanced Cluster Security for Kubernetes,您必须下载二进制文件来安装 roxctl
CLI。您可以在 Linux、Windows 或 macOS 上安装 roxctl
。
3.3.3.1.1. 在 Linux 中安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以按照以下流程在 Linux 上安装 roxctl
CLI 二进制文件。
流程
下载
roxctl
CLI 的最新版本:curl -O https://mirror.openshift.com/pub/rhacs/assets/3.73.5/bin/Linux/roxctl
$ curl -O https://mirror.openshift.com/pub/rhacs/assets/3.73.5/bin/Linux/roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使
roxctl
二进制文件可执行:chmod +x roxctl
$ chmod +x roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
roxctl
二进制文件放到PATH
中的目录中:要查看您的
PATH
,请执行以下命令:echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证您已安装的
roxctl
版本:roxctl version
$ roxctl version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.3.1.2. 在 macOS 上安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以按照以下流程在 macOS 中安装 roxctl
CLI 二进制文件。
流程
下载
roxctl
CLI 的最新版本:curl -O https://mirror.openshift.com/pub/rhacs/assets/3.73.5/bin/Darwin/roxctl
$ curl -O https://mirror.openshift.com/pub/rhacs/assets/3.73.5/bin/Darwin/roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从二进制文件中删除所有扩展属性:
xattr -c roxctl
$ xattr -c roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使
roxctl
二进制文件可执行:chmod +x roxctl
$ chmod +x roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
roxctl
二进制文件放到PATH
中的目录中:要查看您的
PATH
,请执行以下命令:echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证您已安装的
roxctl
版本:roxctl version
$ roxctl version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.3.1.3. 在 Windows 上安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以按照以下流程在 Windows 上安装 roxctl
CLI 二进制文件。
流程
下载
roxctl
CLI 的最新版本:curl -O https://mirror.openshift.com/pub/rhacs/assets/3.73.5/bin/Windows/roxctl.exe
$ curl -O https://mirror.openshift.com/pub/rhacs/assets/3.73.5/bin/Windows/roxctl.exe
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证您已安装的
roxctl
版本:roxctl version
$ roxctl version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.3.2. 使用交互式安装程序 复制链接链接已复制到粘贴板!
使用交互式安装程序为您的环境生成所需的 secret、部署配置和部署脚本。
流程
运行交互式 install 命令:
roxctl central generate interactive
$ roxctl central generate interactive
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要使用
roxctl
CLI 安装 Red Hat Advanced Cluster Security for Kubernetes 会创建 PodSecurityPolicy (PSP)对象,以便向后兼容。如果要在 Kubernetes 版本 1.25 及更新版本上,或在 OpenShift Container Platform version 4.12 和更新版本上安装 RHACS,则必须禁用 PSP 对象的创建。要做到这一点,为roxctl central generate
和roxctl sensor generate
命令指定--enable-pod-security-policies
选项为false
。按 Enter 接受提示的默认值或根据需要输入自定义值。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 警告在 OpenShift Container Platform 中,对于 hostPath 卷,您必须修改 SELinux 策略以允许访问主机和容器共享的目录。这是因为 SELinux 默认阻止目录共享。要修改 SELinux 策略,请运行以下命令:
sudo chcon -Rt svirt_sandbox_file_t <full_volume_path>
$ sudo chcon -Rt svirt_sandbox_file_t <full_volume_path>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 但是,红帽不推荐修改 SELinux 策略,在 OpenShift Container Platform 上安装时使用 PVC。
在完成时,安装程序会创建一个名为 central-bundle 的文件夹,其中包含用于部署 Central 所需的 YAML 清单和脚本。另外,它显示了您需要运行的脚本的屏幕说明,以部署其他可信证书颁发机构、中部和扫描器,以及登录 RHACS 门户的身份验证说明(如果您回答提示时未提供密码)。
3.3.3.3. 运行中央安装脚本 复制链接链接已复制到粘贴板!
运行交互式安装程序后,您可以运行 setup.sh
脚本来安装 Central。
流程
运行
setup.sh
脚本来配置镜像 registry 访问:./central-bundle/central/scripts/setup.sh
$ ./central-bundle/central/scripts/setup.sh
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建所需资源:
oc create -R -f central-bundle/central
$ oc create -R -f central-bundle/central
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查部署进度:
oc get pod -n stackrox -w
$ oc get pod -n stackrox -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Central 运行后,找到 RHACS 门户 IP 地址并在浏览器中打开。根据您在回答提示时选择的风险,请使用以下方法之一获取 IP 地址。
Expand 公开方法 命令 地址 Example Route(路由)
oc -n stackrox get route central
在输出中
HOST/PORT
列下的地址https://central-stackrox.example.route
节点端口
oc get node -owide && oc -n stackrox get svc central-loadbalancer
任何节点的 IP 或主机名,在服务显示的端口中
https://198.51.100.0:31489
Load Balancer
oc -n stackrox get svc central-loadbalancer
在端口 443 上为服务显示 EXTERNAL-IP 或主机名
https://192.0.2.0
无
central-bundle/central/scripts/port-forward.sh 8443
https://localhost:8443
https://localhost:8443
如果您在互动安装过程中选择了自动生成的密码,您可以运行以下命令将其记录到 Central:
cat central-bundle/password
$ cat central-bundle/password