charts/kube-prometheus-blackbox-exporter/values.yaml (209 lines of code) (raw):

## @param spec Configuration for kube-prometheus-blackbox-exporter ## @skip spec spec: global: ## Global image registry to use if it needs to be overriden for some specific use cases (e.g local registries, custom images, ...) ## imageRegistry: "" restartPolicy: Always kind: Deployment ## Override the namespace ## namespaceOverride: "" # Override Kubernetes version if your distribution does not follow semver v2 kubeVersionOverride: "" ## set to true to add the release label so scraping of the servicemonitor with kube-prometheus-stack works out of the box releaseLabel: false podDisruptionBudget: {} # maxUnavailable: 0 ## Allow automount the serviceaccount token for sidecar container (eg: oauthproxy) automountServiceAccountToken: false ## Additional blackbox-exporter container environment variables ## For instance to add a http_proxy ## ## extraEnv: ## HTTP_PROXY: "http://superproxy.com:3128" ## NO_PROXY: "localhost,127.0.0.1" extraEnv: {} ## Additional blackbox-exporter container environment variables for secret ## extraEnvFromSecret: ## - secretOne ## - secretTwo extraEnvFromSecret: "" extraVolumes: [] # - name: secret-blackbox-oauth-htpasswd # secret: # defaultMode: 420 # secretName: blackbox-oauth-htpasswd # - name: storage-volume # persistentVolumeClaim: # claimName: example ## Additional volumes that will be attached to the blackbox-exporter container extraVolumeMounts: # - name: ca-certs # mountPath: /etc/ssl/certs/ca-certificates.crt ## Additional InitContainers to initialize the pod ## This supports either a structured array or a templatable string extraInitContainers: [] ## This supports either a structured array or a templatable string # Array mode extraContainers: [] # - name: oAuth2-proxy # args: # - -https-address=:9116 # - -upstream=http://localhost:9115 # - -skip-auth-regex=^/metrics # - -openshift-delegate-urls={"/":{"group":"monitoring.coreos.com","resource":"prometheuses","verb":"get"}} # image: openshift/oauth-proxy:v1.1.0 # ports: # - containerPort: 9116 # name: proxy # resources: # limits: # memory: 16Mi # requests: # memory: 4Mi # cpu: 20m # volumeMounts: # - mountPath: /etc/prometheus/secrets/blackbox-tls # name: secret-blackbox-tls # String mode # extraContainers: |- # - name: oAuth2-proxy # args: # - -https-address=:9116 # - -upstream=http://localhost:9115 # - -skip-auth-regex=^/metrics # - -openshift-delegate-urls={"/":{"group":"monitoring.coreos.com","resource":"prometheuses","verb":"get"}} # image: {{ .Values.global.imageRegistry }}/openshift/oauth-proxy:v1.1.0 hostNetwork: false strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 0 type: RollingUpdate image: registry: quay.io repository: prometheus/blackbox-exporter # Overrides the image tag whose default is {{ printf "v%s" .Chart.AppVersion }} tag: "" pullPolicy: IfNotPresent digest: "" ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ ## # pullSecrets: # - myRegistrKeySecretName podSecurityContext: {} # fsGroup: 1000 ## User and Group to run blackbox-exporter container as securityContext: runAsUser: 1000 runAsGroup: 1000 readOnlyRootFilesystem: true runAsNonRoot: true allowPrivilegeEscalation: false capabilities: drop: ["ALL"] # Add NET_RAW to enable ICMP # add: ["NET_RAW"] livenessProbe: httpGet: path: /-/healthy port: http failureThreshold: 3 readinessProbe: httpGet: path: /-/healthy port: http nodeSelector: {} tolerations: [] affinity: {} ## Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/ topologySpreadConstraints: [] # - maxSkew: 1 # topologyKey: failure-domain.beta.kubernetes.io/zone # whenUnsatisfiable: DoNotSchedule # labelSelector: # matchLabels: # app.kubernetes.io/instance: jiralert # if the configuration is managed as secret outside the chart, using SealedSecret for example, # provide the name of the secret here. If secretConfig is set to true, configExistingSecretName will be ignored # in favor of the config value. configExistingSecretName: "" # Store the configuration as a `Secret` instead of a `ConfigMap`, useful in case it contains sensitive data secretConfig: false config: modules: http_2xx: prober: http timeout: 5s http: valid_http_versions: ["HTTP/1.1", "HTTP/2.0"] follow_redirects: true preferred_ip_protocol: "ip4" # Set custom config path, other than default /config/blackbox.yaml. If let empty, path will be "/config/blackbox.yaml" # configPath: "/foo/bar" extraConfigmapMounts: [] # - name: certs-configmap # mountPath: /etc/secrets/ssl/ # subPath: certificates.crt # (optional) # configMap: certs-configmap # readOnly: true # defaultMode: 420 ## Additional secret mounts # Defines additional mounts with secrets. Secrets must be manually created in the namespace. extraSecretMounts: [] # - name: secret-files # mountPath: /etc/secrets # secretName: blackbox-secret-files # readOnly: true # defaultMode: 420 resources: {} # limits: # memory: 300Mi # requests: # memory: 50Mi priorityClassName: "" service: annotations: {} labels: {} type: ClusterIP port: 9115 ipDualStack: enabled: false ipFamilies: ["IPv6", "IPv4"] ipFamilyPolicy: "PreferDualStack" # Only changes container port. Application port can be changed with extraArgs (--web.listen-address=:9115) # https://github.com/prometheus/blackbox_exporter/blob/998037b5b40c1de5fee348ffdea8820509d85171/main.go#L55 containerPort: 9115 # Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If zero, no port is exposed. # This is useful for communicating with Daemon Pods when kind is DaemonSet. hostPort: 0 serviceAccount: # Specifies whether a ServiceAccount should be created create: true # The name of the ServiceAccount to use. # If not set and create is true, a name is generated using the fullname template name: annotations: {} ## An Ingress resource can provide name-based virtual hosting and TLS ## termination among other things for CouchDB deployments which are accessed ## from outside the Kubernetes cluster. ## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/ ingress: enabled: false className: "" labels: {} annotations: {} # kubernetes.io/ingress.class: nginx # kubernetes.io/tls-acme: "true" hosts: ## The host property on hosts and tls is passed through helm tpl function. ## ref: https://helm.sh/docs/developing_charts/#using-the-tpl-function - host: chart-example.local paths: - path: / pathType: ImplementationSpecific tls: [] # - secretName: chart-example-tls # hosts: # - chart-example.local podAnnotations: {} # Annotations for the Deployment deploymentAnnotations: {} # Annotations for the Secret secretAnnotations: {} # Hostaliases allow to add additional DNS entries to be injected directly into pods. # This will take precedence over your implemented DNS solution hostAliases: [] # - ip: 192.168.1.1 # hostNames: # - test.example.com # - another.example.net pod: labels: {} extraArgs: [] # - --history.limit=1000 replicas: 1 serviceMonitor: ## If true, a ServiceMonitor CRD is created for a prometheus operator ## https://github.com/coreos/prometheus-operator for blackbox-exporter itself ## selfMonitor: enabled: false additionalMetricsRelabels: {} additionalRelabeling: [] labels: {} path: /metrics scheme: http tlsConfig: {} interval: 30s scrapeTimeout: 30s ## Port can be defined by assigning a value for the port key below ## port: ## If true, a ServiceMonitor CRD is created for a prometheus operator ## https://github.com/coreos/prometheus-operator for each target ## enabled: false # Default values that will be used for all ServiceMonitors created by `targets` defaults: additionalMetricsRelabels: {} additionalRelabeling: [] labels: {} interval: 30s scrapeTimeout: 30s module: http_2xx ## scheme: HTTP scheme to use for scraping. Can be used with `tlsConfig` for example if using istio mTLS. scheme: http ## path: HTTP path. Needs to be adjusted, if web.route-prefix is set path: "/probe" ## tlsConfig: TLS configuration to use when scraping the endpoint. For example if using istio mTLS. ## Of type: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig tlsConfig: {} bearerTokenFile: targets: # - name: example # Human readable URL that will appear in Prometheus / AlertManager # url: http://example.com/healthz # The URL that blackbox will scrape # hostname: example.com # HTTP probes can accept an additional `hostname` parameter that will set `Host` header and TLS SNI # labels: {} # Map of labels for ServiceMonitor. Overrides value set in `defaults` # interval: 60s # Scraping interval. Overrides value set in `defaults` # scrapeTimeout: 60s # Scrape timeout. Overrides value set in `defaults` # module: http_2xx # Module used for scraping. Overrides value set in `defaults` # additionalMetricsRelabels: {} # Map of metric labels and values to add # additionalRelabeling: [] # List of metric relabeling actions to run ## Custom PrometheusRules to be defined ## ref: https://github.com/coreos/prometheus-operator#customresourcedefinitions prometheusRule: enabled: false additionalLabels: {} namespace: "" rules: [] podMonitoring: ## If true, a PodMonitoring CR is created for google managed prometheus ## https://cloud.google.com/stackdriver/docs/managed-prometheus/setup-managed#gmp-pod-monitoring for blackbox-exporter itself ## selfMonitor: enabled: false additionalMetricsRelabels: {} labels: {} path: /metrics interval: 30s scrapeTimeout: 30s ## If true, a PodMonitoring CR is created for a google managed prometheus ## https://cloud.google.com/stackdriver/docs/managed-prometheus/setup-managed#gmp-pod-monitoring for each target ## enabled: false ## Default values that will be used for all PodMonitoring created by `targets` ## Following PodMonitoring API specs https://github.com/GoogleCloudPlatform/prometheus-engine/blob/main/doc/api.md#scrapeendpoint defaults: additionalMetricsRelabels: {} labels: {} interval: 30s scrapeTimeout: 30s module: http_2xx ## scheme: Protocol scheme to use to scrape. scheme: http ## path: HTTP path. Needs to be adjusted, if web.route-prefix is set path: "/probe" ## tlsConfig: TLS configuration to use when scraping the endpoint. For example if using istio mTLS. ## Of type: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig tlsConfig: {} targets: # - name: example # Human readable URL that will appear in Google Managed Prometheus / AlertManager # url: http://example.com/healthz # The URL that blackbox will scrape # hostname: example.com # HTTP probes can accept an additional `hostname` parameter that will set `Host` header and TLS SNI # labels: {} # Map of labels for PodMonitoring. Overrides value set in `defaults` # interval: 60s # Scraping interval. Overrides value set in `defaults` # scrapeTimeout: 60s # Scrape timeout. Overrides value set in `defaults` # module: http_2xx # Module used for scraping. Overrides value set in `defaults` # additionalMetricsRelabels: {} # Map of metric labels and values to add ## Network policy for chart networkPolicy: # Enable network policy and allow access from anywhere enabled: false # Limit access only from monitoring namespace # Before setting this value to true, you must add the name=monitoring label to the monitoring namespace # Network Policy uses label filtering allowMonitoringNamespace: false ## dnsPolicy and dnsConfig for Deployments and Daemonsets if you want non-default settings. ## These will be passed directly to the PodSpec of same. dnsPolicy: dnsConfig: # Extra manifests to deploy as an array extraManifests: [] # - apiVersion: v1 # kind: ConfigMap # metadata: # labels: # name: prometheus-extra # data: # extra-data: "value" # global common labels, applied to all ressources commonLabels: {} # Enable vertical pod autoscaler support for prometheus-blackbox-exporter verticalPodAutoscaler: enabled: false # Recommender responsible for generating recommendation for the object. # List should be empty (then the default recommender will generate the recommendation) # or contain exactly one recommender. # recommenders: # - name: custom-recommender-performance # List of resources that the vertical pod autoscaler can control. Defaults to cpu and memory controlledResources: [] # Specifies which resource values should be controlled: RequestsOnly or RequestsAndLimits. # controlledValues: RequestsAndLimits # Define the max allowed resources for the pod maxAllowed: {} # cpu: 200m # memory: 100Mi # Define the min allowed resources for the pod minAllowed: {} # cpu: 200m # memory: 100Mi updatePolicy: # Specifies minimal number of replicas which need to be alive for VPA Updater to attempt pod eviction # minReplicas: 1 # Specifies whether recommended updates are applied when a Pod is started and whether recommended updates # are applied during the life of a Pod. Possible values are "Off", "Initial", "Recreate", and "Auto". updateMode: Auto configReloader: enabled: false containerPort: 8080 config: logFormat: logfmt logLevel: info watchInterval: 1m image: registry: quay.io repository: prometheus-operator/prometheus-config-reloader tag: "v0.71.2" pullPolicy: IfNotPresent digest: "" securityContext: runAsUser: 1000 runAsGroup: 1000 readOnlyRootFilesystem: true runAsNonRoot: true allowPrivilegeEscalation: false capabilities: drop: ["ALL"] resources: limits: memory: 50Mi requests: cpu: 10m memory: 20Mi livenessProbe: httpGet: path: /healthz port: reloader-web scheme: HTTP readinessProbe: httpGet: path: /healthz port: reloader-web scheme: HTTP service: port: 8080 serviceMonitor: selfMonitor: additionalMetricsRelabels: {} additionalRelabeling: [] path: /metrics scheme: http tlsConfig: {} interval: 30s scrapeTimeout: 30s