第 12 章 FlowCollector API 参考


FlowCollector 是网络流集合 API 的 Schema,它试用并配置底层部署。

12.1. FlowCollector API 规格

描述
FlowCollector 是网络流集合 API 的 schema,它试用并配置底层部署。
类型
object
属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

对象

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

定义 FlowCollector 资源所需状态。

*:在本文档中声明的"不支持"或"弃用"的功能代表红帽不正式支持这些功能。例如,这些功能可能由社区提供,并在没有正式维护协议的情况下被接受。产品维护人员可能只为这些功能提供一些支持。

12.1.1. .metadata

描述
标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
类型
object

12.1.2. .spec

描述

定义 FlowCollector 资源所需状态。

*:在本文档中声明的"不支持"或"弃用"的功能代表红帽不正式支持这些功能。例如,这些功能可能由社区提供,并在没有正式维护协议的情况下被接受。产品维护人员可能只为这些功能提供一些支持。

类型
object
属性类型描述

agent

object

流提取的代理配置。

consolePlugin

object

ConsolePlugin 定义与 OpenShift Container Platform 控制台插件相关的设置(如果可用)。

deploymentModel

string

deploymentModel 定义所需的用于流处理的部署类型。可能的值有:

- Direct(默认)直接从代理监听流处理器。

- Kafka 在处理器使用前,将流发送到 Kafka 管道。

