Skip to main content
Cloud Insights
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Opzioni di configurazione dell'operatore di monitoraggio NetApp Kubernetes

Collaboratori

Il "NetApp Kubernetes Monitoring Operator" è possibile personalizzare l'installazione e la configurazione.

La tabella seguente elenca le possibili opzioni per il file AgentConfiguration:

Componente Opzione Descrizione

agente

Opzioni di configurazione comuni a tutti i componenti che l'operatore può installare. Queste opzioni possono essere considerate "globali".

DockerRepo

Un override dockerRepo per estrarre le immagini dai repos del docker privato dei clienti rispetto a Cloud Insights docker repo. Il valore predefinito è Cloud Insights docker repo

DockerImagePullSecret

Facoltativo: Un segreto per i clienti privati

Nome cluster

Campo di testo libero che identifica in modo univoco un cluster in tutti i cluster dei clienti. Questo dovrebbe essere unico in un tenant Cloud Insights. Il valore predefinito è quello che il cliente inserisce nell'interfaccia utente per il campo "Cluster Name" (Nome cluster)

proxy

Formato:

proxy:

server:
porta:
nome utente:
password:
NoProxy:
IsTelegrafProxyEnabled:
IsAuxyEnabled:
IsFluentbitProxyEnabled:
IsCollectorProxyEnabled:

Opzionale per impostare proxy. Si tratta in genere del proxy aziendale del cliente.

telefono

Opzioni di configurazione che consentono di personalizzare l'installazione di telegraf dell'operatore

CollectionInterval

Intervallo di raccolta delle metriche, in secondi (max=60s)

DsCpuLimit

Limite CPU per telegraf ds

DsMemLimit

Limite di memoria per telegraf ds

DsCpuRequest

Richiesta CPU per telegraf ds

DsMemRequest

Richiesta di memoria per telegraf ds

RsCpuLimit

Limite CPU per telegraf rs

RsMemLimit

Limite di memoria per telegraf rs

RsCpuRequest

Richiesta CPU per telegraf rs

RsMemRequest

Richiesta di memoria per telegraf rs

DockerMountPoint

Un override per il percorso dockerMountPoint. Questo vale per le installazioni di docker non standard su piattaforme k8s come la fonderia cloud

DockerUnixSocket

Un override per il percorso dockerUnixSocket. Questo vale per le installazioni di docker non standard su piattaforme k8s come la fonderia cloud.

CrioSockPath

Un override per il percorso di crioSockPath. Questo vale per le installazioni di docker non standard su piattaforme k8s come la fonderia cloud.

RunPriveged

Eseguire il container telegraf in modalità privilegiata. Impostare questa opzione su true se SELinux è attivato sui nodi k8s

Batch Size (dimensione batch)

Vedere "Documentazione sulla configurazione di Telegraf"

BufferLimit

Vedere "Documentazione sulla configurazione di Telegraf"

RoundInterval

Vedere "Documentazione sulla configurazione di Telegraf"

CollectionJitter

Vedere "Documentazione sulla configurazione di Telegraf"

precisione

Vedere "Documentazione sulla configurazione di Telegraf"

FlushInterval

Vedere "Documentazione sulla configurazione di Telegraf"

FlushJitter

Vedere "Documentazione sulla configurazione di Telegraf"

OutputTimeout

Vedere "Documentazione sulla configurazione di Telegraf"

DockerMetricCollectionEnabled

Raccogli le metriche di Docker. Per impostazione predefinita, questa opzione è impostata su true e le metriche del docker verranno raccolte per le implementazioni k8s on-premise e basate su docker. Per disattivare la raccolta di metriche docker, impostarla su false.

DsTolerazioni

teletegraf-ds tollerazioni aggiuntive.

RsTolerazioni

tollerazioni aggiuntive di telegraf-rs.

kube-state-metrics

Opzioni di configurazione che possono personalizzare l'installazione delle metriche di stato kube dell'operatore

CpuLimit

Limite di CPU per l'implementazione delle metriche di stato kube

MemLimit

