第 9 章 FlowCollector 配置参数


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

9.1. FlowCollector API 规格

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

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 资源所需状态。

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

9.1.1. .metadata

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

9.1.2. .spec

描述
定义 FlowCollector 资源所需状态。

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

agent

object

流提取的代理配置。

consolePlugin

object

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

deploymentModel

string

deploymentModel 定义所需的用于流处理的部署类型。可能的值有:
- DIRECT (默认)使流处理器直接从代理侦听。
- KAFKA - 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 持久层和/或任何可用的导出器。

9.1.3. .spec.agent

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

ebpf

object

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

ipfix

object

ipfix [deprecated (*)] - 当 spec.agent.type 设置为 IPFIX 时,描述了与基于 IPFIX 的流报告程序相关的设置。

type

string

type 选择流追踪代理。可能的值有:
- EBPF (默认)使用 Network Observability eBPF 代理。
- IPFIX [已弃用 glock] - 使用旧的 IPFIX 收集器。
建议使用 EBPF,因为它提供更好的性能,并应该可以正常工作,无论集群中是否安装了 CNI。IPFIX 与 OVN-Kubernetes CNI 一起工作(如果支持导出 IPFIX,则其他 CNI 可以正常工作,但需要手动配置)。

9.1.4. .spec.agent.ebpf

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

cacheActiveTimeout

string

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

cacheMaxFlows

整数

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

debug

object

debug 允许设置 eBPF 代理的内部配置的一些方面。本节专门用于调试和精细的性能优化,如 GOGC 和 GOMAXPROCS env vars。用户设置其值会自行承担任何风险。

excludeInterfaces

数组(字符串)

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

功能

数组(字符串)

要启用的额外功能列表。它们都默认禁用。启用其他功能可能会对性能有影响。可能的值有:
- PacketDrop: 启用数据包丢弃日志功能。此功能需要挂载内核调试文件系统,因此 eBPF pod 必须以特权方式运行。如果没有设置 spec.agent.eBPF.privileged 参数,则会报告错误。
- DNSTracking: 启用 DNS 跟踪功能。此功能需要挂载内核调试文件系统,因此 eBPF pod 必须以特权方式运行。如果没有设置 spec.agent.eBPF.privileged 参数,则会报告错误。
- FlowRTT [unsupported glock]: 在 TCP 握手过程中在 eBPF 代理中启用流延迟(RTT)计算。此功能更适用于 sampling 设置为 1 的情况。

imagePullPolicy

string

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

interfaces

数组(字符串)

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

kafkaBatchSize

整数

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

logLevel

string

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

privileged

布尔值

eBPF Agent 容器的特权模式。通常,此设置可以忽略或设置为 false :在这种情况下,Operator 会将粒度功能(BPF、PERFMON、NET_ADMIN、SYS_RESOURCE)设置为容器,以启用其正确的操作。如果出于某种原因而无法设置这些功能,例如,如果旧的内核版本不知道 CAP_BPF,那么您可以打开此模式以获取更多全局权限。

resources

object

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

sampling

整数

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

9.1.5. .spec.agent.ebpf.debug

描述
debug 允许设置 eBPF 代理的内部配置的一些方面。本节专门用于调试和精细的性能优化,如 GOGC 和 GOMAXPROCS env vars。用户设置其值会自行承担任何风险。
类型
对象
属性类型描述

env

对象(字符串)

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

9.1.6. .spec.agent.ebpf.resources

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

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/

9.1.7. .spec.agent.ipfix

描述
ipfix [deprecated (*)] - 当 spec.agent.type 设置为 IPFIX 时,描述了与基于 IPFIX 的流报告程序相关的设置。
类型
对象
属性类型描述

cacheActiveTimeout

string

cacheActiveTimeout 是报告者在发送前聚合流的最大周期。

cacheMaxFlows

整数

cacheMaxFlows 是聚合中的最大流数;达到时,报告者会发送流。

clusterNetworkOperator

object

clusterNetworkOperator 定义与 OpenShift Container Platform Cluster Network Operator 相关的设置(如果可用)。

forceSampleAll

布尔值

forceSampleAll 允许在基于 IPFIX 的流报告程序中禁用抽样。不建议通过 IPFIX 对所有流量进行抽样,因为它可能会生成集群不稳定。如果 REALLY 希望这样做,请将此标志设置为 true。自行使用风险。当设为 true 时, sampling 的值将被忽略。

ovnKubernetes

object

