Kubernetes 監控 Operator 設定選項
這"Kubernetes 監控操作員"透過 AgentConfiguration 檔案提供豐富的自訂選項。您可以設定資源限制、收集間隔、代理設定、容差以及特定於元件的設置,以最佳化 Kubernetes 環境的監控。使用這些選項可以自訂 telegraf、kube-state-metrics、日誌收集、工作負載映射、變更管理和其他監控元件。
下表列出了 AgentConfiguration 檔案的可能選項:
| 成分 | 選項 | 描述 |
|---|---|---|
代理人 |
操作員可以安裝的所有組件所共有的設定選項。這些可以被視為“全域”選項。 |
|
docker倉庫 |
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=[*] |
|
紀錄 |
可以自訂日誌收集和 Operator 安裝的設定選項 |
|
readFromHead |
true/false,Fluent Bit 是否應該從頭部讀取日誌 |
|
暫停 |
超時,以秒為單位 |
|
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: ''