4.2. 使用 Operator 为 RHACS 配置 Central 配置选项
在使用 Operator 安装 Central 实例时,您可以配置可选设置。
4.2.1. 使用 Operator 的中央配置选项
当您创建 Central 实例时,Operator 列出了 Central
自定义资源的以下配置选项。
下表包含外部 PostgreSQL 数据库的设置。
4.2.1.1. Central 设置
参数 | Description |
---|---|
|
指定在 |
| 默认情况下,Central 仅提供内部 TLS 证书,这意味着您需要在入口或负载均衡器级别处理 TLS 终止。如果要在 Central 中终止 TLS 并提供自定义服务器证书,您可以指定包含证书和私钥的 secret。 |
|
将此参数设置为 |
| 如果节点选择器选择污点节点,请使用此参数指定 taint toleration key、value 和 effect。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
|
把它设置为 |
| 使用此参数为您的负载均衡器指定自定义端口。 |
| 使用这个参数为您的负载均衡器指定保留的静态 IP 地址。 |
|
把它设置为 |
| 指定用于 Central 路由的自定义主机名。保留为不设置,以接受 OpenShift Container Platform 提供的默认值。 |
|
把它设置为 |
| 使用此选项指定显式节点端口。 |
|
使用 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数来配置节点选择器。 |
| 指定将持久数据存储在主机上的主机路径。红帽不推荐使用它。如果需要使用主机路径,则必须将其与节点选择器一起使用。 |
|
要管理的持久性数据的 PVC 名称。如果没有具有指定名称的 PVC,则会创建它。如果没有设置,则默认值为 |
| 通过声明创建持久性卷的大小。默认情况下会自动生成。 |
| 用于 PVC 的存储类的名称。如果您的集群没有配置默认存储类,则必须为此参数提供一个值。 |
| 使用此参数覆盖 Central 的默认资源限值。 |
| 使用此参数覆盖 Central 的默认资源请求。 |
| 使用此参数指定 Central 镜像的镜像 pull secret。 |
|
在 |
|
设置此参数不会部署 Central DB,Central 将使用指定的连接字符串进行连接。如果为此参数指定值,还必须为
|
| 如果节点选择器选择污点节点,请使用此参数为 Central DB 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
| 指定将持久数据存储在主机上的主机路径。红帽不推荐使用它。如果需要使用主机路径,则必须将其与节点选择器一起使用。 |
|
要管理的持久性数据的 PVC 名称。如果没有具有指定名称的 PVC,则会创建它。如果没有设置,则默认值为 |
| 通过声明创建持久性卷的大小。默认情况下会自动生成。 |
| 用于 PVC 的存储类的名称。如果您的集群没有配置默认存储类,则必须为此参数提供一个值。 |
| 使用此参数覆盖 Central 和 Central DB 之间的默认最小连接池大小。默认值为 10。 |
| 使用此参数覆盖 Central 和 Central DB 之间的默认最大连接池大小。默认值为 90。确保这个值不超过 Central DB 支持的最大连接数:
|
| 使用此参数覆盖 Central DB 的默认资源限值。 |
| 使用此参数覆盖 Central DB 的默认资源请求。 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数来配置节点选择器。 |
4.2.1.2. stackrox Scanner 设置
参数 | Description |
---|---|
| 如果您希望此扫描程序仅在特定节点上运行,您可以使用此参数来配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 StackRox Scanner 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
| 使用此参数覆盖 StackRox Scanner 的默认资源限值。 |
| 使用此参数覆盖 StackRox Scanner 的默认资源请求。 |
| 启用后,分析器副本数量会根据指定的限值来动态管理。 |
| 指定分析器自动扩展配置中使用的最大副本 |
| 指定在分析器自动扩展配置中使用的最小副本 |
| 禁用自动扩展时,副本数始终配置为与此值匹配。 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数来配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 StackRox Scanner DB 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
| 使用此参数覆盖 StackRox Scanner DB 的默认资源限值。 |
| 使用此参数覆盖 StackRox Scanner DB 的默认资源请求。 |
|
使用 |
| 如果您不想部署 StackRox Scanner,您可以使用此参数禁用它。如果您禁用 StackRox Scanner,则本节中的所有其他设置都无效。红帽不推荐禁用 Red Hat Advanced Cluster Security for Kubernetes StackRox Scanner。如果您启用了 Scanner V4,请不要禁用 StackRox Scanner。扫描程序 V4 要求 StackRox Scanner 也启用,以提供必要的扫描功能。 |
4.2.1.3. 扫描程序 V4 设置
参数 | 描述 |
---|---|
| 如果您希望此组件只在特定节点上运行,您可以使用此参数来配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner V4 DB 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
| 使用此参数覆盖 Scanner V4 DB 的默认资源限值。 |
| 使用此参数覆盖 Scanner V4 DB 的默认资源请求。 |
|
为 Scanner V4 管理持久性数据的 PVC 名称。如果没有具有指定名称的 PVC,则会创建它。如果没有设置,则默认值为 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数来配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner V4 Indexer 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
| 使用此参数覆盖 Scanner V4 Indexer 的默认资源限值。 |
| 使用此参数覆盖 Scanner V4 Indexer 的默认资源请求。 |
| 启用后,Scanner V4 Indexer 副本的数量会根据指定的限值来动态管理。 |
| 指定 Scanner V4 Indexer 自动扩展配置中使用的最大副本。 |
| 指定 Scanner V4 Indexer 自动扩展配置中使用的最小副本。 |
| 当 Scanner V4 Indexer 禁用自动扩展时,副本数始终配置为与这个值匹配。 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数来配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner V4 Matcher 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数将主机和 IP 地址注入 pod 的主机文件中。 |
| 使用此参数覆盖 Scanner V4 Matcher 的默认资源限值。 |
| 使用此参数覆盖 Scanner V4 Matcher 的默认资源请求。 |
| 启用后,Scanner V4 Matcher 副本的数量会根据指定的限值来动态管理。 |
| 指定 Scanner V4 Matcher 自动扩展配置中使用的最大副本。 |
| 指定 Scanner V4 Matcher 自动扩展配置中使用的最小副本。 |
| 当 Scanner V4 Matcher 禁用自动扩展时,副本数始终配置为与这个值匹配。 |
|
为 Scanner V4 配置监控端点。监控端点允许其他服务从与 Prometheus 兼容的格式提供的 Scanner V4 收集指标。使用 |
|
启用 Scanner V4。默认值为 |
4.2.1.4. 常规设置和各种设置
参数 | 描述 |
---|---|
| 允许为 Central 部署指定自定义注解。 |
| 用于配置环境变量的高级设置。 |
| 配置 RHACS 是否应该以在线或离线模式运行。在离线模式下,禁用对漏洞定义和内核模块的自动更新。 |
|
指定 |
|
如果将此选项设置为 |
|
要在网络级别提供安全性,RHACS 在安装了 Central 的命名空间中创建默认 警告 禁用创建默认网络策略可能会破坏 RHACS 组件之间的通信。如果禁用创建默认策略,则必须创建自己的网络策略来允许此通信。 |
| 请参阅"使用带有 overlays 的 Operator 自定义安装"。 |
| 要信任的安全集群的其他可信 CA 证书。这些证书通常用于使用私有证书颁发机构与服务集成。 |
4.2.2. 使用带有 overlay 的 Operator 自定义安装
了解如何使用带有 overlay 的 Operator 方法定制 RHACS 安装。
4.2.2.1. overlays
当 Central
或 SecuredCluster
自定义资源不公开某些低级别配置选项时,您可以使用 .spec.overlays
字段进行调整。使用此字段修改由这些自定义资源生成的 Kubernetes 资源。
.spec.overlays
字段包含一系列补丁,按列出的顺序应用。这些补丁由 Operator 在部署到集群前由 Kubernetes 资源进行处理。
Central
和 SecuredCluster
中的 .spec.overlays
字段允许用户以任意方式修改低级别 Kubernetes 资源。只有在通过 SecuredCluster
或 Central
自定义资源不可用时,才使用此功能。
对 .spec.overlays
功能的支持主要受限制,因为它授予对 Kubernetes 资源进行内部化和高度特定修改的能力,这可能会显著地从一个实施到另一个实现。这种定制的定制增加了超越标准使用方案的复杂性,从而难以提供广泛的支持。每个修改都是唯一的,在产品的不同版本和配置中都无法预测地与 Kubernetes 系统交互。这种可变性意味着故障排除和保证这些自定义的稳定性需要一定程度的专业知识和理解,特定于每个个人设置。因此,虽然此功能可以支持定制 Kubernetes 资源来满足精确的需求,但必须假定为确保配置的兼容性和稳定性,特别是在升级或更改底层产品的过程中。
以下示例显示了覆盖的结构:
overlays: - apiVersion: v1 1 kind: ConfigMap 2 name: my-configmap 3 patches: - path: .data 4 value: | 5 key1: data2 key2: data2
4.2.2.1.1. 添加覆盖
对于自定义,您可以在 Central
或 SecuredCluster
自定义资源中添加覆盖。使用 OpenShift CLI (oc
)或 OpenShift Container Platform Web 控制台进行修改。
如果覆盖没有按预期工作,请检查 RHACS Operator 日志是否有语法错误或问题记录。
4.2.2.2. 覆盖示例
4.2.2.2.1. 为 Central ServiceAccount 指定 EKS pod 角色 ARN
为 中央
ServiceAccount 添加 Amazon Elastic Kubernetes Service (EKS) pod 角色 Amazon Resource Name (ARN)注解,如下例所示:
apiVersion: platform.stackrox.io kind: Central metadata: name: central spec: # ... overlays: - apiVersion: v1 kind: ServiceAccount name: central patches: - path: metadata.annotations.eks\.amazonaws\.com/role-arn value: "\"arn:aws:iam:1234:role\""
4.2.2.2.2. 将环境变量注入到中央部署中
将环境变量注入 中央
部署中,如下例所示:
apiVersion: platform.stackrox.io kind: Central metadata: name: central spec: # ... overlays: - apiVersion: apps/v1 kind: Deployment name: central patches: - path: spec.template.spec.containers[name:central].env[-1] value: | name: MY_ENV_VAR value: value
4.2.2.2.3. 使用入口规则扩展网络策略
为端口 999 流量在 allow-ext-to-central
网络策略中添加入站规则,如下例所示:
apiVersion: platform.stackrox.io kind: Central metadata: name: central spec: # ... overlays: - apiVersion: networking.k8s.io/v1 kind: NetworkPolicy name: allow-ext-to-central patches: - path: spec.ingress[-1] value: | ports: - port: 999 protocol: TCP
4.2.2.2.4. 修改 ConfigMap 数据
修改 central-endpoints
ConfigMap 数据,如下例所示:
apiVersion: platform.stackrox.io kind: Central metadata: name: central spec: # ... overlays: - apiVersion: v1 kind: ConfigMap name: central-endpoints patches: - path: data value: | endpoints.yaml: | disableDefault: false
4.2.2.2.5. 将容器添加到 中央
部署中
在 中央
部署中添加新容器,如下例所示:
apiVersion: platform.stackrox.io kind: Central metadata: name: central spec: # ... overlays: - apiVersion: apps/v1 kind: Deployment name: central patches: - path: spec.template.spec.containers[-1] value: | name: nginx image: nginx ports: - containerPort: 8000 name: http protocol: TCP