ovnKubernetes 定义 OVN-Kubernetes CNI 的设置(如果可用)。在没有 OpenShift Container Platform 的情况下使用 OVN 的 IPFIX 导出时使用此配置。使用 OpenShift Container Platform 时,请参阅 clusterNetworkOperator 属性。

sampling

整数

sampling 是 reporter 的抽样率。100 表示发送 100 个流中的一个。为确保集群稳定性,它不能设置为低于 2 的值。如果您真正希望对影响集群稳定性的每个数据包进行抽样,请参阅 forceSampleAll。或者,您可以使用 eBPF 代理而不是 IPFIX。

9.1.8. .spec.agent.ipfix.clusterNetworkOperator

描述
clusterNetworkOperator 定义与 OpenShift Container Platform Cluster Network Operator 相关的设置(如果可用)。
类型
对象
属性类型描述

namespace

string

部署配置映射的命名空间。

9.1.9. .spec.agent.ipfix.ovnKubernetes

描述
ovnKubernetes 定义 OVN-Kubernetes CNI 的设置(如果可用)。在没有 OpenShift Container Platform 的情况下使用 OVN 的 IPFIX 导出时使用此配置。使用 OpenShift Container Platform 时,请参阅 clusterNetworkOperator 属性。
类型
对象
属性类型描述

containerName

string

containerName 定义要为 IPFIX 配置的容器的名称。

daemonSetName

string

daemonSetName 定义控制 OVN-Kubernetes pod 的 DaemonSet 的名称。

namespace

string

部署 OVN-Kubernetes pod 的命名空间。

9.1.10. .spec.consolePlugin

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

autoscaler

object

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

enable

布尔值

启用 console 插件 deployment. spec.Loki.enable 还必须为 true

imagePullPolicy

string

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

logLevel

string

控制台插件后端的 logLevel

port

整数

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

portNaming

object

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

quickFilters

数组

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

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"}]'

replicas

整数

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

resources

object

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

9.1.11. .spec.consolePlugin.autoscaler

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

9.1.12. .spec.consolePlugin.portNaming

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

enable

布尔值

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

portNames

对象(字符串)

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

9.1.13. .spec.consolePlugin.quickFilters

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

9.1.14. .spec.consolePlugin.quickFilters[]

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

default

布尔值

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

filter

对象(字符串)

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

name

string

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

9.1.15. .spec.consolePlugin.resources

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

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/

9.1.16. .spec.exporters

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

9.1.17. .spec.exporters[]

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

ipfix

object

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

kafka

object

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

type

string

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

9.1.18. .spec.exporters[].ipfix

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

targetHost

string

IPFIX 外部接收器的地址

targetPort

整数

IPFIX 外部接收器的端口

传输

string

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

9.1.19. .spec.exporters[].kafka

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

address

string

Kafka 服务器的地址

sasl

object

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

tls

object

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

topic

string

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

9.1.20. .spec.exporters[].kafka.sasl

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

clientIDReference

object

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

clientSecretReference

object

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

type

string

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

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

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

file

string

配置映射或 secret 中的文件名

name

string

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

namespace

string

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

type

string

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

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

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

file

string

配置映射或 secret 中的文件名

name

string

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

namespace

string

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

type

string

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

9.1.23. .spec.exporters[].kafka.tls

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

caCert

object

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

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

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

userCert

object

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

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

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

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

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.26. .spec.kafka

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

address

string

Kafka 服务器的地址

sasl

object

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

tls

object

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

topic

string

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

9.1.27. .spec.kafka.sasl

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

clientIDReference

object

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

clientSecretReference

object

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

type

string

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

9.1.28. .spec.kafka.sasl.clientIDReference

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

file

string

配置映射或 secret 中的文件名

name

string

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

namespace

string

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

type

string

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

9.1.29. .spec.kafka.sasl.clientSecretReference

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

file

string

配置映射或 secret 中的文件名

name

string

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

namespace

string

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

type

string

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

9.1.30. .spec.kafka.tls

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

caCert

object

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

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

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

userCert

object

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

9.1.31. .spec.kafka.tls.caCert

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.32. .spec.kafka.tls.userCert

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.33. .spec.loki

描述
Loki,流存储、客户端设置。
类型
对象
属性类型描述

authToken

string

authToken 描述了获取令牌对 Loki 进行身份验证的方法。
- DISABLED 没有使用请求发送任何令牌。
- FORWARD 将用户令牌转发授权。
- HOST [deprecated cycles] - 使用本地 pod 服务帐户向 Loki 进行身份验证。
使用 Loki Operator 时,必须设置为 FORWARD

batchSize

整数

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

batchWait

