4.2. 可选 - 使用 Operator 为 RHACS 配置 Central 配置选项
本主题提供有关您可以使用 Operator 配置的可选配置选项的信息。
4.2.1. 使用 Operator 的中央配置选项
当您创建 Central 实例时,Operator 列出了 Central
自定义资源的以下配置选项。
下表包含外部 PostgreSQL 数据库的设置(技术预览)。
外部 PostgreSQL 支持只是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
4.2.1.1. Central 设置
参数 | Description |
---|---|
|
指定在 |
| 默认情况下,Central 仅提供内部 TLS 证书,这意味着您需要在入口或负载均衡器级别处理 TLS 终止。如果要在 Central 中终止 TLS 并提供自定义服务器证书,您可以指定包含证书和私钥的 secret。 |
|
将此参数设置为 |
| 如果节点选择器选择污点节点,请使用此参数指定 taint toleration key、value 和 effect。此参数主要用于基础架构节点。 |
|
把它设置为 |
| 使用此参数为您的负载均衡器指定自定义端口。 |
| 使用这个参数为您的负载均衡器指定保留的静态 IP 地址。 |
|
把它设置为 |
| 指定用于 Central 路由的自定义主机名。保留为不设置,以接受 OpenShift Container Platform 提供的默认值。 |
|
把它设置为 |
| 使用此选项指定显式节点端口。 |
|
使用 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数配置节点选择器。 |
| 指定将持久数据存储在主机上的主机路径。红帽不推荐使用这个方法。如果需要使用主机路径,则必须将其与节点选择器一起使用。 |
|
要管理的持久性数据的 PVC 名称。如果没有具有指定名称的 PVC,则会创建它。如果没有设置,则默认值为 |
| 通过声明创建持久性卷的大小。默认情况下会自动生成。 |
| 用于 PVC 的存储类的名称。如果您的集群没有配置默认存储类,则必须为此参数提供一个值。 |
| 使用此参数覆盖 Central 的默认资源限值。 |
| 使用此参数覆盖 Central 的默认资源请求。 |
| 使用此参数指定 Central 镜像的镜像 pull secret。 |
|
在 |
|
(技术预览):设置此参数不会部署 Central DB,并且 Central 将使用指定的连接字符串进行连接。如果为此参数指定值,还必须为
|
| 如果节点选择器选择污点节点,请使用此参数为 Central DB 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 指定将持久数据存储在主机上的主机路径。红帽不推荐使用这个方法。如果需要使用主机路径,则必须将其与节点选择器一起使用。 |
|
要管理的持久性数据的 PVC 名称。如果没有具有指定名称的 PVC,则会创建它。如果没有设置,则默认值为 |
| 通过声明创建持久性卷的大小。默认情况下会自动生成。 |
| 用于 PVC 的存储类的名称。如果您的集群没有配置默认存储类,则必须为此参数提供一个值。 |
| 使用此参数覆盖 Central DB 的默认资源限值。 |
| 使用此参数覆盖 Central DB 的默认资源请求。 |
4.2.1.2. 扫描程序设置
参数 | Description |
---|---|
| 如果您希望此扫描程序仅在特定节点上运行,您可以使用此参数配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数覆盖扫描程序的默认资源限值。 |
| 使用此参数覆盖扫描程序的默认资源请求。 |
| 启用后,分析器副本数量会根据指定的限值来动态管理。 |
| 指定使用分析器自动扩展配置的最大副本 |
| 指定使用分析器自动扩展配置的最小副本 |
| 禁用自动扩展时,副本数始终配置为与此值匹配。 |
| 如果您希望此组件只在特定节点上运行,您可以使用此参数配置节点选择器。 |
| 如果节点选择器选择污点节点,请使用此参数为 Scanner DB 指定污点容限键、值和效果。此参数主要用于基础架构节点。 |
| 使用此参数覆盖扫描程序的默认资源限值。 |
| 使用此参数覆盖扫描程序的默认资源请求。 |
|
使用 |
| 如果您不想部署 Scanner,可以使用此参数来禁用它。如果禁用扫描器,本节中的所有其他设置都无效。红帽不推荐为 Kubernetes 扫描器禁用 Red Hat Advanced Cluster Security。 |
4.2.1.3. 常规设置和各种设置
参数 | Description |
---|---|
| 要信任的安全集群的其他可信 CA 证书。这些证书通常用于使用私有证书颁发机构与服务集成。 |
|
指定 |
| 允许为 Central 部署指定自定义注解。 |
| 用于配置环境变量的高级设置。 |
| 配置 RHACS 是否应该以在线或离线模式运行。在离线模式下,禁用对漏洞定义和内核模块的自动更新。 |
|
如果将此选项设置为 |
| 请参阅使用带有覆盖的 Operator 自定义安装 |
4.2.2. 使用带有覆盖的 Operator 自定义安装
了解如何通过 overlays 使用 Operator 方法定制 RHACS 安装。
4.2.2.1. overlays
当 Central
或 SecuredCluster
自定义资源没有以参数的形式公开某些低级别配置选项时,您可以使用 .spec.overlays
字段进行调整。使用此字段来修改这些自定义资源生成的 Kubernetes 资源。
.spec.overlays
字段由一系列补丁组成,按其列出的顺序应用。这些补丁由 Kubernetes 资源上的 Operator 在部署到集群前由 Kubernetes 资源处理。
Central
和 SecuredCluster
中的 .spec.overlays
字段允许用户以任意方式修改低级别 Kubernetes 资源。只有在所需的自定义无法通过 SecuredCluster
或 Central
自定义资源提供时,才使用此功能。
对 .spec.overlays
功能的支持主要是有限的,因为它授予了对 Kubernetes 资源进行 intricate 和高度具体的修改的功能,这可能因一个实施而异。这种自定义级别引入了一个超过标准使用场景的复杂性,这使其难以提供广泛的支持。每个修改都是唯一的,可能在产品的不同版本和配置中以无法预计的方式与 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. 使用入口规则扩展网络策略
在 allow-ext-to-central
网络策略中添加一个入口规则,用于端口 999 流量,如下例所示:
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