Skip to main content
Cloud Insights
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

NetApp Kubnetes监控操作员配置选项

贡献者

"NetApp Kubernetes监控操作员" 可以自定义安装和配置。

下表列出了AgentConfiguration文件的可能选项:

组件 选项 说明

代理

操作员可以安装的所有组件通用的配置选项。这些选项可视为"全局"选项。

文档报告员报告

与Cloud Insights Docker repo相比、使用dockerRepo覆盖从客户的专用Docker reposo中提取映像。默认值为Cloud Insights Docker repo

dockerImagePullSecret

可选:客户专用repo的机密

clusterName

自由文本字段、用于在所有客户集群中唯一标识集群。这在Cloud Insights 租户中应该是唯一的。默认值是客户在UI中为"Cluster Name"字段输入的内容

代理

格式。

代理:

服务器:
端口:
用户名:
密码:
NoProxy:
已启用isTelegrafProxy:
已启用isAuProxy:
isFluentbitProxyEnabled:
已启用isCollectorProxy:

可选设置代理。这通常是客户的公司代理。

电报

配置选项、可自定义操作员的安装

secionInterval

指标收集间隔(以秒为单位)(最大= 60秒)

dsCpuLimit

用于数据终端的CPU限制

dsMemLimit

用于数据的存储器限制

dsCpuRequest

为数据发送的CPU请求

dsMemRequest

为数据发送的内存请求

rsCpuLimit

用于RS的CPU限制

rsMemLimit

用于Rs的存储器限制

rsCpuRequest

对RS的CPU请求

rsMemRequest

对RS的存储器请求

dockerMountPoint

对dockerMountPoint路径的覆盖。这适用于在K8s平台(如云代工厂)上安装非标准Docker

文档UnixSocket

对dockerUnixSocket路径的覆盖。这适用于在K8s平台(如云代工厂)上安装非标准Docker。

配置路径

对克里oSockPath路径的覆盖。这适用于在K8s平台(如云代工厂)上安装非标准Docker。

run特权

在特权模式下运行该特拉夫容器。如果在K8s节点上启用了SELinux、请将此选项设置为true

批大小

请参见 "Telegraf配置文档"

缓冲区限制

请参见 "Telegraf配置文档"

RoundInterval

请参见 "Telegraf配置文档"

Jitter

请参见 "Telegraf配置文档"

精确度

请参见 "Telegraf配置文档"

FlushInterval

请参见 "Telegraf配置文档"

Flush抖动

请参见 "Telegraf配置文档"

输出超时

请参见 "Telegraf配置文档"

已启用dockerMetricCollection

收集Docker指标。默认情况下、此值设置为true、系统将为基于Docker的内部部署K8s收集Docker指标。要禁用Docker指标收集、请将此选项设置为false。

ds.公差

Telegraf-DS的额外耐受性。

Rs公差

Telegraf-RS额外的耐受性。

Kube-state-metrics

可自定义操作员的KUbe状态指标安装的配置选项

cpuLimit

Kube-state-metrics部署的CPU限制

memLimit

Kube-state-metrics部署的MEM限制

cpuQuest

KU状态指标部署的CPU请求

MemQuest

MEM请求部署KIBEstate metrics

资源

要捕获的资源的逗号分隔列表。示例:cronjobs、守护程序集、部署、服务器、作业、名称空间、节点、persistentvolumeclaims、persistentvolumes、Pod、复制集、资源集合、服务、状态集

公差

Kube-state-metrics的其他容错性。

labels

应捕获的Kube-state-metrics资源的逗号分隔列表

+ 示例:cronjobs=[*]、守护程序sets=[*]、部署=[*]、ingresses=[*]、Jobs=[*]、名称空间=[*]、节点=[*]、 persistentvolumeclaims=[*],persistentvolumes=[*],Pod=[*],复制集=[*],资源公平otas=[*],services =[*],状态集=[*] +

日志

可自定义操作员日志收集和安装的配置选项

readFromHead

true或false、则应以流畅位从head读取日志

超时

超时(以秒为单位)

dnsMode

TCP/UDP、DNS的模式

流畅的位容差

