Skip to main content
Cloud Insights
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Options de configuration de l'opérateur de surveillance NetApp Kubernetes

Contributeurs

Le "Opérateur de surveillance NetApp Kubernetes" l'installation et la configuration peuvent être personnalisées.

Le tableau ci-dessous répertorie les options possibles pour le fichier AgentConfiguration :

Composant Option Description

agent

Options de configuration communes à tous les composants que l'opérateur peut installer. Ces options peuvent être considérées comme des options « globales ».

DockerRepo

Remplacement dockerRepo pour extraire des images des repos docker privés des clients par rapport à Cloud Insights docker repo. La valeur par défaut est Cloud Insights docker repo

DockerImagePullSecret

Facultatif : un secret pour les clients repo privés

Nom du cluster

Champ de texte libre qui identifie de manière unique un cluster dans tous les clusters de clients. Il doit être unique pour un locataire Cloud Insights. La valeur par défaut correspond à ce que le client saisit dans l'interface utilisateur pour le champ Cluster Name

proxy

Format :

proxy :

serveur :
port :
nom d'utilisateur :
mot de passe :
NoProxy :
IsTelegrafProxyEnabled :
IsAuProxyEnabled :
IsFluentbitProxyEnabled :
IsCollectorProxyEnabled :

Facultatif pour définir le proxy. Il s'agit généralement du proxy d'entreprise du client.

telegraf

Options de configuration qui peuvent personnaliser l'installation de telegraf de l'opérateur

Intervalle de collection

Intervalle de collecte des metrics, en secondes (max=60 s)

DsCpuLimit

Limite CPU pour les telegraf ds

DsMemLimit

Limite de mémoire pour les télégraf

DsCpuRequest

Demande CPU pour les telegraf ds

DsMemRequest

Demande de mémoire pour les télégraf

RsCpuLimit

Limite CPU pour les RS telegraf

RsMemLimit

Limite de mémoire pour les RS telegraf

RsCpuRequest

Demande CPU pour les RS telegraf

RsMemRequest

Demande de mémoire pour les RS telegraf

DockerMountPoint

Remplacement du chemin dockerMountPoint. Ceci concerne les installations docker non standard sur des plateformes k8s comme la fonderie de cloud

DockerUnixSocket

Remplacement du chemin dockerUnixSocket. Ceci concerne les installations docker non standard sur des plateformes k8s comme la fonderie de cloud.

CrioSockPath

Remplacement du chemin crioSockPath. Ceci concerne les installations docker non standard sur des plateformes k8s comme la fonderie de cloud.

Avec privilèges d'exécution

Exécutez le conteneur telegraf en mode privilégié. Définissez cette valeur sur true si SELinux est activé sur vos nœuds k8s

Taille de la batchSize

Voir "Documentation de configuration de Telegraf"

BufferLimit

Voir "Documentation de configuration de Telegraf"

Interval

Voir "Documentation de configuration de Telegraf"

CollectionJitter

Voir "Documentation de configuration de Telegraf"

précision

Voir "Documentation de configuration de Telegraf"

Intervalle de rinçage

Voir "Documentation de configuration de Telegraf"

Scintillement

Voir "Documentation de configuration de Telegraf"

OutputTimeout

Voir "Documentation de configuration de Telegraf"

DockerMetricCollectionEnabled

Collecte de metrics Docker. Par défaut, ce paramètre est défini sur true et les metrics docker seront collectées pour les déploiements k8s sur site basés sur docker. Pour désactiver la collection de mesures docker, définissez cette option sur false.

Tolérances de type dsTolerations

télégraf-ds tolérances supplémentaires.

RsTolerations

tolérances supplémentaires de telegraf-rs.

metrics-état-kube

Options de configuration permettant de personnaliser l'installation des mesures d'état kube de l'opérateur

CpuLimit

Limite CPU pour le déploiement des indicateurs d'état kube

MemLimit

Limite MEM pour le déploiement de mesures kube-state