string

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

enable

布尔值

设置为 enable,将流存储到 Loki。OpenShift Container Platform 控制台插件安装需要它。

maxBackoff

string

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

maxRetries

整数

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

minBackoff

string

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

querierUrl

string

querierUrl 指定 Loki querier 服务的地址,如果它与 Loki ingester URL 不同。如果为空,则使用 URL 值(假设 Loki ingester 和 querier 位于同一服务器中)。使用 Loki Operator 时,请不要设置它,因为 ingestion 和 query 使用 Loki 网关。

staticLabels

对象(字符串)

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

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,这对应于一个特殊的租户模式。

timeout

string

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

tls

object

Loki URL 的 TLS 客户端配置。

url

string

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

9.1.34. .spec.loki.statusTls

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

caCert

object

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

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

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

userCert

object

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

9.1.35. .spec.loki.statusTls.caCert

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.36. .spec.loki.statusTls.userCert

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.37. .spec.loki.tls

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

caCert

object

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

enable

布尔值

启用 TLS

insecureSkipVerify

布尔值

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

userCert

object

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

9.1.38. .spec.loki.tls.caCert

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.39. .spec.loki.tls.userCert

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

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.40. .spec.processor

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

clusterName

string

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

conversationEndTimeout

string

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

conversationHeartbeatInterval

string

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

conversationTerminatingTimeout

string

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

debug

object

debug 允许设置流处理器的内部配置。本节专门用于调试和精细的性能优化,如 GOGC 和 GOMAXPROCS env vars。用户设置其值会自行承担任何风险。

dropUnusedFields

布尔值

dropUnusedFields 允许,当设为 true 时,可以丢弃由 OVS 未使用的字段,以节省存储空间。

enableKubeProbes

布尔值

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

healthPort

整数

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

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"更新
- ENDED_CONVERSATIONS 以仅生成终止的对话事件
- ALL 以生成网络流和所有对话事件

metrics

object

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

port

整数

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

profilePort

整数

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

resources

object

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

9.1.41. .spec.processor.debug

描述
debug 允许设置流处理器的内部配置。本节专门用于调试和精细的性能优化,如 GOGC 和 GOMAXPROCS env vars。用户设置其值会自行承担任何风险。
类型
对象
属性类型描述

env

对象(字符串)

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

9.1.42. .spec.processor.kafkaConsumerAutoscaler

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

9.1.43. .spec.processor.metrics

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

disableAlerts

数组(字符串)

disableAlerts 是应禁用的警报列表。可能的值是:
NetObservNoFlows,它会在特定时间段内没有观察到流时触发。
NetObservLokiError,它会在因为 Loki 错误而丢弃流时触发。

ignoreTags

数组(字符串)

ignoreTags 是标签列表,用于指定要忽略哪些指标。每个指标都与一个标签列表关联。更多详情包括在 https://github.com/netobserv/network-observability-operator/tree/main/controllers/flowlogspipeline/metrics_definitions。可用标签为:egress, ingress, flows, bytes, packets, namespaces, nodes, workloads, nodes-flows, namespaces-flows, workloads-flows。基于命名空间的指标由 workloadsnamespaces 标签涵盖,因此建议始终忽略其中一个(提供更精细的工作负载)。

server

object

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

9.1.44. .spec.processor.metrics.server

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

port

整数

prometheus HTTP 端口

tls

object

TLS 配置。

9.1.45. .spec.processor.metrics.server.tls

描述
TLS 配置。
类型
对象
属性类型描述

insecureSkipVerify

布尔值

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

provided

object

type 设置为 PROVIDED 时,TLS 的配置。

providedCaFile

object

type 设置为 PROVIDED 时,引用 CA 文件。

type

string

选择 TLS 配置类型:
- DISABLED (默认)来为端点配置 TLS。- PROVIDED 以手动提供证书文件和密钥文件。- AUTO 使用注解使用 OpenShift Container Platform 自动生成的证书。

9.1.46. .spec.processor.metrics.server.tls.provided

描述
type 设置为 PROVIDED 时,TLS 的配置。
类型
对象
属性类型描述

certFile

string

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

certKey

string

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

name

string

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

namespace

string

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

type

string

证书引用的类型:configmapsecret

9.1.47. .spec.processor.metrics.server.tls.providedCaFile

描述
type 设置为 PROVIDED 时,引用 CA 文件。
类型
对象
属性类型描述

file

string

配置映射或 secret 中的文件名

name

string

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

namespace

string

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

type

string

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

9.1.48. .spec.processor.resources

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

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/

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.