Fluent-Bit-DS的额外容差。

事件-导出器-容错

事件导出器附加容错。

工作负载映射

可自定义Operator的工作负载映射收集和安装的配置选项

cpuLimit

Net observer DS的CPU限制

memLimit

净观察者DS的MEM限制

cpuQuest

Net observer DS的CPU请求

MemQuest

MEM请求提供Net observer DS

metricRegationInterval

指标聚合间隔(以秒为单位)

bpfPolollInterval

BPF轮询间隔(以秒为单位)

启用DNSLook.e.

是非题、启用DNS查找

L4-公 差

Net-obler-L4-DS附加容错。

run特权

true或false—如果在Kubbernetes节点上启用了SELinux、则将run特权 设置为true。

变更管理

Kubnetes变更管理和分析的配置选项

cpuLimit

change-ob맛 달 풱-Watch RS的CPU限制

memLimit

change-ob맛 달 풱-Watch RS的MEM限制

cpuQuest

对change-ob맛 달 풱-手表-rs的CPU请求

MemQuest

MEM请求change-ob맛 달 풱-Watch RS

failureMins

工作负载部署失败后将标记为失败的间隔(以分钟为单位)

部署聚合IntervalSeconds

发送正在进行的工作负载部署事件的频率

nonWorkloadAggrIntervalSeconds

合并和发送非工作负载部署的频率

TermsToRedact

在env名称和数据映射中使用的一组正则表达式、其值将被编辑
示例术语:"pwd"、"password"、"t令牌"、"APIkey"、"API-key"、 "jwt"

其他KindsToWatch

收集器监控的一组默认类型中要监控的其他类型的逗号分隔列表

kindsToIgnoreFromWatch

收集器监控的一组默认类型中要忽略的监视类型的逗号分隔列表

LogRecordAggrIntervalSeconds

从收集器向CI发送日志记录的频率

手表耐受性

change-ob맛 달 풱-Watch—DS的额外容差。仅限简写单行格式。
示例:"{key:tint1、operator:exists、effect:NoSchedule}、{key:tint2、operator:exists、effect:NoExecute}"

AgentConfiguration文件示例

下面是一个AgentConfiguration文件示例。

