# -- External VM read and write URLs externalVM: read: url: "" # bearerTokenSecret: # name: dbaas-read-access-token # key: bearerToken write: # Replace PMM-SERVER-URL with valid URL of PMM Server url: "https:////victoriametrics/api/v1/write" bearerTokenSecret: name: pmm-token-vmoperator key: api_key # -- kube-state-metrics dependency chart configuration. For possible values check [here](https://github.com/prometheus-community/helm-charts/blob/main/charts/kube-state-metrics/values.yaml) kube-state-metrics: # image: # tag: "v2.14.0" enabled: true ## all values for kube-state-metrics helm chart can be specified here ## Customizaing kube-state-metrics installation for scraping Custom resources related to Percona Operators metricLabelsAllowlist: - pods=[app.kubernetes.io/component,app.kubernetes.io/instance,app.kubernetes.io/managed-by,app.kubernetes.io/name,app.kubernetes.io/part-of],persistentvolumeclaims=[app.kubernetes.io/component,app.kubernetes.io/instance,app.kubernetes.io/managed-by,app.kubernetes.io/name,app.kubernetes.io/part-of],jobs=[app.kubernetes.io/component,app.kubernetes.io/instance,app.kubernetes.io/managed-by,app.kubernetes.io/name,app.kubernetes.io/part-of] extraArgs: - --custom-resource-state-config-file=/go/src/k8s.io/kube-state-metrics/config volumeMounts: - mountPath: /go/src/k8s.io/kube-state-metrics/ name: cr-config volumes: - configMap: name: customresource-config-ksm name: cr-config rbac: extraRules: - apiGroups: - apiextensions.k8s.io resources: - customresourcedefinitions verbs: - list - watch - apiGroups: - pxc.percona.com resources: - perconaxtradbclusters - perconaxtradbclusters/status - perconaxtradbclusterbackups - perconaxtradbclusterbackups/status - perconaxtradbclusterrestores - perconaxtradbclusterrestores/status verbs: - list - watch - apiGroups: - psmdb.percona.com resources: - perconaservermongodbs - perconaservermongodbs/status - perconaservermongodbbackups - perconaservermongodbbackups/status - perconaservermongodbrestores - perconaservermongodbrestores/status verbs: - list - watch - apiGroups: - pgv2.percona.com resources: - perconapgbackups/status - perconapgclusters/status - perconapgrestores/status - perconapgclusters - perconapgrestores - perconapgbackups verbs: - list - watch # -- Component scraping the kubelets kubelet: enabled: true vmScrapes: # -- Enable scraping /metrics/cadvisor from kubelet's service cadvisor: enabled: true spec: path: /metrics/cadvisor # -- Enable scraping /metrics/probes from kubelet's service probes: enabled: true spec: path: /metrics/probes kubelet: spec: {} # -- Spec for VMNodeScrape CRD is [here](https://docs.victoriametrics.com/operator/api.html#vmnodescrapespec) vmScrape: kind: VMNodeScrape spec: scheme: "https" honorLabels: true interval: "30s" scrapeTimeout: "5s" tlsConfig: insecureSkipVerify: true caFile: "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt" bearerTokenFile: "/var/run/secrets/kubernetes.io/serviceaccount/token" # drop high cardinality label and useless metrics for cadvisor and kubelet # By default only 30 labels are kept unless the PMM server configurations are changed. # Few labels are removed from the configuration which might be redundant or might be derived from other labels # Some of the cloud specific labels are added here metricRelabelConfigs: - action: labeldrop regex: (uid) - action: labeldrop regex: (id|name) - action: labeldrop regex: failure_domain_beta_kubernetes_.* - action: labeldrop regex: beta_kubernetes_io_.* # Some GKE specific labels - action: labeldrop regex: topology_gke_io_zone - action: labeldrop regex: cloud_google_com_gke_logging_variant - action: labeldrop regex: cloud_google_com_machine_family - action: labeldrop regex: cloud_google_com_gke_cpu_scaling_level - action: drop source_labels: [__name__] regex: (rest_client_request_duration_seconds_bucket|rest_client_request_duration_seconds_sum|rest_client_request_duration_seconds_count) relabelConfigs: - action: labelmap regex: __meta_kubernetes_node_label_(.+) - sourceLabels: [__metrics_path__] targetLabel: metrics_path - targetLabel: "job" replacement: "kubelet" # ignore timestamps of cadvisor's metrics by default # more info here https://github.com/VictoriaMetrics/VictoriaMetrics/issues/4697#issuecomment-1656540535 honorTimestamps: false