Kafka 可以提供更好的可扩展性、弹性和高可用性(更多详情,请参阅 https://www.redhat.com/en/topics/integration/what-is-apache-kafka)。

exporters

数组

exporters 为自定义消耗或存储定义了额外的可选导出器。

kafka

object

Kafka 配置,允许使用 Kafka 作为流集合管道的一部分。当 spec.deploymentModelKafka 时可用。

loki

object

loki,流存储、客户端设置。

namespace

string

部署 Network Observability pod 的命名空间。

processor

object

processor 定义从代理接收流的组件设置,增强它们,生成指标,并将它们转发到 Loki 持久层和/或任何可用的导出器。

prometheus

object

prometheus 定义 Prometheus 设置,如用于从控制台插件获取指标的 querier 配置。

12.1.3. .spec.agent

描述
流提取的代理配置。
类型
object
属性类型描述

ebpf

object

ebpf 描述了当 spec.agent.type 设置为 eBPF 时,与基于 eBPF 的流报告程序相关的设置。

type

string

type [弃用 (*)] 选择流追踪代理。在以前的版本中,此字段可以用于选择使用 eBPFIPFIX。现在,因为只允许使用 eBPF,此字段已弃用,计划在以后的 API 版本中删除。

12.1.4. .spec.agent.ebpf

描述
ebpf 描述了当 spec.agent.type 设置为 eBPF 时,与基于 eBPF 的流报告程序相关的设置。
类型
object
属性类型描述

advanced

object

advanced 允许设置 eBPF 代理的内部配置的一些方面。本节主要用于调试和精细的性能优化,如 GOGCGOMAXPROCS 环境变量。在设置这些值时,您需要自己考虑相关的风险。

cacheActiveTimeout

string

cacheActiveTimeout 是报告者在发送前聚合流的最大周期。增加 cacheMaxFlowscacheActiveTimeout 可能会降低网络流量开销和 CPU 负载,但您可以预期更高的内存消耗和流集合中的延迟增加。

cacheMaxFlows

整数

cacheMaxFlows 是聚合中的最大流数;达到时,报告者会发送流。增加 cacheMaxFlowscacheActiveTimeout 可能会降低网络流量开销和 CPU 负载,但您可以预期更高的内存消耗和流集合中的延迟增加。

excludeInterfaces

数组(字符串)

excludeInterfaces 包含从流追踪中排除的接口名称。条目用斜杠括起,如 /br-/,与正则表达式匹配。否则,它将匹配为区分大小写的字符串。

功能

数组(字符串)

要启用的额外功能列表。它们都默认禁用。启用其他功能可能会对性能有影响。可能的值有:

PacketDrop: 启用数据包丢弃日志功能。此功能需要挂载内核调试文件系统,因此 eBPF pod 必须以特权方式运行。如果没有设置 spec.agent.ebpf.privileged 参数,会报告一个错误。

- DNSTracking:启用 DNS 跟踪功能。

- FlowRTT:从 TCP 流量在 eBPF 代理中启用流延迟 (sRTT)。

flowFilter

object

flowFilter 定义有关流过滤的 eBPF 代理配置。

imagePullPolicy

string

imagePullPolicy 是上面定义的镜像的 Kubernetes pull 策略

interfaces

数组(字符串)

接口 包含从中收集流的接口名称。如果为空,代理会获取系统中的所有接口,但 excludeInterfaces 中列出的接口除外。条目用斜杠括起,如 /br-/,与正则表达式匹配。否则,它将匹配为区分大小写的字符串。

kafkaBatchSize

整数

kafkaBatchSize 在发送到分区前限制请求的最大大小(以字节为单位)。如果不使用 Kafka,则忽略。默认:1MB。

logLevel

string

Loglevel 定义 Network Observability eBPF 代理的日志级别

metrics

object

metrics 定义了有关指标的 eBPF 代理配置。

privileged

布尔值

eBPF Agent 容器的特权模式。当忽略或设置为 false 时,Operator 会将粒度功能(BPF、PERFMON、NET_ADMIN、SYS_RESOURCE)设置为容器。如果出于某种原因而无法设置这些功能,例如,如果旧的内核版本不知道 CAP_BPF,那么您可以打开此模式以获取更多全局权限。有些代理功能需要特权模式,如数据包丢弃跟踪(请参阅 功能)和 SR-IOV 支持。

resources

object

resources 是此容器所需的计算资源。如需更多信息,请参阅 https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

sampling

整数

流报告器的抽样率。100 表示发送 100 个流中的一个。0 或 1 表示所有流都是抽样的。

12.1.5. .spec.agent.ebpf.advanced

描述
advanced 允许设置 eBPF 代理的内部配置的一些方面。本节主要用于调试和精细的性能优化,如 GOGCGOMAXPROCS 环境变量。在设置这些值时,您需要自己考虑相关的风险。
类型
object
属性类型描述

env

对象(字符串)

env 允许将自定义环境变量传递给底层组件。对于传递一些非常严格的性能调整选项(如 GOGCGOMAXPROCS )非常有用,它们不应作为 FlowCollector 描述符的一部分公开,因为它们仅在边缘调试或支持场景中有用。

scheduling

object

调度控制如何在节点上调度 pod。

12.1.6. .spec.agent.ebpf.advanced.scheduling

描述
调度控制如何在节点上调度 pod。
类型
object
属性类型描述

关联性

对象

如果指定,pod 的调度限制。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling

nodeSelector

对象(字符串)

nodeSelector 只允许将 pod 调度到具有每个指定标签的节点上。有关文档,请参阅 https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

priorityClassName

string

如果指定,指示 pod 的优先级。有关文档,请参阅 https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#how-to-use-priority-and-preemption。如果没有指定,则使用默认优先级,如果没有默认值,则使用零。

容限(tolerations)

数组

tolerations 是一个容限 (toleration) 列表,允许 pod 调度到具有匹配污点的节点。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling

12.1.7. .spec.agent.ebpf.advanced.scheduling.affinity

描述
如果指定,pod 的调度限制。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling
类型
object

12.1.8. .spec.agent.ebpf.advanced.scheduling.tolerations

描述
tolerations 是一个容限 (toleration) 列表,允许 pod 调度到具有匹配污点的节点。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling
类型
数组

12.1.9. .spec.agent.ebpf.flowFilter

描述
flowFilter 定义有关流过滤的 eBPF 代理配置。
类型
object
属性类型描述

action

string

action 定义对与过滤匹配的流执行的操作。

cidr

string

cidr 定义用于过滤流的 IP CIDR。示例:10.10.10.0/24100:100:100:100::/64

destPorts

integer-or-string

destPorts 定义要过滤流的目标端口。要过滤一个单一端口,使用一个整数值。例如:destPorts: 80。要过滤一系列端口,使用"开始-结束"范围形式的字符串。例如:destPorts: "80-100"

direction

string

direction 定义要过滤流的方向。

enable

布尔值

enable 设置为 true 以启用 eBPF 流过滤功能。

icmpCode

整数

icmpCode,用于互联网控制消息协议(ICMP)流量,定义要过滤流的 ICMP 代码。

icmpType

整数

icmptype,ICMP 流量定义要过滤流的 ICMP 类型。

peerIP

string

peerIP 定义要过滤流的 IP 地址。示例: 10.10.10.10

ports

integer-or-string

ports 定义要过滤流的端口。它用于源和目标端口。要过滤一个单一端口,使用一个整数值。例如:ports: 80。要过滤一系列端口,使用"开始-结束"范围形式的字符串。例如:ports: "80-100"

protocol

string

protocol 定义要过滤流的协议。

sourcePorts

integer-or-string

sourcePorts 定义要过滤流的源端口。要过滤一个单一端口,使用一个整数值。例如:sourcePorts: 80。要过滤一系列端口,使用"开始-结束"范围形式的字符串。例如:sourcePorts: "80-100"

12.1.10. .spec.agent.ebpf.metrics

描述
metrics 定义了有关指标的 eBPF 代理配置。
类型
object
属性类型描述

disableAlerts

数组(字符串)

disableAlerts 是应禁用的警报列表。可能的值有:

NetObservDroppedFlows,它会在 eBPF 代理丢弃流时触发,例如当 BPF hashmap 已满或触发容量限制器时。

enable

布尔值

enable 设置为 false 以禁用 eBPF 代理指标集合。它会被默认启用。

server

object

Prometheus scraper 的指标服务器端点配置。

12.1.11. .spec.agent.ebpf.metrics.server

描述
Prometheus scraper 的指标服务器端点配置。
类型
object
属性类型描述

port

整数

指标服务器 HTTP 端口。

tls

object

TLS 配置。

12.1.12. .spec.agent.ebpf.metrics.server.tls

描述
TLS 配置。
类型
object
属性类型描述

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过提供的证书的客户端侧验证。如果设置为 true,则忽略 providedCaFile 字段。

provided

object

type 设置为 Provided 时的 TLS 配置。

providedCaFile

object

当将 type 设置为 Provided 时,对 CA 文件的引用。

type

string

选择 TLS 配置类型:

- Disabled (默认)没有为端点配置 TLS。- Provided 来手动提供证书文件和密钥文件。[不支持 (*)]. - Auto 使用 OpenShift Container Platform 字段生成的证书,用于注解。

12.1.13. .spec.agent.ebpf.metrics.server.tls.provided

描述
type 设置为 Provided 时的 TLS 配置。
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.14. .spec.agent.ebpf.metrics.server.tls.providedCaFile

描述
当将 type 设置为 Provided 时,对 CA 文件的引用。
类型
object
属性类型描述

file

string

配置映射或 secret 中的文件名。

name

string

包含该文件的配置映射或 secret 的名称。

namespace

string

包含该文件的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

文件引用的 type: "configmap" 或 "secret"。

12.1.15. .spec.agent.ebpf.resources

描述
resources 是此容器所需的计算资源。如需更多信息,请参阅 https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
类型
object
属性类型描述

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

12.1.16. .spec.consolePlugin

描述
ConsolePlugin 定义与 OpenShift Container Platform 控制台插件相关的设置(如果可用)。
类型
object
属性类型描述

advanced

object

advanced 允许设置控制台插件的内部配置的一些方面。本节主要用于调试和精细的性能优化,如 GOGCGOMAXPROCS 环境变量。在设置这些值时,您需要自己考虑相关的风险。

autoscaler

object

Pod 横向自动扩展的 autoscaler 规格来为插件部署设置。请参阅 HorizontalPodAutoscaler 文档(autoscaling/v2)。

enable

布尔值

启用 console 插件部署。

imagePullPolicy

string

imagePullPolicy 是上面定义的镜像的 Kubernetes pull 策略

logLevel

string

控制台插件后端的 logLevel

portNaming

object

portNaming 定义端口到服务名称转换的配置

quickFilters

数组

quickFilters 为 Console 插件配置快速过滤器预设置

replicas

整数

replicas 定义要启动的副本(pod)数。

resources

object

resources,根据此容器所需的计算资源。如需更多信息,请参阅 https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

12.1.17. .spec.consolePlugin.advanced

描述
advanced 允许设置控制台插件的内部配置的一些方面。本节主要用于调试和精细的性能优化,如 GOGCGOMAXPROCS 环境变量。在设置这些值时,您需要自己考虑相关的风险。
类型
object
属性类型描述

args

数组(字符串)

args 允许将自定义参数传递给底层组件。对于覆盖某些参数(如 url 或配置路径)非常有用,它们不应作为 FlowCollector 描述符的一部分公开,因为它们仅在边缘调试或支持场景中有用。

env

对象(字符串)

env 允许将自定义环境变量传递给底层组件。对于传递一些非常严格的性能调整选项(如 GOGCGOMAXPROCS )非常有用,它们不应作为 FlowCollector 描述符的一部分公开,因为它们仅在边缘调试或支持场景中有用。

port

整数

port 是插件服务端口。不要使用 9002,它为指标保留。

register

布尔值

register 允许(设置为 true 时),在 OpenShift Container Platform Console Operator 中自动注册提供的控制台插件。当设置为 false 时,您仍然可以使用以下命令编辑 console.operator.openshift.io/cluster 来手动注册它: oc patch console.operator.openshift.io cluster --type='json' -p '[{"op": "add", "path": "/spec/plugins/-", "value": "netobserv-plugin"}]'

scheduling

object

scheduling 控制如何在节点上调度 pod。

12.1.18. .spec.consolePlugin.advanced.scheduling

描述
scheduling 控制如何在节点上调度 pod。
类型
object
属性类型描述

关联性

对象

如果指定,pod 的调度限制。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling

nodeSelector

对象(字符串)

nodeSelector 只允许将 pod 调度到具有每个指定标签的节点上。有关文档,请参阅 https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

priorityClassName

string

如果指定,指示 pod 的优先级。有关文档,请参阅 https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#how-to-use-priority-and-preemption。如果没有指定,则使用默认优先级,如果没有默认值,则使用零。

容限(tolerations)

数组

tolerations 是一个容限 (toleration) 列表,允许 pod 调度到具有匹配污点的节点。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling

12.1.19. .spec.consolePlugin.advanced.scheduling.affinity

描述
如果指定,pod 的调度限制。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling
类型
object

12.1.20. .spec.consolePlugin.advanced.scheduling.tolerations

描述
tolerations 是一个容限 (toleration) 列表,允许 pod 调度到具有匹配污点的节点。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling
类型
数组

12.1.21. .spec.consolePlugin.autoscaler

描述
Pod 横向自动扩展的 autoscaler 规格来为插件部署设置。请参阅 HorizontalPodAutoscaler 文档(autoscaling/v2)。
类型
object

12.1.22. .spec.consolePlugin.portNaming

描述
portNaming 定义端口到服务名称转换的配置
类型
object
属性类型描述

enable

布尔值

启用 console 插件端口到服务名称转换

portNames

对象(字符串)

portNames 定义了在控制台中使用的额外端口名称,例如 portNames: {"3100": "loki"}

12.1.23. .spec.consolePlugin.quickFilters

描述
quickFilters 为 Console 插件配置快速过滤器预设置
类型
数组

12.1.24. .spec.consolePlugin.quickFilters[]

描述
QuickFilter 为控制台的快速过滤器定义预设置配置
类型
object
必填
  • filter
  • name
属性类型描述

default

布尔值

default 定义默认是否应激活此过滤器

filter

对象(字符串)

filter 是一组在选择此过滤器时要设置的键和值。每个键都可以与使用组合字符串的值列表相关,例如 filter: {"src_namespace": "namespace1,namespace2"}

name

string

过滤器的名称,在控制台中显示

12.1.25. .spec.consolePlugin.resources

描述
resources,根据此容器所需的计算资源。如需更多信息,请参阅 https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
类型
object
属性类型描述

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

12.1.26. .spec.exporters

描述
exporters 为自定义消耗或存储定义了额外的可选导出器。
类型
数组

12.1.27. .spec.exporters[]

描述
FlowCollectorExporter 定义了一个额外的导出器来发送增强的流
类型
object
必填
  • type
属性类型描述

ipfix

object

IPFIX 配置,如 IP 地址和端口,以将增强的 IPFIX 流发送到。

kafka

object

Kafka 配置(如地址和主题)将增强的流发送到。

type

string

type 选择导出器类型。可用的选项有 KafkaIPFIX

12.1.28. .spec.exporters[].ipfix

描述
IPFIX 配置,如 IP 地址和端口,以将增强的 IPFIX 流发送到。
类型
object
必填
  • targetHost
  • targetPort
属性类型描述

targetHost

string

IPFIX 外部接收器的地址

targetPort

整数

IPFIX 外部接收器的端口

传输

string

用于 IPFIX 连接的传输协议(TCPUDP),默认为 TCP

12.1.29. .spec.exporters[].kafka

描述
Kafka 配置(如地址和主题)将增强的流发送到。
类型
object
必填
  • address
  • topic
属性类型描述

address

string

Kafka 服务器的地址

sasl

object

SASL 身份验证配置。[Unsupported packagemanifests]。

tls

object

TLS 客户端配置。在使用 TLS 时,验证地址是否与用于 TLS 的 Kafka 端口匹配,通常为 9093。

topic

string

要使用的 Kafka 主题。它必须存在。Network Observability 不会创建它。

12.1.30. .spec.exporters[].kafka.sasl

描述
SASL 身份验证配置。[Unsupported packagemanifests]。
类型
object
属性类型描述

clientIDReference

object

对包含客户端 ID 的 secret 或配置映射的引用

clientSecretReference

object

对包含客户端 secret 的 secret 或配置映射的引用

type

string

使用的 SASL 身份验证类型,如果没有使用 SASL,则为 Disabled

12.1.31. .spec.exporters[].kafka.sasl.clientIDReference

描述
对包含客户端 ID 的 secret 或配置映射的引用
类型
object
属性类型描述

file

string

配置映射或 secret 中的文件名。

name

string

包含该文件的配置映射或 secret 的名称。

namespace

string

包含该文件的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

文件引用的 type: "configmap" 或 "secret"。

12.1.32. .spec.exporters[].kafka.sasl.clientSecretReference

描述
对包含客户端 secret 的 secret 或配置映射的引用
类型
object
属性类型描述

file

string

配置映射或 secret 中的文件名。

name

string

包含该文件的配置映射或 secret 的名称。

namespace

string

包含该文件的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

文件引用的 type: "configmap" 或 "secret"。

12.1.33. .spec.exporters[].kafka.tls

描述
TLS 客户端配置。在使用 TLS 时,验证地址是否与用于 TLS 的 Kafka 端口匹配,通常为 9093。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.34. .spec.exporters[].kafka.tls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.35. .spec.exporters[].kafka.tls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.36. .spec.kafka

描述
Kafka 配置,允许使用 Kafka 作为流集合管道的一部分。当 spec.deploymentModelKafka 时可用。
类型
object
必填
  • address
  • topic
属性类型描述

address

string

Kafka 服务器的地址

sasl

object

SASL 身份验证配置。[Unsupported packagemanifests]。

tls

object

TLS 客户端配置。在使用 TLS 时,验证地址是否与用于 TLS 的 Kafka 端口匹配,通常为 9093。

topic

string

要使用的 Kafka 主题。它必须存在。Network Observability 不会创建它。

12.1.37. .spec.kafka.sasl

描述
SASL 身份验证配置。[Unsupported packagemanifests]。
类型
object
属性类型描述

clientIDReference

object

对包含客户端 ID 的 secret 或配置映射的引用

clientSecretReference

object

对包含客户端 secret 的 secret 或配置映射的引用

type

string

使用的 SASL 身份验证类型,如果没有使用 SASL,则为 Disabled

12.1.38. .spec.kafka.sasl.clientIDReference

描述
对包含客户端 ID 的 secret 或配置映射的引用
类型
object
属性类型描述

file

string

配置映射或 secret 中的文件名。

name

string

包含该文件的配置映射或 secret 的名称。

namespace

string

包含该文件的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

文件引用的 type: "configmap" 或 "secret"。

12.1.39. .spec.kafka.sasl.clientSecretReference

描述
对包含客户端 secret 的 secret 或配置映射的引用
类型
object
属性类型描述

file

string

配置映射或 secret 中的文件名。

name

string

包含该文件的配置映射或 secret 的名称。

namespace

string

包含该文件的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

文件引用的 type: "configmap" 或 "secret"。

12.1.40. .spec.kafka.tls

描述
TLS 客户端配置。在使用 TLS 时,验证地址是否与用于 TLS 的 Kafka 端口匹配,通常为 9093。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.41. .spec.kafka.tls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.42. .spec.kafka.tls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.43. .spec.loki

描述
loki,流存储、客户端设置。
类型
object
属性类型描述

advanced

object

advanced 允许设置 Loki 客户端的内部配置的一些方面。本节主要用于调试和精细的性能优化。

enable

布尔值

enable 设置为 true 以在 Loki 中存储流。Console 插件可以使用 Loki 或 Prometheus(或两者)作为指标的数据源(请参阅 spec.prometheus.querier)。并非所有查询都可从 Loki 转换为 Prometheus。因此,如果 Loki 被禁用,插件的一些功能也会被禁用,如获取每个 pod 的信息或查看原始流。如果启用了 Prometheus 和 Loki,Prometheus 会优先使用,Loki 作为 Prometheus 无法处理的查询的回退系统。如果两者都被禁用,则不会部署 Console 插件。

lokiStack

object

LokiStack 模式的 Loki 配置。这对简单的 Loki Operator 配置很有用。对于其他模式,它会被忽略。

manual

object

Manual 模式的 Loki 配置。这是最灵活的配置。对于其他模式,它会被忽略。

微服务

object

对于 Microservices 模式的 Loki 配置。当使用微服务部署模式(https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#microservices-mode)安装 Loki 时使用这个选项。对于其他模式,它会被忽略。

模式

string

mode 必须根据 Loki 的安装模式设置:

- 当 Loki 通过 Loki Operator 管理时使用 LokiStack

- 当 Loki 作为单体工作负载安装时,使用 Monolithic

- 当 Loki 作为微服务安装,但没有 Loki Operator 时,使用 Microservices

- 如果以上选项与您的设置都不匹配,则使用 Manual

monolithic

object

Monolithic 模式的 Loki 配置。当使用单体部署模式 (https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#monolithic-mode) 安装 Loki 时使用这个选项。对于其他模式,它会被忽略。

readTimeout

string

readTimeout 是最大控制台插件 loki 查询总时间的限制。超时值为零表示没有超时。

writeBatchSize

整数

writeBatchSize 是在发送前累积的 Loki 日志的最大批处理大小(以字节为单位)。

writeBatchWait

string

writeBatchWait 是发送 Loki 批处理前等待的最长时间。

writeTimeout

string

writeTimeout 是最大 Loki 时间连接 / 请求限制。超时值为零表示没有超时。

12.1.44. .spec.loki.advanced

描述
advanced 允许设置 Loki 客户端的内部配置的一些方面。本节主要用于调试和精细的性能优化。
类型
object
属性类型描述

staticLabels

对象(字符串)

staticLabels 是 Loki 存储中的每个流上设置的通用标签映射。

writeMaxBackoff

string

writeMaxBackoff 是 Loki 客户端连接在重试之间的最大 backoff 时间。

writeMaxRetries

整数

writeMaxRetries 是 Loki 客户端连接的最大重试次数。

writeMinBackoff

string

writeMinBackoff 是 Loki 客户端连接在重试之间的初始 backoff 时间。

12.1.45. .spec.loki.lokiStack

描述
LokiStack 模式的 Loki 配置。这对简单的 Loki Operator 配置很有用。对于其他模式,它会被忽略。
类型
object
属性类型描述

name

string

要使用的现有 LokiStack 资源的名称。

namespace

string

LokiStack 资源所在的命名空间。如果省略,则假定它与 spec.namespace 相同。

12.1.46. .spec.loki.manual

描述
Manual 模式的 Loki 配置。这是最灵活的配置。对于其他模式,它会被忽略。
类型
object
属性类型描述

authToken

string

authToken 描述了获取与 Loki 进行身份验证的令牌的方法。

- Disabled 请求不发送任何令牌。

- Forward 转发用户令牌用于验证。

- Host [已启用 (*)] - 使用本地 pod 服务帐户用于 Loki 进行身份验证。

使用 Loki Operator 时,必须设置为 Forward

ingesterUrl

string

ingesterUrl 是现有 Loki ingester 服务的地址,用于将流推送到。使用 Loki Operator 时,使用路径中设置的 network 租户将其设置为 Loki 网关服务,例如 https://loki-gateway-http.netobserv.svc:8080/api/logs/v1/network

querierUrl

string

querierUrl 指定 Loki querier 服务的地址。使用 Loki Operator 时,使用路径中设置的 network 租户将其设置为 Loki 网关服务,例如 https://loki-gateway-http.netobserv.svc:8080/api/logs/v1/network

statusTls

object

Loki 状态 URL 的 TLS 客户端配置。

statusUrl

string

statusUrl 指定 Loki /ready/metrics/config 端点的地址,如果它与 Loki querier URL 不同。如果为空,则使用 querierUrl 值。这可用于在前端中显示错误消息和一些上下文。使用 Loki Operator 时,将其设置为 Loki HTTP 查询前端服务,例如 https://loki-query-frontend-http.netobserv.svc:3100/。当设置 statusUrl 时,使用 statusTLS 配置。

tenantID

string

tenantId 是 Loki X-Scope-OrgID,用于标识每个请求的租户。使用 Loki Operator 时,将其设置为 network,这对应于一个特殊的租户模式。

tls

object

Loki URL 的 TLS 客户端配置。

12.1.47. .spec.loki.manual.statusTls

描述
Loki 状态 URL 的 TLS 客户端配置。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.48. .spec.loki.manual.statusTls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.49. .spec.loki.manual.statusTls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.50. .spec.loki.manual.tls

描述
Loki URL 的 TLS 客户端配置。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.51. .spec.loki.manual.tls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.52. .spec.loki.manual.tls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.53. .spec.loki.microservices

描述
对于 Microservices 模式的 Loki 配置。当使用微服务部署模式(https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#microservices-mode)安装 Loki 时使用这个选项。对于其他模式,它会被忽略。
类型
object
属性类型描述

ingesterUrl

string

ingesterUrl 是现有 Loki ingester 服务的地址,用于将流推送到。

querierUrl

string

querierUrl 指定 Loki querier 服务的地址。

tenantID

string

tenantID 是 Loki X-Scope-OrgID 标头,用于标识每个请求的租户。

tls

object

Loki URL 的 TLS 客户端配置。

12.1.54. .spec.loki.microservices.tls

描述
Loki URL 的 TLS 客户端配置。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.55. .spec.loki.microservices.tls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.56. .spec.loki.microservices.tls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.57. .spec.loki.monolithic

描述
Monolithic 模式的 Loki 配置。当使用单体部署模式 (https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#monolithic-mode) 安装 Loki 时使用这个选项。对于其他模式,它会被忽略。
类型
object
属性类型描述

tenantID

string

tenantID 是 Loki X-Scope-OrgID 标头,用于标识每个请求的租户。

tls

object

Loki URL 的 TLS 客户端配置。

url

string

url 是现有 Loki 服务的唯一地址,它同时指向 ingester 和 querier。

12.1.58. .spec.loki.monolithic.tls

描述
Loki URL 的 TLS 客户端配置。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.59. .spec.loki.monolithic.tls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.60. .spec.loki.monolithic.tls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.61. .spec.processor

描述
processor 定义从代理接收流的组件设置,增强它们,生成指标,并将它们转发到 Loki 持久层和/或任何可用的导出器。
类型
object
属性类型描述

addZone

布尔值

addZone 通过使用其源和目标区标记流来允许可用区感知。此功能要求在节点上设置 "topology.kubernetes.io/zone" 标签。

advanced

object

advanced 允许设置流处理器的内部配置。本节主要用于调试和精细的性能优化,如 GOGCGOMAXPROCS 环境变量。在设置这些值时,您需要自己考虑相关的风险。

clusterName

string

clusterName 是要出现在流数据中的集群名称。这在多集群上下文中很有用。使用 OpenShift Container Platform 时,留空,使其自动决定。

imagePullPolicy

string

imagePullPolicy 是上面定义的镜像的 Kubernetes pull 策略

kafkaConsumerAutoscaler

object

kafkaConsumerAutoscaler 是 Pod 横向自动扩展的 spec,用于 flowlogs-pipeline-transformer,它使用 Kafka 信息。当 Kafka 被禁用时,会忽略此设置。请参阅 HorizontalPodAutoscaler 文档(autoscaling/v2)。

kafkaConsumerBatchSize

整数

kafkaConsumerBatchSize 表示代理消费者接受的最大批处理大小(以字节为单位)。如果不使用 Kafka,则忽略。默认:10MB。

kafkaConsumerQueueCapacity

整数

kafkaConsumerQueueCapacity 定义 Kafka 消费者客户端中使用的内部消息队列的容量。如果不使用 Kafka,则忽略。

kafkaConsumerReplicas

整数

kafkaConsumerReplicas 定义了为 flowlogs-pipeline-transformer 启动的副本数,它使用 Kafka 信息。当 Kafka 被禁用时,会忽略此设置。

logLevel

string

处理器运行时的 logLevel

logTypes

string

logTypes 定义要生成的记录类型。可能的值有:

- Flows(默认)导出常规网络流

- Conversations 为开始的对话、结束的对话以及定期的"tick"更新生成事件

- EndedConversations 只生成结束的对话事件

- All 生成网络流和所有对话事件

metrics

object

Metrics 定义有关指标的处理器配置

multiClusterDeployment

布尔值

multiClusterDeployment 设置为 true 以启用多集群功能。这会为流数据添加 clusterName 标签

resources

object

resources 是此容器所需的计算资源。如需更多信息,请参阅 https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

subnetLabels

object

subnetLabels 允许在子网和 IP 上定义自定义标签,或者在 OpenShift Container Platform 中启用自动标记可识别的子网,用于标识集群外部流量。当子网与流的源或目标 IP 匹配时,会添加一个对应的字段:SrcSubnetLabelDstSubnetLabel

12.1.62. .spec.processor.advanced

描述
advanced 允许设置流处理器的内部配置。本节主要用于调试和精细的性能优化,如 GOGCGOMAXPROCS 环境变量。在设置这些值时,您需要自己考虑相关的风险。
类型
object
属性类型描述

conversationEndTimeout

string

conversationEndTimeout 是收到网络流后等待的时间,请考虑对话结束的时间。为 TCP 流收集 FIN 数据包时会忽略此延迟(请参阅 conversationTerminatingTimeout)。

conversationHeartbeatInterval

string

conversationHeartbeatInterval 是对话的 "tick" 事件间的等待时间

conversationTerminatingTimeout

string

conversationTerminatingTimeout 是从检测到的 FIN 标志到对话结束间的等待时间。只适用于 TCP 流。

dropUnusedFields

布尔值

dropUnusedFields [已弃用 (*)] 此设置不再使用。

enableKubeProbes

布尔值

enableKubeProbes 是一个用于启用或禁用 Kubernetes 存活度和就绪度探测的标志

env

对象(字符串)

env 允许将自定义环境变量传递给底层组件。对于传递一些非常严格的性能调整选项(如 GOGCGOMAXPROCS )非常有用,它们不应作为 FlowCollector 描述符的一部分公开,因为它们仅在边缘调试或支持场景中有用。

healthPort

整数

healthPort 是 Pod 中的收集器 HTTP 端口,用于公开健康检查 API

port

整数

流收集器(主机端口)的端口。按照惯例,一些值会被禁止。它必须大于 1024,且不能是 4500、4789 和 6081。

profilePort

整数

profilePort 允许设置侦听此端口的 Go pprof profiler

scheduling

object

调度控制如何在节点上调度 pod。

12.1.63. .spec.processor.advanced.scheduling

描述
调度控制如何在节点上调度 pod。
类型
object
属性类型描述

关联性

对象

如果指定,pod 的调度限制。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling

nodeSelector

对象(字符串)

nodeSelector 只允许将 pod 调度到具有每个指定标签的节点上。有关文档,请参阅 https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

priorityClassName

string

如果指定,指示 pod 的优先级。有关文档,请参阅 https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#how-to-use-priority-and-preemption。如果没有指定,则使用默认优先级,如果没有默认值,则使用零。

容限(tolerations)

数组

tolerations 是一个容限 (toleration) 列表,允许 pod 调度到具有匹配污点的节点。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling

12.1.64. .spec.processor.advanced.scheduling.affinity

描述
如果指定,pod 的调度限制。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling
类型
object

12.1.65. .spec.processor.advanced.scheduling.tolerations

描述
tolerations 是一个容限 (toleration) 列表,允许 pod 调度到具有匹配污点的节点。有关文档,请参阅 https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling
类型
数组

12.1.66. .spec.processor.kafkaConsumerAutoscaler

描述
kafkaConsumerAutoscaler 是 Pod 横向自动扩展的 spec,用于 flowlogs-pipeline-transformer,它使用 Kafka 信息。当 Kafka 被禁用时,会忽略此设置。请参阅 HorizontalPodAutoscaler 文档(autoscaling/v2)。
类型
object

12.1.67. .spec.processor.metrics

描述
Metrics 定义有关指标的处理器配置
类型
object
属性类型描述

disableAlerts

数组(字符串)

disableAlerts 是应禁用的警报列表。可能的值有:

NetObservNoFlows,它会在特定时间段内没有观察到流时触发。

NetObservLokiError,它会在因为 Loki 错误而丢弃流时触发。

includeList

数组(字符串)

includeList 是一个指标名称列表,用于指定要生成的名称。名称与 Prometheus 中没有前缀的名称对应。例如,namespace_egress_packets_total 在 Prometheus 中显示为 netobserv_namespace_egress_packets_total。请注意,您添加的指标越大,对 Prometheus 工作负载资源的影响更大。默认启用的指标包括:namespace_flows_total, node_ingress_bytes_total, workload_ingress_bytes_total, namespace_drop_packets_total (当启用了 PacketDrop 功能), namespace_rtt_seconds (当启用了 FlowRTT 功能), namespace_dns_latency_seconds (当启用了 DNSTracking 功能)。如需更多信息,包含可用指标的完整列表: https://github.com/netobserv/network-observability-operator/blob/main/docs/Metrics.md

server

object

Prometheus scraper 的指标服务器端点配置

12.1.68. .spec.processor.metrics.server

描述
Prometheus scraper 的指标服务器端点配置
类型
object
属性类型描述

port

整数

指标服务器 HTTP 端口。

tls

object

TLS 配置。

12.1.69. .spec.processor.metrics.server.tls

描述
TLS 配置。
类型
object
属性类型描述

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过提供的证书的客户端侧验证。如果设置为 true,则忽略 providedCaFile 字段。

provided

object

type 设置为 Provided 时的 TLS 配置。

providedCaFile

object

当将 type 设置为 Provided 时,对 CA 文件的引用。

type

string

选择 TLS 配置类型:

- Disabled (默认)没有为端点配置 TLS。- Provided 来手动提供证书文件和密钥文件。[不支持 (*)]. - Auto 使用 OpenShift Container Platform 字段生成的证书,用于注解。

12.1.70. .spec.processor.metrics.server.tls.provided

描述
type 设置为 Provided 时的 TLS 配置。
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.71. .spec.processor.metrics.server.tls.providedCaFile

描述
当将 type 设置为 Provided 时,对 CA 文件的引用。
类型
object
属性类型描述

file

string

配置映射或 secret 中的文件名。

name

string

包含该文件的配置映射或 secret 的名称。

namespace

string

包含该文件的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

文件引用的 type: "configmap" 或 "secret"。

12.1.72. .spec.processor.resources

描述
resources 是此容器所需的计算资源。如需更多信息,请参阅 https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
类型
object
属性类型描述

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

12.1.73. .spec.processor.subnetLabels

描述
subnetLabels 允许在子网和 IP 上定义自定义标签,或者在 OpenShift Container Platform 中启用自动标记可识别的子网,用于标识集群外部流量。当子网与流的源或目标 IP 匹配时,会添加一个对应的字段:SrcSubnetLabelDstSubnetLabel
类型
object
属性类型描述

customLabels

数组

customLabels 允许自定义子网和 IP 标签,如标识集群外部工作负载或 Web 服务。如果启用 openShiftAutoDetect,则customLabels 可以在重叠时覆盖检测到的子网。

openShiftAutoDetect

布尔值

openShiftAutoDetect 允许当设置为 true 时,根据 OpenShift Container Platform 安装配置和 Cluster Network Operator 配置来自动检测机器、Pod 和服务子网。间接来说,这是准确检测外部流量的方法:针对这些子网没有标记的流是集群外部的。在 OpenShift Container Platform 中默认启用。

12.1.74. .spec.processor.subnetLabels.customLabels

描述
customLabels 允许自定义子网和 IP 标签,如标识集群外部工作负载或 Web 服务。如果启用 openShiftAutoDetect,则customLabels 可以在重叠时覆盖检测到的子网。
类型
数组

12.1.75. .spec.processor.subnetLabels.customLabels[]

描述
SubnetLabel 允许标记子网和 IP,如标识集群外部工作负载或 Web 服务。
类型
object
属性类型描述

cidrs

数组(字符串)

CIDR 列表,如 ["1.2.3.4/32"]

name

string

标签名称,用于标记匹配流。

12.1.76. .spec.prometheus

描述
prometheus 定义 Prometheus 设置,如用于从控制台插件获取指标的 querier 配置。
类型
object
属性类型描述

querier

object

Prometheus 查询配置,如控制台插件中使用的客户端设置。

12.1.77. .spec.prometheus.querier

描述
Prometheus 查询配置,如控制台插件中使用的客户端设置。
类型
object
属性类型描述

enable

布尔值

enabletrue 时,Console 插件会查询 Prometheus 中的流指标,而不是 Loki。它默认是 enbaled :将其设置为 false 来禁用此功能。Console 插件可以使用 Loki 或 Prometheus(或两者)作为指标的数据源(请参阅 spec.loki)。并非所有查询都可从 Loki 转换为 Prometheus。因此,如果 Loki 被禁用,插件的一些功能也会被禁用,如获取每个 pod 的信息或查看原始流。如果启用了 Prometheus 和 Loki,Prometheus 会优先使用,Loki 作为 Prometheus 无法处理的查询的回退系统。如果两者都被禁用,则不会部署 Console 插件。

manual

object

用于 Manual 模式的 Prometheus 配置。

模式

string

模式 必须根据存储 Network Observability 指标的 Prometheus 安装类型来设置:

- 使用 Auto 尝试自动配置。在 OpenShift Container Platform 中,它使用 OpenShift Container Platform Cluster Monitoring 中的 Thanos querier

- 使用 Manual 用于手工设置

timeout

string

timeout 是控制台插件查询 Prometheus 的读取超时。超时值为零表示没有超时。

12.1.78. .spec.prometheus.querier.manual

描述
用于 Manual 模式的 Prometheus 配置。
类型
object
属性类型描述

forwardUserToken

布尔值

设置 true 以将查询中的登录用户令牌转发到 Prometheus

tls

object

Prometheus URL 的 TLS 客户端配置。

url

string

url 是现有 Prometheus 服务的地址,用于查询指标。

12.1.79. .spec.prometheus.querier.manual.tls

描述
Prometheus URL 的 TLS 客户端配置。
类型
object
属性类型描述

caCert

object

caCert 定义证书颁发机构的证书引用

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

insecureSkipVerify 允许跳过服务器证书的客户端验证。如果设置为 true,则忽略 caCert 字段。

userCert

object

userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)

12.1.80. .spec.prometheus.querier.manual.tls.caCert

描述
caCert 定义证书颁发机构的证书引用
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

12.1.81. .spec.prometheus.querier.manual.tls.userCert

描述
userCert 定义用户证书引用,用于 mTLS (您可以在使用单向 TLS 时忽略它)
类型
object
属性类型描述

certFile

string

certFile 定义配置映射或 secret 中证书文件名的路径。

certKey

string

certKey 定义配置映射 / Secret 中证书私钥文件名的路径。当不需要键时会省略。

name

string

包含证书的配置映射或 Secret 的名称。

namespace

string

包含证书的配置映射或 secret 的命名空间。如果省略,则默认为使用与部署 Network Observability 相同的命名空间。如果命名空间不同,则复制配置映射或 secret,以便可以根据需要挂载它。

type

string

证书引用的类型:configmapsecret

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.