CpuRequest

Demande de processeur pour le déploiement de metrics d'état kube

MemRequest

Demande MEM pour le déploiement de mesures d'état kube

ressources

liste de ressources à capturer, séparées par des virgules. exemple : cronjobs,demonsets,déploiements,ingresses,jobs,namespaces,nodes,persentvoluplaims, persentvolumes,pods,réplicasets,resourcetas,services,statefulsets

tolérances

tolérances supplémentaires des indicateurs d'état kube.

étiquettes

liste de ressources séparées par des virgules que les indicateurs d'état kube doivent capturer

exemple : cronjobs=[*],demonsets=[*],déploiements=[*],ingresses=[*],jobs=[*],namespaces=[*],nodes=[*], perstentvolupeclaims=[*],perstentvolumes=[*],pods=[*],réplicasets=[*],resourcecotas=[*],services=[*],statefulsets=[*]

journaux

Options de configuration permettant de personnaliser la collecte des journaux et l'installation de l'opérateur

ReadFromHead

vrai/faux, doit couramment lire le journal à partir de la tête

délai dépassé

délai, en secondes

DnsMode

TCP/UDP, mode pour DNS

tolérances fluentes-bit

fluent-bit-ds tolérances supplémentaires.

tolérance-exportateur-événement

tolérances supplémentaires de l'exportateur d'événements.

mappe des charges de travail

Options de configuration permettant de personnaliser la collection de cartes de charge de travail et l'installation de l'opérateur

CpuLimit

Limite CPU pour net observateur ds

MemLimit

limite mem pour les observateurs nets

CpuRequest

Demande CPU pour net observateur ds

MemRequest

demande mem pour net observateur ds

Intervalle d'Aggregationde métadonnées

intervalle d'agrégation des mesures, en secondes

BpfPollInterval

Intervalle d'interrogation BPF, en secondes

EnableDNSLookup

Vrai/faux, activer la recherche DNS

tolérances l4

net-observateur-l4-ds tolérances supplémentaires.

Avec privilèges d'exécution

True/FALSE : définissez runPrivileged sur TRUE si SELinux est activé sur vos nœuds Kubernetes.

gestion des modifications

Options de configuration de Kubernetes change Management and Analysis

CpuLimit

Limite CPU pour change-observateur-Watch-RS

MemLimit

Limite MEM pour change-observateur-Watch-RS

CpuRequest

Demande CPU pour change-observateur-Watch-RS

MemRequest

demande mem pour changement-observateur-watch-rs

FailureDeclationIntervalMins

Intervalle en minutes après lequel un déploiement non réussi d'une charge de travail sera marqué comme ayant échoué

DeployAggrIntervalSeconds

Fréquence à laquelle les événements de déploiement de charge de travail en cours sont envoyés

Non WorkloadAggrIntervalSeconds

Fréquence à laquelle les déploiements sans charge de travail sont combinés et envoyés

TermsToRedact

Ensemble d'expressions régulières utilisées dans les noms env et les cartes de données dont la valeur sera biffée
Exemples de termes :"pwd", "password", "token", "apikey", "api-key", « jwt »

AdditionalKindsToWatch

Liste séparée par des virgules de types supplémentaires à surveiller par rapport à l'ensemble de types par défaut surveillés par le collecteur

KindsToIgnoreFromWatch

Liste de types séparés par une virgule à ignorer de l'ensemble de types par défaut surveillés par le collecteur

LogRecordAggrIntervalSeconds

Fréquence à laquelle les enregistrements de journal sont envoyés à l'EC à partir du collecteur

tolérances de surveillance

change-observateur-watch-ds tolérances supplémentaires. Format abrégé à une seule ligne uniquement.
Exemple : '{key: Taint1, operator: Exists, effect: NoSchedule},{key: Taint2, operator: Exists, effect: NoExecute}'

Exemple de fichier AgentConfiguration

Vous trouverez ci-dessous un exemple de fichier 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: ''----