Chapter 15. FlowCollector API reference
FlowCollector is the Schema for the network flows collection API, which pilots and configures the underlying deployments.
15.1. FlowCollector API specifications Copy linkLink copied to clipboard!
- Description
-
FlowCollectoris the schema for the network flows collection API, which pilots and configures the underlying deployments. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and might reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
|
| Kind is a string value representing the REST resource this object represents. Servers might infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
|
|
| Standard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
|
|
Defines the desired state of the FlowCollector resource. *: the mention of "unsupported" or "deprecated" for a feature throughout this document means that this feature is not officially supported by Red Hat. It might have been, for example, contributed by the community and accepted without a formal agreement for maintenance. The product maintainers might provide some support for these features as a best effort only. |
15.1.1. .metadata Copy linkLink copied to clipboard!
- Description
- Standard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- Type
-
object
15.1.2. .spec Copy linkLink copied to clipboard!
- Description
Defines the desired state of the FlowCollector resource.
*: the mention of "unsupported" or "deprecated" for a feature throughout this document means that this feature is not officially supported by Red Hat. It might have been, for example, contributed by the community and accepted without a formal agreement for maintenance. The product maintainers might provide some support for these features as a best effort only.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Agent configuration for flows extraction. |
|
|
|
|
|
|
|
-
- Kafka can provide better scalability, resiliency, and high availability (for more details, see https://www.redhat.com/en/topics/integration/what-is-apache-kafka). |
|
|
|
|
|
|
|
Kafka configuration, allowing to use Kafka as a broker as part of the flow collection pipeline. Available when the |
|
|
|
|
|
|
| Namespace where Network Observability pods are deployed. |
|
|
|
|
|
|
|
|
|
|
|
|
15.1.3. .spec.agent Copy linkLink copied to clipboard!
- Description
- Agent configuration for flows extraction.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
15.1.4. .spec.agent.ebpf Copy linkLink copied to clipboard!
- Description
-
ebpfdescribes the settings related to the eBPF-based flow reporter whenspec.agent.typeis set toeBPF. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List of additional features to enable. They are all disabled by default. Enabling additional features might have performance impacts. Possible values are:
-
-
-
-
-
-
-
This feature requires mounting the kernel debug filesystem, so the eBPF agent pods must run as privileged via
- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Privileged mode for the eBPF Agent container. When ignored or set to |
|
|
|
|
|
|
| Sampling ratio of the eBPF probe. 100 means one packet on 100 is sent. 0 or 1 means all packets are sampled. |
15.1.5. .spec.agent.ebpf.advanced Copy linkLink copied to clipboard!
- Description
-
advancedallows setting some aspects of the internal configuration of the eBPF agent. This section is aimed mostly for debugging and fine-grained performance optimizations, such asGOGCandGOMAXPROCSenvironment vars. Set these values at your own risk. You can also override the default Linux capabilities from there. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Linux capabilities override, when not running as privileged. Default capabilities are BPF, PERFMON and NET_ADMIN. |
|
|
|
|
|
|
| scheduling controls how the pods are scheduled on nodes. |
15.1.6. .spec.agent.ebpf.advanced.scheduling Copy linkLink copied to clipboard!
- Description
- scheduling controls how the pods are scheduled on nodes.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| If specified, the pod’s scheduling constraints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling. |
|
|
|
|
|
|
| If specified, indicates the pod’s priority. For documentation, refer to https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#how-to-use-priority-and-preemption. If not specified, default priority is used, or zero if there is no default. |
|
|
|
|
15.1.7. .spec.agent.ebpf.advanced.scheduling.affinity Copy linkLink copied to clipboard!
- Description
- If specified, the pod’s scheduling constraints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling.
- Type
-
object
15.1.8. .spec.agent.ebpf.advanced.scheduling.tolerations Copy linkLink copied to clipboard!
- Description
-
tolerationsis a list of tolerations that allow the pod to schedule onto nodes with matching taints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling. - Type
-
array
15.1.9. .spec.agent.ebpf.flowFilter Copy linkLink copied to clipboard!
- Description
-
flowFilterdefines the eBPF agent configuration regarding flow filtering. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Set |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15.1.10. .spec.agent.ebpf.flowFilter.rules Copy linkLink copied to clipboard!
- Description
-
rulesdefines a list of filtering rules on the eBPF Agents. When filtering is enabled, by default, flows that don’t match any rule are rejected. To change the default, you can define a rule that accepts everything:{ action: "Accept", cidr: "0.0.0.0/0" }, and then refine with rejecting rules. - Type
-
array
15.1.11. .spec.agent.ebpf.flowFilter.rules[] Copy linkLink copied to clipboard!
- Description
-
EBPFFlowFilterRuledefines the desired eBPF agent configuration regarding flow filtering rule. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15.1.12. .spec.agent.ebpf.metrics Copy linkLink copied to clipboard!
- Description
-
metricsdefines the eBPF agent configuration regarding metrics. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
Set |
|
|
| Metrics server endpoint configuration for the Prometheus scraper. |
15.1.13. .spec.agent.ebpf.metrics.server Copy linkLink copied to clipboard!
- Description
- Metrics server endpoint configuration for the Prometheus scraper.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| The metrics server HTTP port. |
|
|
| TLS configuration. |
15.1.14. .spec.agent.ebpf.metrics.server.tls Copy linkLink copied to clipboard!
- Description
- TLS configuration.
- Type
-
object - Required
-
type
-
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
TLS configuration when |
|
|
|
Reference to the CA file when |
|
|
|
Select the type of TLS configuration:
- |
15.1.15. .spec.agent.ebpf.metrics.server.tls.provided Copy linkLink copied to clipboard!
- Description
-
TLS configuration when
typeis set toProvided. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.16. .spec.agent.ebpf.metrics.server.tls.providedCaFile Copy linkLink copied to clipboard!
- Description
-
Reference to the CA file when
typeis set toProvided. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| File name within the config map or secret. |
|
|
| Name of the config map or secret containing the file. |
|
|
| Namespace of the config map or secret containing the file. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the file reference: |
15.1.17. .spec.agent.ebpf.resources Copy linkLink copied to clipboard!
- Description
-
resourcesare the compute resources required by this container. For more information, see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
|
| Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
15.1.18. .spec.consolePlugin Copy linkLink copied to clipboard!
- Description
-
consolePlugindefines the settings related to the OpenShift Container Platform Console plugin, when available. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Enables the console plugin deployment. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15.1.19. .spec.consolePlugin.advanced Copy linkLink copied to clipboard!
- Description
-
advancedallows setting some aspects of the internal configuration of the console plugin. This section is aimed mostly for debugging and fine-grained performance optimizations, such asGOGCandGOMAXPROCSenvironment vars. Set these values at your own risk. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15.1.20. .spec.consolePlugin.advanced.scheduling Copy linkLink copied to clipboard!
- Description
-
schedulingcontrols how the pods are scheduled on nodes. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| If specified, the pod’s scheduling constraints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling. |
|
|
|
|
|
|
| If specified, indicates the pod’s priority. For documentation, refer to https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#how-to-use-priority-and-preemption. If not specified, default priority is used, or zero if there is no default. |
|
|
|
|
15.1.21. .spec.consolePlugin.advanced.scheduling.affinity Copy linkLink copied to clipboard!
- Description
- If specified, the pod’s scheduling constraints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling.
- Type
-
object
15.1.22. .spec.consolePlugin.advanced.scheduling.tolerations Copy linkLink copied to clipboard!
- Description
-
tolerationsis a list of tolerations that allow the pod to schedule onto nodes with matching taints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling. - Type
-
array
15.1.23. .spec.consolePlugin.autoscaler Copy linkLink copied to clipboard!
- Description
-
autoscalerspec of a horizontal pod autoscaler to set up for the plugin Deployment. Refer to HorizontalPodAutoscaler documentation (autoscaling/v2). - Type
-
object
15.1.24. .spec.consolePlugin.portNaming Copy linkLink copied to clipboard!
- Description
-
portNamingdefines the configuration of the port-to-service name translation - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Enable the console plugin port-to-service name translation |
|
|
|
|
15.1.25. .spec.consolePlugin.quickFilters Copy linkLink copied to clipboard!
- Description
-
quickFiltersconfigures quick filter presets for the Console plugin - Type
-
array
15.1.26. .spec.consolePlugin.quickFilters[] Copy linkLink copied to clipboard!
- Description
-
QuickFilterdefines preset configuration for Console’s quick filters - Type
-
object - Required
-
filter -
name
-
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the filter, that is displayed in the Console |
15.1.27. .spec.consolePlugin.resources Copy linkLink copied to clipboard!
- Description
-
resources, in terms of compute resources, required by this container. For more information, see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
|
| Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
15.1.28. .spec.exporters Copy linkLink copied to clipboard!
- Description
-
exportersdefines additional optional exporters for custom consumption or storage. - Type
-
array
15.1.29. .spec.exporters[] Copy linkLink copied to clipboard!
- Description
-
FlowCollectorExporterdefines an additional exporter to send enriched flows to. - Type
-
object - Required
-
type
-
| Property | Type | Description |
|---|---|---|
|
|
| IPFIX configuration, such as the IP address and port to send enriched IPFIX flows to. |
|
|
| Kafka configuration, such as the address and topic, to send enriched flows to. |
|
|
| OpenTelemetry configuration, such as the IP address and port to send enriched logs or metrics to. |
|
|
|
|
15.1.30. .spec.exporters[].ipfix Copy linkLink copied to clipboard!
- Description
- IPFIX configuration, such as the IP address and port to send enriched IPFIX flows to.
- Type
-
object - Required
-
targetHost -
targetPort
-
| Property | Type | Description |
|---|---|---|
|
|
| Address of the IPFIX external receiver. |
|
|
| Port for the IPFIX external receiver. |
|
|
|
Transport protocol ( |
15.1.31. .spec.exporters[].kafka Copy linkLink copied to clipboard!
- Description
- Kafka configuration, such as the address and topic, to send enriched flows to.
- Type
-
object - Required
-
address -
topic
-
| Property | Type | Description |
|---|---|---|
|
|
| Address of the Kafka server |
|
|
| SASL authentication configuration. [Unsupported (*)]. |
|
|
| TLS client configuration. When using TLS, verify that the address matches the Kafka port used for TLS, generally 9093. |
|
|
| Kafka topic to use. It must exist. Network Observability does not create it. |
15.1.32. .spec.exporters[].kafka.sasl Copy linkLink copied to clipboard!
- Description
- SASL authentication configuration. [Unsupported (*)].
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Reference to the secret or config map containing the client ID |
|
|
| Reference to the secret or config map containing the client secret |
|
|
|
Type of SASL authentication to use, or |
15.1.33. .spec.exporters[].kafka.sasl.clientIDReference Copy linkLink copied to clipboard!
- Description
- Reference to the secret or config map containing the client ID
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| File name within the config map or secret. |
|
|
| Name of the config map or secret containing the file. |
|
|
| Namespace of the config map or secret containing the file. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the file reference: |
15.1.34. .spec.exporters[].kafka.sasl.clientSecretReference Copy linkLink copied to clipboard!
- Description
- Reference to the secret or config map containing the client secret
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| File name within the config map or secret. |
|
|
| Name of the config map or secret containing the file. |
|
|
| Namespace of the config map or secret containing the file. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the file reference: |
15.1.35. .spec.exporters[].kafka.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration. When using TLS, verify that the address matches the Kafka port used for TLS, generally 9093.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.36. .spec.exporters[].kafka.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.37. .spec.exporters[].kafka.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.38. .spec.exporters[].openTelemetry Copy linkLink copied to clipboard!
- Description
- OpenTelemetry configuration, such as the IP address and port to send enriched logs or metrics to.
- Type
-
object - Required
-
targetHost -
targetPort
-
| Property | Type | Description |
|---|---|---|
|
|
| Custom fields mapping to an OpenTelemetry conformant format. By default, Network Observability format proposal is used: https://github.com/rhobs/observability-data-model/blob/main/network-observability.md#format-proposal . As there is currently no accepted standard for L3 or L4 enriched network logs, you can freely override it with your own. |
|
|
| Headers to add to messages (optional) |
|
|
| OpenTelemetry configuration for logs. |
|
|
| OpenTelemetry configuration for metrics. |
|
|
|
Protocol of the OpenTelemetry connection. The available options are |
|
|
| Address of the OpenTelemetry receiver. |
|
|
| Port for the OpenTelemetry receiver. |
|
|
| TLS client configuration. |
15.1.39. .spec.exporters[].openTelemetry.fieldsMapping Copy linkLink copied to clipboard!
- Description
- Custom fields mapping to an OpenTelemetry conformant format. By default, Network Observability format proposal is used: https://github.com/rhobs/observability-data-model/blob/main/network-observability.md#format-proposal . As there is currently no accepted standard for L3 or L4 enriched network logs, you can freely override it with your own.
- Type
-
array
15.1.40. .spec.exporters[].openTelemetry.fieldsMapping[] Copy linkLink copied to clipboard!
- Description
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| |
|
|
| |
|
|
|
15.1.41. .spec.exporters[].openTelemetry.logs Copy linkLink copied to clipboard!
- Description
- OpenTelemetry configuration for logs.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
Set |
15.1.42. .spec.exporters[].openTelemetry.metrics Copy linkLink copied to clipboard!
- Description
- OpenTelemetry configuration for metrics.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
Set |
|
|
| Specify how often metrics are sent to a collector. |
15.1.43. .spec.exporters[].openTelemetry.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.44. .spec.exporters[].openTelemetry.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.45. .spec.exporters[].openTelemetry.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.46. .spec.kafka Copy linkLink copied to clipboard!
- Description
-
Kafka configuration, allowing to use Kafka as a broker as part of the flow collection pipeline. Available when the
spec.deploymentModelisKafka. - Type
-
object - Required
-
address -
topic
-
| Property | Type | Description |
|---|---|---|
|
|
| Address of the Kafka server |
|
|
| SASL authentication configuration. [Unsupported (*)]. |
|
|
| TLS client configuration. When using TLS, verify that the address matches the Kafka port used for TLS, generally 9093. |
|
|
| Kafka topic to use. It must exist. Network Observability does not create it. |
15.1.47. .spec.kafka.sasl Copy linkLink copied to clipboard!
- Description
- SASL authentication configuration. [Unsupported (*)].
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Reference to the secret or config map containing the client ID |
|
|
| Reference to the secret or config map containing the client secret |
|
|
|
Type of SASL authentication to use, or |
15.1.48. .spec.kafka.sasl.clientIDReference Copy linkLink copied to clipboard!
- Description
- Reference to the secret or config map containing the client ID
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| File name within the config map or secret. |
|
|
| Name of the config map or secret containing the file. |
|
|
| Namespace of the config map or secret containing the file. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the file reference: |
15.1.49. .spec.kafka.sasl.clientSecretReference Copy linkLink copied to clipboard!
- Description
- Reference to the secret or config map containing the client secret
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| File name within the config map or secret. |
|
|
| Name of the config map or secret containing the file. |
|
|
| Namespace of the config map or secret containing the file. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the file reference: |
15.1.50. .spec.kafka.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration. When using TLS, verify that the address matches the Kafka port used for TLS, generally 9093.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.51. .spec.kafka.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.52. .spec.kafka.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.53. .spec.loki Copy linkLink copied to clipboard!
- Description
-
loki, the flow store, client settings. - Type
-
object - Required
-
mode
-
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
Set |
|
|
|
Loki configuration for |
|
|
|
Loki configuration for |
|
|
|
Loki configuration for |
|
|
|
- Use
- Use
- Use
- Use |
|
|
|
Loki configuration for |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15.1.54. .spec.loki.advanced Copy linkLink copied to clipboard!
- Description
-
advancedallows setting some aspects of the internal configuration of the Loki clients. This section is aimed mostly for debugging and fine-grained performance optimizations. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15.1.55. .spec.loki.lokiStack Copy linkLink copied to clipboard!
- Description
-
Loki configuration for
LokiStackmode. This is useful for an easy Loki Operator configuration. It is ignored for other modes. - Type
-
object - Required
-
name
-
| Property | Type | Description |
|---|---|---|
|
|
| Name of an existing LokiStack resource to use. |
|
|
|
Namespace where this |
15.1.56. .spec.loki.manual Copy linkLink copied to clipboard!
- Description
-
Loki configuration for
Manualmode. This is the most flexible configuration. It is ignored for other modes. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
-
-
-
When using the Loki Operator, this must be set to |
|
|
|
|
|
|
|
|
|
|
| TLS client configuration for Loki status URL. |
|
|
|
|
|
|
|
|
|
|
| TLS client configuration for Loki URL. |
15.1.57. .spec.loki.manual.statusTls Copy linkLink copied to clipboard!
- Description
- TLS client configuration for Loki status URL.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.58. .spec.loki.manual.statusTls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.59. .spec.loki.manual.statusTls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.60. .spec.loki.manual.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration for Loki URL.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.61. .spec.loki.manual.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.62. .spec.loki.manual.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.63. .spec.loki.microservices Copy linkLink copied to clipboard!
- Description
-
Loki configuration for
Microservicesmode. Use this option when Loki is installed using the microservices deployment mode (https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#microservices-mode). It is ignored for other modes. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| TLS client configuration for Loki URL. |
15.1.64. .spec.loki.microservices.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration for Loki URL.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.65. .spec.loki.microservices.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.66. .spec.loki.microservices.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.67. .spec.loki.monolithic Copy linkLink copied to clipboard!
- Description
-
Loki configuration for
Monolithicmode. Use this option when Loki is installed using the monolithic deployment mode (https://grafana.com/docs/loki/latest/fundamentals/architecture/deployment-modes/#monolithic-mode). It is ignored for other modes. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| TLS client configuration for Loki URL. |
|
|
|
|
15.1.68. .spec.loki.monolithic.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration for Loki URL.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.69. .spec.loki.monolithic.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.70. .spec.loki.monolithic.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.71. .spec.networkPolicy Copy linkLink copied to clipboard!
- Description
-
networkPolicydefines ingress network policy settings for Network Observability components isolation. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
Set |
15.1.72. .spec.processor Copy linkLink copied to clipboard!
- Description
-
processordefines the settings of the component that receives the flows from the agent, enriches them, generates metrics, and forwards them to the Loki persistence layer and/or any available exporter. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
-
-
- |
|
|
|
|
|
|
|
Set |
|
|
|
|
|
|
|
|
15.1.73. .spec.processor.advanced Copy linkLink copied to clipboard!
- Description
-
advancedallows setting some aspects of the internal configuration of the flow processor. This section is aimed mostly for debugging and fine-grained performance optimizations, such asGOGCandGOMAXPROCSenvironment vars. Set these values at your own risk. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Port of the flow collector (host port). By convention, some values are forbidden. It must be greater than 1024 and different from 4500, 4789 and 6081. |
|
|
|
|
|
|
| scheduling controls how the pods are scheduled on nodes. |
|
|
| Defines secondary networks to be checked for resources identification. To guarantee a correct identification, indexed values must form an unique identifier across the cluster. If the same index is used by several resources, those resources might be incorrectly labeled. |
15.1.74. .spec.processor.advanced.scheduling Copy linkLink copied to clipboard!
- Description
- scheduling controls how the pods are scheduled on nodes.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| If specified, the pod’s scheduling constraints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling. |
|
|
|
|
|
|
| If specified, indicates the pod’s priority. For documentation, refer to https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#how-to-use-priority-and-preemption. If not specified, default priority is used, or zero if there is no default. |
|
|
|
|
15.1.75. .spec.processor.advanced.scheduling.affinity Copy linkLink copied to clipboard!
- Description
- If specified, the pod’s scheduling constraints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling.
- Type
-
object
15.1.76. .spec.processor.advanced.scheduling.tolerations Copy linkLink copied to clipboard!
- Description
-
tolerationsis a list of tolerations that allow the pod to schedule onto nodes with matching taints. For documentation, refer to https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#scheduling. - Type
-
array
15.1.77. .spec.processor.advanced.secondaryNetworks Copy linkLink copied to clipboard!
- Description
- Defines secondary networks to be checked for resources identification. To guarantee a correct identification, indexed values must form an unique identifier across the cluster. If the same index is used by several resources, those resources might be incorrectly labeled.
- Type
-
array
15.1.78. .spec.processor.advanced.secondaryNetworks[] Copy linkLink copied to clipboard!
- Description
- Type
-
object - Required
-
index -
name
-
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
15.1.79. .spec.processor.deduper Copy linkLink copied to clipboard!
- Description
-
deduperallows you to sample or drop flows identified as duplicates, in order to save on resource usage. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
Set the Processor de-duplication mode. It comes in addition to the Agent-based deduplication, since the Agent cannot de-duplicate same flows reported from different nodes.
- Use
- Use
- Use |
|
|
|
|
15.1.80. .spec.processor.filters Copy linkLink copied to clipboard!
- Description
-
filterslets you define custom filters to limit the amount of generated flows. These filters provide more flexibility than the eBPF Agent filters (inspec.agent.ebpf.flowFilter), such as allowing to filter by Kubernetes namespace, but with a lesser improvement in performance. - Type
-
array
15.1.81. .spec.processor.filters[] Copy linkLink copied to clipboard!
- Description
-
FLPFilterSetdefines the desired configuration for FLP-based filtering satisfying all conditions. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
If specified, these filters target a single output: |
|
|
| A query that selects the network flows to keep. More information about this query language in https://github.com/netobserv/flowlogs-pipeline/blob/main/docs/filtering.md. |
|
|
|
|
15.1.82. .spec.processor.kafkaConsumerAutoscaler Copy linkLink copied to clipboard!
- Description
-
kafkaConsumerAutoscaleris the spec of a horizontal pod autoscaler to set up forflowlogs-pipeline-transformer, which consumes Kafka messages. This setting is ignored when Kafka is disabled. Refer to HorizontalPodAutoscaler documentation (autoscaling/v2). - Type
-
object
15.1.83. .spec.processor.metrics Copy linkLink copied to clipboard!
- Description
-
Metricsdefine the processor configuration regarding metrics - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Metrics server endpoint configuration for Prometheus scraper |
15.1.84. .spec.processor.metrics.server Copy linkLink copied to clipboard!
- Description
- Metrics server endpoint configuration for Prometheus scraper
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| The metrics server HTTP port. |
|
|
| TLS configuration. |
15.1.85. .spec.processor.metrics.server.tls Copy linkLink copied to clipboard!
- Description
- TLS configuration.
- Type
-
object - Required
-
type
-
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
TLS configuration when |
|
|
|
Reference to the CA file when |
|
|
|
Select the type of TLS configuration:
- |
15.1.86. .spec.processor.metrics.server.tls.provided Copy linkLink copied to clipboard!
- Description
-
TLS configuration when
typeis set toProvided. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.87. .spec.processor.metrics.server.tls.providedCaFile Copy linkLink copied to clipboard!
- Description
-
Reference to the CA file when
typeis set toProvided. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| File name within the config map or secret. |
|
|
| Name of the config map or secret containing the file. |
|
|
| Namespace of the config map or secret containing the file. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the file reference: |
15.1.88. .spec.processor.resources Copy linkLink copied to clipboard!
- Description
-
resourcesare the compute resources required by this container. For more information, see https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
|
|
| Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
15.1.89. .spec.processor.subnetLabels Copy linkLink copied to clipboard!
- Description
-
subnetLabelsallows to define custom labels on subnets and IPs or to enable automatic labelling of recognized subnets in OpenShift Container Platform, which is used to identify cluster external traffic. When a subnet matches the source or destination IP of a flow, a corresponding field is added:SrcSubnetLabelorDstSubnetLabel. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
15.1.90. .spec.processor.subnetLabels.customLabels Copy linkLink copied to clipboard!
- Description
-
customLabelsallows to customize subnets and IPs labelling, such as to identify cluster-external workloads or web services. If you enableopenShiftAutoDetect,customLabelscan override the detected subnets in case they overlap. - Type
-
array
15.1.91. .spec.processor.subnetLabels.customLabels[] Copy linkLink copied to clipboard!
- Description
- SubnetLabel allows to label subnets and IPs, such as to identify cluster-external workloads or web services.
- Type
-
object - Required
-
cidrs -
name
-
| Property | Type | Description |
|---|---|---|
|
|
|
List of CIDRs, such as |
|
|
| Label name, used to flag matching flows. |
15.1.92. .spec.prometheus Copy linkLink copied to clipboard!
- Description
-
prometheusdefines Prometheus settings, such as querier configuration used to fetch metrics from the Console plugin. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
| Prometheus querying configuration, such as client settings, used in the Console plugin. |
15.1.93. .spec.prometheus.querier Copy linkLink copied to clipboard!
- Description
- Prometheus querying configuration, such as client settings, used in the Console plugin.
- Type
-
object - Required
-
mode
-
| Property | Type | Description |
|---|---|---|
|
|
|
When |
|
|
|
Prometheus configuration for |
|
|
|
- Use
- Use |
|
|
|
|
15.1.94. .spec.prometheus.querier.manual Copy linkLink copied to clipboard!
- Description
-
Prometheus configuration for
Manualmode. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
Set |
|
|
| TLS client configuration for Prometheus URL. |
|
|
|
|
15.1.95. .spec.prometheus.querier.manual.tls Copy linkLink copied to clipboard!
- Description
- TLS client configuration for Prometheus URL.
- Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
| Enable TLS |
|
|
|
|
|
|
|
|
15.1.96. .spec.prometheus.querier.manual.tls.caCert Copy linkLink copied to clipboard!
- Description
-
caCertdefines the reference of the certificate for the Certificate Authority. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |
15.1.97. .spec.prometheus.querier.manual.tls.userCert Copy linkLink copied to clipboard!
- Description
-
userCertdefines the user certificate reference and is used for mTLS. When you use one-way TLS, you can ignore this property. - Type
-
object
| Property | Type | Description |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
| Name of the config map or secret containing certificates. |
|
|
| Namespace of the config map or secret containing certificates. If omitted, the default is to use the same namespace as where Network Observability is deployed. If the namespace is different, the config map or the secret is copied so that it can be mounted as required. |
|
|
|
Type for the certificate reference: |