# Default values for prometheus-pushgateway. # This is a YAML-formatted file. # Declare variables to be passed into your templates. # Provide a name in place of prometheus-pushgateway for `app:` labels nameOverride: "" # Provide a name to substitute for the full names of resources fullnameOverride: "" image: repository: prom/pushgateway tag: v1.3.0 pullPolicy: IfNotPresent # Optional pod imagePullSecrets imagePullSecrets: [] service: type: ClusterIP port: 9091 targetPort: 9091 # Optional - Can be used for headless if value is "None" clusterIP: "" loadBalancerIP: "" loadBalancerSourceRanges: [] # Optional pod annotations podAnnotations: {} # Optional pod labels podLabels: {} # Optional service annotations serviceAnnotations: {} # Optional service labels serviceLabels: {} # Optional serviceAccount labels serviceAccountLabels: {} # Optional persistentVolume labels persistentVolumeLabels: {} # Optional additional environment variables extraVars: [] ## Additional pushgateway container arguments ## ## example: ## extraArgs: ## - --persistence.file=/data/pushgateway.data ## - --persistence.interval=5m extraArgs: [] resources: {} # We usually recommend not to specify default resources and to leave this as a conscious # choice for the user. This also increases chances charts run on environments with little # resources, such as Minikube. If you do want to specify resources, uncomment the following # lines, adjust them as necessary, and remove the curly braces after 'resources:'. # limits: # cpu: 200m # memory: 50Mi # requests: # cpu: 100m # memory: 30Mi 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: ## Configure ingress resource that allow you to access the ## pushgateway installation. Set up the URL ## ref: http://kubernetes.io/docs/user-guide/ingress/ ## ingress: ## Enable Ingress. ## enabled: false # AWS ALB requires path of /* path: / ## Annotations. ## # annotations: # kubernetes.io/ingress.class: nginx # kubernetes.io/tls-acme: 'true' ## Hostnames. ## Must be provided if Ingress is enabled. ## # hosts: # - pushgateway.domain.com ## TLS configuration. ## Secrets must be manually created in the namespace. ## # tls: # - secretName: pushgateway-tls # hosts: # - pushgateway.domain.com tolerations: {} # - effect: NoSchedule # operator: Exists ## Node labels for pushgateway pod assignment ## Ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} replicaCount: 1 ## Security context to be added to push-gateway pods ## securityContext: fsGroup: 65534 runAsUser: 65534 runAsNonRoot: true ## Affinity for pod assignment ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity affinity: {} # Enable this if you're using https://github.com/coreos/prometheus-operator serviceMonitor: enabled: false namespace: monitoring # Fallback to the prometheus default unless specified # interval: 10s # Fallback to the prometheus default unless specified # scrapeTimeout: 30s ## Used to pass Labels that are used by the Prometheus installed in your cluster to select Service Monitors to work with ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec additionalLabels: {} # Retain the job and instance labels of the metrics pushed to the Pushgateway # [Scraping Pushgateway](https://github.com/prometheus/pushgateway#configure-the-pushgateway-as-a-target-to-scrape) honorLabels: true ## Metric relabel configs to apply to samples before ingestion. ## [Metric Relabeling](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) metricRelabelings: [] # - action: keep # regex: 'kube_(daemonset|deployment|pod|namespace|node|statefulset).+' # sourceLabels: [__name__] ## Relabel configs to apply to samples before ingestion. ## [Relabeling](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) relabelings: [] # - sourceLabels: [__meta_kubernetes_pod_node_name] # separator: ; # regex: ^(.*)$ # targetLabel: nodename # replacement: $1 # action: replace # The values to set in the PodDisruptionBudget spec (minAvailable/maxUnavailable) # If not set then a PodDisruptionBudget will not be created podDisruptionBudget: {} priorityClassName: # Deployment Strategy type strategy: type: Recreate persistentVolume: ## If true, pushgateway will create/use a Persistent Volume Claim ## If false, use emptyDir ## enabled: false ## pushgateway data Persistent Volume access modes ## Must match those of existing PV or dynamic provisioner ## Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## accessModes: - ReadWriteOnce ## pushgateway data Persistent Volume Claim annotations ## annotations: {} ## pushgateway data Persistent Volume existing claim name ## Requires pushgateway.persistentVolume.enabled: true ## If defined, PVC must be created manually before volume will be bound existingClaim: "" ## pushgateway data Persistent Volume mount root path ## mountPath: /data ## pushgateway data Persistent Volume size ## size: 2Gi ## pushgateway data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## # storageClass: "-" ## Subdirectory of pushgateway data Persistent Volume to mount ## Useful if the volume's root directory is not empty ## subPath: "" # Configuration for clusters with restrictive network policies in place: # - allowAll allows access to the PushGateway from any namespace # - customSelector is a list of pod/namespaceSelectors to allow access from # These options are mutually exclusive and the latter will take precedence. networkPolicy: {} # allowAll: true # customSelectors: # - namespaceSelector: # matchLabels: # type: admin # - podSelector: # matchLabels: # app: myapp