apiVersion: monitoring.netapp.com/v1alpha1
kind: AgentConfiguration
metadata:
  name: netapp-monitoring-configuration
  namespace: "NAMESPACE_PLACEHOLDER"
  labels:
    installed-by: nkmo-NAMESPACE_PLACEHOLDER

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 Cloud Insights environment.
    clusterName: "CLUSTERNAME_PLACEHOLDER"

    # # Proxy settings. The proxy that the operator should use to send metrics to Cloud 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_REPO_PLACEHOLDER'
    # # [Required Field] The name of the imagePullSecret for dockerRepo.
    # # If you are using a private repository, change this field from 'docker' to the name of your secret.
    {{ if not (contains .Values.config.cloudType "aws") }}# {{ end -}}
    dockerImagePullSecret: 'docker'

    # # Allow the operator to automatically rotate its ApiKey before expiration.
    # tokenRotationEnabled: '{{ .Values.telegraf_installer.kubernetes.rs.shim_token_rotation  }}'
    # # Number of days before expiration that the ApiKey should be rotated. This must be less than the total ApiKey duration.
    # tokenRotationThresholdDays: '{{ .Values.telegraf_installer.kubernetes.rs.shim_token_rotation_threshold_days  }}'

  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: '{{ .Values.telegraf_installer.agent_resources.collection_interval }}'
    # # Maximum number of records per output that telegraf will write in one batch (metric_batch_size).
    # batchSize: '{{ .Values.telegraf_installer.agent_resources.metric_batch_size }}'
    # # Maximum number of records per output that telegraf will cache pending a successful write (metric_buffer_limit).
    # bufferLimit: '{{ .Values.telegraf_installer.agent_resources.metric_buffer_limit }}'
    # # Collect metrics on multiples of interval (round_interval).
    # roundInterval: '{{ .Values.telegraf_installer.agent_resources.round_interval }}'
    # # Each plugin waits a random amount of time between the scheduled collection time and that time + collection_jitter before collecting inputs (collection_jitter).
    # collectionJitter: '{{ .Values.telegraf_installer.agent_resources.collection_jitter }}'
    # # Collected metrics are rounded to the precision specified. When set to "0s" precision will be set by the units specified by interval (precision).
    # precision: '{{ .Values.telegraf_installer.agent_resources.precision }}'
    # # Time telegraf will wait between writing outputs (flush_interval). Max=collectionInterval
    # flushInterval: '{{ .Values.telegraf_installer.agent_resources.flush_interval }}'
    # # Each output waits a random amount of time between the scheduled write time and that time + flush_jitter before writing outputs (flush_jitter).
    # flushJitter: '{{ .Values.telegraf_installer.agent_resources.flush_jitter }}'
    # # Timeout for writing to outputs (timeout).
    # outputTimeout: '{{ .Values.telegraf_installer.http_output_plugin.timeout }}'

    # # telegraf-ds CPU/Mem limits and requests.
    # # See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
    dsCpuLimit: '{{ .Values.telegraf_installer.telegraf_resources.ds_cpu_limits  }}'
    dsMemLimit: '{{ .Values.telegraf_installer.telegraf_resources.ds_mem_limits  }}'
    dsCpuRequest: '{{ .Values.telegraf_installer.telegraf_resources.ds_cpu_request  }}'
    dsMemRequest: '{{ .Values.telegraf_installer.telegraf_resources.ds_mem_request  }}'

    # # telegraf-rs CPU/Mem limits and requests.
    rsCpuLimit: '{{ .Values.telegraf_installer.telegraf_resources.rs_cpu_limits  }}'
    rsMemLimit: '{{ .Values.telegraf_installer.telegraf_resources.rs_mem_limits  }}'
    rsCpuRequest: '{{ .Values.telegraf_installer.telegraf_resources.rs_cpu_request  }}'
    rsMemRequest: '{{ .Values.telegraf_installer.telegraf_resources.rs_mem_request  }}'

    # # 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: ''

    # # Set runPrivileged to true if SELinux is enabled on your Kubernetes nodes.
    # runPrivileged: 'false'

    # # Collect NFS IO metrics.
    # dsNfsIOEnabled: '{{ .Values.telegraf_installer.kubernetes.ds.shim_nfs_io_processing }}'

    # # 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: '{{ .Values.telegraf_installer.kubernetes.shim_managed_k8s_system_metric_collection }}'

    # # Collect kubernetes.pod_volume (pod ephemeral storage) metrics.  Set this to true if you want to collect these metrics.
    # podVolumeMetricCollectionEnabled: '{{ .Values.telegraf_installer.kubernetes.shim_pod_volume_metric_collection }}'

    # # Declare Rancher cluster as managed.  Set this to true if your Rancher cluster is managed as opposed to on-premise.
    # isManagedRancher: '{{ .Values.telegraf_installer.kubernetes.is_managed_rancher }}'

  # kube-state-metrics:
    # # kube-state-metrics CPU/Mem limits and requests. By default, when unset, kube-state-metrics has no CPU/Mem limits nor request.
    # cpuLimit:
    # memLimit:
    # cpuRequest:
    # memRequest:

    # # Comma-separated list of metrics to enable.
    # # See metric-allowlist 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 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: ''

  # # Settings for the Events Log feature.
  # logs:
    # # 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"

    # # 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: ''

  # # Settings for the Network Performance and Map feature.
  # workload-map:
    # # 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'

    # # net-observer-l4-ds additional tolerations. Use the following abbreviated single line format only.
    # # Inspect 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: '500m'
    # memLimit: '500Mi'
    # cpuRequest: '100m'
    # memRequest: '500Mi'

    # # Interval in minutes after which a non-successful deployment of a workload will be marked as failed
    # failureDeclarationIntervalMins: '30'

    # # Frequency at which workload deployment in-progress events are sent
    # deployAggrIntervalSeconds: '300'

    # # Frequency at which non-workload deployments are combined and sent
    # nonWorkloadAggrIntervalSeconds: '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", "jwt"'

    # # 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 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'
    # 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: ''----