Kubernetes 监控 Operator 配置选项
这"Kubernetes 监控操作员"通过 AgentConfiguration 文件提供丰富的自定义选项。您可以配置资源限制、收集间隔、代理设置、容差以及特定于组件的设置,以优化 Kubernetes 环境的监控。使用这些选项可以自定义 telegraf、kube-state-metrics、日志收集、工作负载映射、变更管理和其他监控组件。
下表列出了 AgentConfiguration 文件的可能选项:
| 组件 | 选项 | 描述 |
|---|---|---|
代理人 |
操作员可以安装的所有组件所共有的配置选项。这些可以被视为“全局”选项。 |
|
dockerRepo |
dockerRepo 覆盖,用于从客户的私有 Docker 存储库(而不是Data Infrastructure Insights Docker 存储库)拉取镜像。默认为Data Infrastructure Insights Docker 存储库。 |
|
dockerImagePullSecret |
可选:客户私有存储库的秘密。 |
|
集群名称 |
自由文本字段,用于在所有客户集群中唯一标识一个集群。此字段在Data Infrastructure Insights租户中应是唯一的。默认值为客户在 UI 中为“集群名称”字段输入的内容。 |
|
代理格式:代理:服务器:端口:用户名:密码:noProxy:isTelegrafProxyEnabled:isAuProxyEnabled:isFluentbitProxyEnabled:isCollectorProxyEnabled: |
可选择设置代理。这通常是客户的公司代理。 |
|
电讯报 |
可以自定义 Operator 的 telegraf 安装的配置选项 |
|
收集间隔 |
指标收集间隔,以秒为单位(最大 60 秒) |
|
dsCpuLimit |
telegraf ds 的 CPU 限制 |
|
dsMemLimit |
telegraf ds 的内存限制 |
|
dsCpu请求 |
telegraf ds 的 CPU 请求 |
|
dsMem请求 |
telegraf ds 的内存请求 |
|
rsCpuLimit |
telegraf rs 的 CPU 限制 |
|
rsMemLimit |
telegraf rs 的内存限制 |
|
rsCpu请求 |
telegraf rs 的 CPU 请求 |
|
rsMem请求 |
telegraf rs 的内存请求 |
|
运行特权 |
在特权模式下运行 telegraf DaemonSet 的 telegraf-mountstats-poller 容器。如果您的 Kubernetes 节点上启用了 SELinux,请将其设置为 true。 |
|
运行Ds特权 |
将 runDsPrivileged 设置为 true 以在特权模式下运行 telegraf DaemonSet 的 telegraf 容器。 |
|
批量大小 |
||
缓冲区限制 |
||
轮次间隔 |
||
集合抖动 |
||
精确 |
||
刷新间隔 |
||
刷新抖动 |
||
输出超时 |
||
dsTolerations |
telegraf-ds 额外的容忍度。 |
|
rsTolerations |
telegraf-rs 额外的容忍度。 |
|
skipProcessorsAfterAggregators |
||
未受保护 |
看看这个"已知的 Telegraf 问题" 。设置 unprotected 将指示 Kubernetes Monitoring Operator 使用以下方式运行 Telegraf `--unprotected`旗帜。 |
|
insecureK8sSkipVerify |
如果由于缺少 IP SAN,telegraf 无法验证证书,请尝试启用验证跳过 |
|
kube 状态指标 |
可以自定义 Operator 的 kube 状态指标安装的配置选项 |
|
CPU限制 |
kube-state-metrics 部署的 CPU 限制 |
|
内存限制 |
kube-state-metrics 部署的内存限制 |
|
CPU请求 |
kube 状态指标部署的 CPU 请求 |
|
内存请求 |
kube 状态指标部署的内存请求 |
|
资源 |
要捕获的资源的逗号分隔列表。例如:cronjobs、daemonsets、deployments、ingresses、jobs、namespaces、nodes、persistentvolumeclaims、persistentvolumes、pods、replicasets、resourcequotas、services、statefulsets |
|
容忍度 |
kube-state-metrics 额外的容忍度。 |
|
标签 |
kube-state-metrics 应捕获标签的资源的逗号分隔列表 示例:cronjobs=[*],daemonsets=[*],deployments=[*],ingresses=[*],jobs=[*],namespaces=[*],nodes=[*], persistentvolumeclaims=[*],persistentvolumes=[*],pods=[*],replicasets=[*],resourcequotas=[*],services=[*],statefulsets=[*] |
|
logs |
可以自定义日志收集和 Operator 安装的配置选项 |
|
readFromHead |
true/false,Fluent Bit 是否应该从头部读取日志 |
|
timeout |
超时,以秒为单位 |
|
dns模式 |
TCP/UDP,DNS 模式 |
|
流利位容忍度 |
fluent-bit-ds 额外的容忍度。 |
|
事件导出器容忍度 |
事件导出器额外的容忍度。 |
|
事件导出器-maxEventAgeSeconds |
事件导出器最大事件年龄。看 https://github.com/jkroepke/resmoio-kubernetes-event-exporter |
|
fluent-bit-containerLogPath |
默认情况下,Fluentbit DaemonSet 将挂载 /var/log 和 /var/lib/docker/containers 主机路径来访问/读取 Kubernetes 容器日志。如果 Kubernetes 已配置为将容器日志放置在非默认位置,请使用此选项修改 Fluentbit DaemonSet 以挂载非默认路径。 |
|
工作负载图 |
可以自定义 Operator 的工作负载地图收集和安装的配置选项。 |
|
CPU限制 |
网络观察者 ds 的 CPU 限制 |
|
内存限制 |
网络观察者 ds 的内存限制 |
|
CPU请求 |
网络观察者 ds 的 CPU 请求 |
|
内存请求 |
网络观察者 ds 的内存请求 |
|
度量聚合间隔 |
指标聚合间隔(以秒为单位) |
|
bpf轮询间隔 |
BPF 轮询间隔,以秒为单位 |
|
启用DNS查找 |
true/false,启用 DNS 查找 |
|
l4-容忍度 |
net-observer-l4-ds 额外的容忍度。 |
|
运行特权 |
true/false - 如果在 Kubernetes 节点上启用了 SELinux,则将 runPrivileged 设置为 true。 |
|
变革管理 |
Kubernetes 变更管理和分析的配置选项 |
|
CPU限制 |
change-observer-watch-rs 的 CPU 限制 |
|
内存限制 |
change-observer-watch-rs 的内存限制 |
|
CPU请求 |
change-observer-watch-rs 的 CPU 请求 |
|
内存请求 |
change-observer-watch-rs 的内存请求 |
|
工作负载失败声明间隔秒数 |
工作负载部署失败后将被标记为失败的时间间隔(以秒为单位) |
|
工作负载部署聚合间隔秒数 |
合并和发送工作负载部署的频率(以秒为单位) |
|
nonWorkloadDeployAggrIntervalSeconds |
非工作负载部署合并发送的频率(以秒为单位) |
|
删除条款 |
一组用于环境名称和数据映射的正则表达式,其值将被编辑示例术语:“pwd”、“password”、“token”、“apikey”、“api-key”、“jwt” |
|
额外观看种类 |
收集器监视的默认种类集合中需要监视的附加种类的逗号分隔列表 |
|
忽略监视的种类 |
收集器默认监视的种类列表中,需要忽略的种类,以逗号分隔 |
|
日志记录聚合间隔秒数 |
日志记录从收集器发送到 CI 的频率 |
|
观察容忍度 |
改变观察者观察 ds 额外的容忍度。仅限缩写单行格式。示例:'{key:taint1,operator:Exists,effect:NoSchedule},{key:taint2,operator:Exists,effect:NoExecute}' |
示例代理配置文件
下面是一个示例_AgentConfiguration_文件。
apiVersion: monitoring.netapp.com/v1alpha1
kind: AgentConfiguration
metadata:
name: netapp-ci-monitoring-configuration
namespace: "netapp-monitoring"
labels:
installed-by: nkmo-netapp-monitoring
spec:
# # You can modify the following fields to configure the operator.
# # Optional settings are commented out and include default values for reference
# # To update them, uncomment the line, change the value, and apply the updated AgentConfiguration.
agent:
# # [Required Field] A uniquely identifiable user-friendly clustername.
# # clusterName must be unique across all clusters in your Data Infrastructure Insights environment.
clusterName: "my_cluster"
# # Proxy settings. The proxy that the operator should use to send metrics to Data Infrastructure Insights.
# # Please see documentation here: https://docs.netapp.com/us-en/cloudinsights/task_config_telegraf_agent_k8s.html#configuring-proxy-support
# proxy:
# server:
# port:
# noproxy:
# username:
# password:
# isTelegrafProxyEnabled:
# isFluentbitProxyEnabled:
# isCollectorsProxyEnabled:
# # [Required Field] By default, the operator uses the CI repository.
# # To use a private repository, change this field to your repository name.
# # Please see documentation here: https://docs.netapp.com/us-en/cloudinsights/task_config_telegraf_agent_k8s.html#using-a-custom-or-private-docker-repository
dockerRepo: 'docker.c01.cloudinsights.netapp.com'
# # [Required Field] The name of the imagePullSecret for dockerRepo.
# # If you are using a private repository, change this field from 'netapp-ci-docker' to the name of your secret.
dockerImagePullSecret: 'netapp-ci-docker'
# # Allow the operator to automatically rotate its ApiKey before expiration.
# tokenRotationEnabled: 'true'
# # Number of days before expiration that the ApiKey should be rotated. This must be less than the total ApiKey duration.
# tokenRotationThresholdDays: '30'
telegraf:
# # Settings to fine-tune metrics data collection. Telegraf config names are included in parenthesis.
# # See https://github.com/influxdata/telegraf/blob/master/docs/CONFIGURATION.md#agent
# # The default time telegraf will wait between inputs for all plugins (interval). Max=60
# collectionInterval: '60s'
# # Maximum number of records per output that telegraf will write in one batch (metric_batch_size).
# batchSize: '10000'
# # Maximum number of records per output that telegraf will cache pending a successful write (metric_buffer_limit).
# bufferLimit: '150000'
# # Collect metrics on multiples of interval (round_interval).
# roundInterval: 'true'
# # Each plugin waits a random amount of time between the scheduled collection time and that time + collection_jitter before collecting inputs (collection_jitter).
# collectionJitter: '0s'
# # Collected metrics are rounded to the precision specified. When set to "0s" precision will be set by the units specified by interval (precision).
# precision: '0s'
# # Time telegraf will wait between writing outputs (flush_interval). Max=collectionInterval
# flushInterval: '60s'
# # Each output waits a random amount of time between the scheduled write time and that time + flush_jitter before writing outputs (flush_jitter).
# flushJitter: '0s'
# # Timeout for writing to outputs (timeout).
# outputTimeout: '5s'
# # telegraf-ds CPU/Mem limits and requests.
# # See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
# dsCpuLimit: '750m'
# dsMemLimit: '800Mi'
# dsCpuRequest: '100m'
# dsMemRequest: '500Mi'
# # telegraf-rs CPU/Mem limits and requests.
# rsCpuLimit: '3'
# rsMemLimit: '4Gi'
# rsCpuRequest: '100m'
# rsMemRequest: '500Mi'
# # Skip second run of processors after aggregators
# skipProcessorsAfterAggregators: 'true'
# # telegraf additional tolerations. Use the following abbreviated single line format only.
# # Inspect telegraf-rs/-ds to view tolerations which are always present.
# # Example: '{key: taint1, operator: Exists, effect: NoSchedule},{key: taint2, operator: Exists, effect: NoExecute}'
# dsTolerations: ''
# rsTolerations: ''
# If telegraf warns of insufficient lockable memory, try increasing the limit of lockable memory for Telegraf in the underlying operating system/node. If increasing the limit is not an option, set this to true to instruct Telegraf to not attempt to reserve locked memory pages. While this might pose a security risk as decrypted secrets might be swapped out to disk, it allows for execution in environments where reserving locked memory is not possible.
# unprotected: 'false'
# # Run the telegraf DaemonSet's telegraf-mountstats-poller container in privileged mode. Set runPrivileged to true if SELinux is enabled on your Kubernetes nodes.
# runPrivileged: '{{ .Values.telegraf_installer.kubernetes.privileged_mode }}'
# # Set runDsPrivileged to true to run the telegraf DaemonSet's telegraf container in privileged mode
# runDsPrivileged: '{{ .Values.telegraf_installer.kubernetes.ds.privileged_mode }}'
# # Collect container Block IO metrics.
# dsBlockIOEnabled: 'true'
# # Collect NFS IO metrics.
# dsNfsIOEnabled: 'true'
# # Collect kubernetes.system_container metrics and objects in the kube-system|cattle-system namespaces for managed kubernetes clusters (EKS, AKS, GKE, managed Rancher). Set this to true if you want collect these metrics.
# managedK8sSystemMetricCollectionEnabled: 'false'
# # Collect kubernetes.pod_volume (pod ephemeral storage) metrics. Set this to true if you want to collect these metrics.
# podVolumeMetricCollectionEnabled: 'false'
# # Declare Rancher cluster as managed. Set this to true if your Rancher cluster is managed as opposed to on-premise.
# isManagedRancher: 'false'
# # If telegraf-rs fails to start due to being unable to find the etcd crt and key, manually specify the appropriate path here.
# rsHostEtcdCrt: ''
# rsHostEtcdKey: ''
# kube-state-metrics:
# # kube-state-metrics CPU/Mem limits and requests.
# cpuLimit: '500m'
# memLimit: '1Gi'
# cpuRequest: '100m'
# memRequest: '500Mi'
# # Comma-separated list of resources to enable.
# # See resources in https://github.com/kubernetes/kube-state-metrics/blob/main/docs/cli-arguments.md
# resources: 'cronjobs,daemonsets,deployments,ingresses,jobs,namespaces,nodes,persistentvolumeclaims,persistentvolumes,pods,replicasets,resourcequotas,services,statefulsets'
# # Comma-separated list of metrics to enable.
# # See metric-allowlist in https://github.com/kubernetes/kube-state-metrics/blob/main/docs/cli-arguments.md
# metrics: 'kube_cronjob_created,kube_cronjob_status_active,kube_cronjob_labels,kube_daemonset_created,kube_daemonset_status_current_number_scheduled,kube_daemonset_status_desired_number_scheduled,kube_daemonset_status_number_available,kube_daemonset_status_number_misscheduled,kube_daemonset_status_number_ready,kube_daemonset_status_number_unavailable,kube_daemonset_status_observed_generation,kube_daemonset_status_updated_number_scheduled,kube_daemonset_metadata_generation,kube_daemonset_labels,kube_deployment_status_replicas,kube_deployment_status_replicas_available,kube_deployment_status_replicas_unavailable,kube_deployment_status_replicas_updated,kube_deployment_status_observed_generation,kube_deployment_spec_replicas,kube_deployment_spec_paused,kube_deployment_spec_strategy_rollingupdate_max_unavailable,kube_deployment_spec_strategy_rollingupdate_max_surge,kube_deployment_metadata_generation,kube_deployment_labels,kube_deployment_created,kube_job_created,kube_job_owner,kube_job_status_active,kube_job_status_succeeded,kube_job_status_failed,kube_job_labels,kube_job_status_start_time,kube_job_status_completion_time,kube_namespace_created,kube_namespace_labels,kube_namespace_status_phase,kube_node_info,kube_node_labels,kube_node_role,kube_node_spec_unschedulable,kube_node_created,kube_persistentvolume_capacity_bytes,kube_persistentvolume_status_phase,kube_persistentvolume_labels,kube_persistentvolume_info,kube_persistentvolume_claim_ref,kube_persistentvolumeclaim_access_mode,kube_persistentvolumeclaim_info,kube_persistentvolumeclaim_labels,kube_persistentvolumeclaim_resource_requests_storage_bytes,kube_persistentvolumeclaim_status_phase,kube_pod_info,kube_pod_start_time,kube_pod_completion_time,kube_pod_owner,kube_pod_labels,kube_pod_status_phase,kube_pod_status_ready,kube_pod_status_scheduled,kube_pod_container_info,kube_pod_container_status_waiting,kube_pod_container_status_waiting_reason,kube_pod_container_status_running,kube_pod_container_state_started,kube_pod_container_status_terminated,kube_pod_container_status_terminated_reason,kube_pod_container_status_last_terminated_reason,kube_pod_container_status_ready,kube_pod_container_status_restarts_total,kube_pod_overhead_cpu_cores,kube_pod_overhead_memory_bytes,kube_pod_created,kube_pod_deletion_timestamp,kube_pod_init_container_info,kube_pod_init_container_status_waiting,kube_pod_init_container_status_waiting_reason,kube_pod_init_container_status_running,kube_pod_init_container_status_terminated,kube_pod_init_container_status_terminated_reason,kube_pod_init_container_status_last_terminated_reason,kube_pod_init_container_status_ready,kube_pod_init_container_status_restarts_total,kube_pod_status_scheduled_time,kube_pod_status_unschedulable,kube_pod_spec_volumes_persistentvolumeclaims_readonly,kube_pod_container_resource_requests_cpu_cores,kube_pod_container_resource_requests_memory_bytes,kube_pod_container_resource_requests_storage_bytes,kube_pod_container_resource_requests_ephemeral_storage_bytes,kube_pod_container_resource_limits_cpu_cores,kube_pod_container_resource_limits_memory_bytes,kube_pod_container_resource_limits_storage_bytes,kube_pod_container_resource_limits_ephemeral_storage_bytes,kube_pod_init_container_resource_limits_cpu_cores,kube_pod_init_container_resource_limits_memory_bytes,kube_pod_init_container_resource_limits_storage_bytes,kube_pod_init_container_resource_limits_ephemeral_storage_bytes,kube_pod_init_container_resource_requests_cpu_cores,kube_pod_init_container_resource_requests_memory_bytes,kube_pod_init_container_resource_requests_storage_bytes,kube_pod_init_container_resource_requests_ephemeral_storage_bytes,kube_replicaset_status_replicas,kube_replicaset_status_ready_replicas,kube_replicaset_status_observed_generation,kube_replicaset_spec_replicas,kube_replicaset_metadata_generation,kube_replicaset_labels,kube_replicaset_created,kube_replicaset_owner,kube_resourcequota,kube_resourcequota_created,kube_service_info,kube_service_labels,kube_service_created,kube_service_spec_type,kube_statefulset_status_replicas,kube_statefulset_status_replicas_current,kube_statefulset_status_replicas_ready,kube_statefulset_status_replicas_updated,kube_statefulset_status_observed_generation,kube_statefulset_replicas,kube_statefulset_metadata_generation,kube_statefulset_created,kube_statefulset_labels,kube_statefulset_status_current_revision,kube_statefulset_status_update_revision,kube_node_status_capacity,kube_node_status_allocatable,kube_node_status_condition,kube_pod_container_resource_requests,kube_pod_container_resource_limits,kube_pod_init_container_resource_limits,kube_pod_init_container_resource_requests'
# # Comma-separated list of Kubernetes label keys that will be used in the resources' labels metric.
# # See metric-labels-allowlist in https://github.com/kubernetes/kube-state-metrics/blob/main/docs/cli-arguments.md
# labels: 'cronjobs=[*],daemonsets=[*],deployments=[*],ingresses=[*],jobs=[*],namespaces=[*],nodes=[*],persistentvolumeclaims=[*],persistentvolumes=[*],pods=[*],replicasets=[*],resourcequotas=[*],services=[*],statefulsets=[*]'
# # kube-state-metrics additional tolerations. Use the following abbreviated single line format only.
# # No tolerations are applied by default
# # Example: '{key: taint1, operator: Exists, effect: NoSchedule},{key: taint2, operator: Exists, effect: NoExecute}'
# tolerations: ''
# # kube-state-metrics shards. Increase the number of shards for larger clusters if telegraf RS pod(s) experience collection timeouts
# shards: '2'
# # Settings for the Events Log feature.
# logs:
# # Set runPrivileged to true if Fluent Bit fails to start, trying to open/create its database.
# runPrivileged: 'false'
# # If Fluent Bit should read new files from the head, not tail.
# # See Read_from_Head in https://docs.fluentbit.io/manual/pipeline/inputs/tail
# readFromHead: "true"
# # Network protocol that Fluent Bit should use for DNS: "UDP" or "TCP".
# dnsMode: "UDP"
# # DNS resolver that Fluent Bit should use: "LEGACY" or "ASYNC"
# fluentBitDNSResolver: "LEGACY"
# # Logs additional tolerations. Use the following abbreviated single line format only.
# # Inspect fluent-bit-ds to view tolerations which are always present. No tolerations are applied by default for event-exporter.
# # Example: '{key: taint1, operator: Exists, effect: NoSchedule},{key: taint2, operator: Exists, effect: NoExecute}'
# fluent-bit-tolerations: ''
# event-exporter-tolerations: ''
# # event-exporter CPU/Mem limits and requests.
# # See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
# event-exporter-cpuLimit: '500m'
# event-exporter-memLimit: '1Gi'
# event-exporter-cpuRequest: '50m'
# event-exporter-memRequest: '100Mi'
# # event-exporter max event age.
# # See https://github.com/jkroepke/resmoio-kubernetes-event-exporter
# event-exporter-maxEventAgeSeconds: '10'
# # event-exporter client-side throttling
# # Set kubeBurst to roughly match your events per minute and kubeQPS=kubeBurst/5
# # See https://github.com/resmoio/kubernetes-event-exporter#troubleshoot-events-discarded-warning
# event-exporter-kubeQPS: 20
# event-exporter-kubeBurst: 100
# # fluent-bit CPU/Mem limits and requests.
# # See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
# fluent-bit-cpuLimit: '500m'
# fluent-bit-memLimit: '1Gi'
# fluent-bit-cpuRequest: '50m'
# fluent-bit-memRequest: '100Mi'
# By default, the Fluentbit DaemonSet will mount the /var/log and /var/lib/docker/containers host paths to access/read the
# Kubernetes container logs. If Kubernetes has been configured to place container logs in a non-default location, use
# this option to modify the Fluentbit DaemonSet to mount the non-default path.
# fluent-bit-containerLogPath
# # Settings for the Network Performance and Map feature.
# workload-map:
# # netapp-ci-net-observer-l4-ds CPU/Mem limits and requests.
# # See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
# cpuLimit: '500m'
# memLimit: '500Mi'
# cpuRequest: '100m'
# memRequest: '500Mi'
# # Metric aggregation interval in seconds. Min=30, Max=120
# metricAggregationInterval: '60'
# # Interval for bpf polling. Min=3, Max=15
# bpfPollInterval: '8'
# # Enable performing reverse DNS lookups on observed IPs.
# enableDNSLookup: 'true'
# # netapp-ci-net-observer-l4-ds additional tolerations. Use the following abbreviated single line format only.
# # Inspect netapp-ci-net-observer-l4-ds to view tolerations which are always present.
# # Example: '{key: taint1, operator: Exists, effect: NoSchedule},{key: taint2, operator: Exists, effect: NoExecute}'
# l4-tolerations: ''
# # Set runPrivileged to true if SELinux is enabled on your Kubernetes nodes.
# # Note: In OpenShift environments, this is set to true automatically.
# runPrivileged: 'false'
# change-management:
# # change-observer-watch-rs CPU/Mem limits and requests.
# # See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
# cpuLimit: '1'
# memLimit: '1Gi'
# cpuRequest: '500m'
# memRequest: '500Mi'
# # Interval after which a non-successful deployment of a workload will be marked as failed, in seconds
# workloadFailureDeclarationIntervalSeconds: '30'
# # Frequency at which workload deployments are combined and sent, in seconds
# workloadDeployAggrIntervalSeconds: '300'
# # Frequency at which non-workload deployments are combined and sent, in seconds
# nonWorkloadDeployAggrIntervalSeconds: '15'
# # A set of regular expressions used in env names and data maps whose value will be redacted
# termsToRedact: '"pwd", "password", "token", "apikey", "api-key", "api_key", "jwt", "accesskey", "access_key", "access-key", "ca-file", "key-file", "cert", "cafile", "keyfile", "tls", "crt", "salt", ".dockerconfigjson", "auth", "secret"'
# # A comma separated list of additional kinds to watch from the default set of kinds watched by the collector
# # Each kind will have to be prefixed by its apigroup
# # Example: '"authorization.k8s.io.subjectaccessreviews"'
# additionalKindsToWatch: ''
# # A comma separated list of additional field paths whose diff is ignored as part of change analytics. This list in addition to the default set of field paths ignored by the collector.
# # Example: '"metadata.specTime", "data.status"'
# additionalFieldsDiffToIgnore: ''
# # A comma separated list of kinds to ignore from watching from the default set of kinds watched by the collector
# # Each kind will have to be prefixed by its apigroup
# # Example: '"networking.k8s.io.networkpolicies,batch.jobs", "authorization.k8s.io.subjectaccessreviews"'
# kindsToIgnoreFromWatch: ''
# # Frequency with which log records are sent to CI from the collector
# logRecordAggrIntervalSeconds: '20'
# # change-observer-watch-ds additional tolerations. Use the following abbreviated single line format only.
# # Inspect change-observer-watch-ds to view tolerations which are always present.
# # Example: '{key: taint1, operator: Exists, effect: NoSchedule},{key: taint2, operator: Exists, effect: NoExecute}'
# watch-tolerations: ''