Limite MEM per l'implementazione delle metriche dello stato del kube

CpuRequest

Richiesta di CPU per l'implementazione delle metriche di stato del kube

MemRequest

Richiesta MEM per l'implementazione delle metriche di stato del kube

risorse

un elenco separato da virgole di risorse da acquisire. esempio: cronjobs,demonset,implementazioni,inserimenti,job,namespaces,nodi,persistentvolumeclaims, persistentvolumes,pod,replicasets,resourcequotas,servizi,statefulsets

tollerazioni

tolleranze aggiuntive delle metriche dello stato del kube.

etichette

un elenco separato da virgole di risorse che kube-state-metrics dovrebbe acquisire

esempio: cronjobs=[*],demonsets=[*],deployments=[*],ingresses=[*],jobs=[*],namespaces=[*],nodes=[*], persistentvolumeclaims=[*],persistentvolumes=[*],pods=[*],replicasets=[*],resourcequotas=[*],services=[*],statefulsets=[*]

registri

Opzioni di configurazione che consentono di personalizzare la raccolta e l'installazione dei log dell'operatore

ReadFromHead

vero/falso, dovrebbe leggere fluentemente il log dalla testa

timeout

timeout, in sec.

DnsMode

TCP/UDP, modalità per DNS

tolleranza ai bit fluente

tolleranza aggiuntiva ai bit fluenti.

tolleranza-evento-esportatore

tolleranza aggiuntiva per gli esportatori di eventi.

mappa del carico di lavoro

Opzioni di configurazione che consentono di personalizzare la raccolta e l'installazione della mappa del carico di lavoro dell'operatore

CpuLimit

Limite CPU per i server di osservazione della rete

MemLimit

limite mem per gli osservatori netti

CpuRequest

Richiesta CPU per net osservatore ds

MemRequest

richiesta mem per net osservatore ds

MetricAggregationInterval

intervallo di aggregazione metrico, in secondi

BpfPollInterval

Intervallo di polling BPF, in secondi

EnableDNSLookup

Vero/falso, attiva ricerca DNS

l4-tollerazioni

tolleranza aggiuntiva net-observer-l4-ds.

RunPriveged

Vero/falso - impostare runPrivileged su true se SELinux è abilitato sui tuoi nodi Kubernetes.

change-management

Opzioni di configurazione per l'analisi e la gestione delle modifiche di Kubernetes

CpuLimit

Limite CPU per change-observer-watch-rs

MemLimit

Limite MEM per change-observer-watch-rs

CpuRequest

Richiesta CPU per change-observer-watch-rs

MemRequest

richiesta mem per change-observer-watch-rs

FailureDeclarationIntervalMins

Intervallo in minuti dopo il quale un'implementazione non riuscita di un carico di lavoro viene contrassegnata come non riuscita

DeployAggrIntervalSeconds

Frequenza con cui vengono inviati gli eventi di distribuzione del carico di lavoro in corso

NonWorkloadAggrIntervalSeconds

Frequenza di combinazione e invio delle implementazioni non a carico di lavoro

TermsToRedact

Insieme di espressioni regolari utilizzate nei nomi env e nelle mappe di dati il cui valore verrà rivisto
Termini di esempio:"pwd", "password", "token", "apikey", "api-key", "jwt"

AdditionalKindsToWatch

Un elenco separato da virgole di tipi aggiuntivi da guardare dal set di tipi predefinito guardato dal raccoglitore

KindsToIgnoreFromWatch

Un elenco di tipi separati da virgole da ignorare dall'insieme predefinito di tipi controllati dal raccoglitore

LogRecordAggrIntervalSeconds

Frequenza con cui i record di registro vengono inviati al ci dal raccoglitore

tolleranza di controllo

modifica-osservatore-guarda-ds tolleranze aggiuntive. Solo formato abbreviato a riga singola.
Esempio: '{key: taint1, operator: Exists, Effect: NoSchedule},{key: taint2, operator: Exists, Effect: NoExecute}'

Esempio di file AgentConfiguration

Di seguito è riportato un esempio di file 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: ''----