values.yaml 50 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609
  1. rbac:
  2. create: true
  3. podSecurityPolicy:
  4. enabled: false
  5. imagePullSecrets:
  6. # - name: "image-pull-secret"
  7. ## Define serviceAccount names for components. Defaults to component's fully qualified name.
  8. ##
  9. serviceAccounts:
  10. alertmanager:
  11. create: true
  12. name:
  13. annotations: {}
  14. nodeExporter:
  15. create: true
  16. name:
  17. annotations: {}
  18. pushgateway:
  19. create: true
  20. name:
  21. annotations: {}
  22. server:
  23. create: true
  24. name:
  25. annotations: {}
  26. alertmanager:
  27. ## If false, alertmanager will not be installed
  28. ##
  29. enabled: true
  30. ## Use a ClusterRole (and ClusterRoleBinding)
  31. ## - If set to false - we define a Role and RoleBinding in the defined namespaces ONLY
  32. ## This makes alertmanager work - for users who do not have ClusterAdmin privs, but wants alertmanager to operate on their own namespaces, instead of clusterwide.
  33. useClusterRole: true
  34. ## Set to a rolename to use existing role - skipping role creating - but still doing serviceaccount and rolebinding to the rolename set here.
  35. useExistingRole: false
  36. ## alertmanager container name
  37. ##
  38. name: alertmanager
  39. ## alertmanager container image
  40. ##
  41. image:
  42. repository: prom/alertmanager
  43. tag: v0.21.0
  44. pullPolicy: IfNotPresent
  45. ## alertmanager priorityClassName
  46. ##
  47. priorityClassName: ""
  48. ## Additional alertmanager container arguments
  49. ##
  50. extraArgs: {}
  51. ## Additional InitContainers to initialize the pod
  52. ##
  53. extraInitContainers: []
  54. ## The URL prefix at which the container can be accessed. Useful in the case the '-web.external-url' includes a slug
  55. ## so that the various internal URLs are still able to access as they are in the default case.
  56. ## (Optional)
  57. prefixURL: ""
  58. ## External URL which can access alertmanager
  59. baseURL: "http://localhost:9093"
  60. ## Additional alertmanager container environment variable
  61. ## For instance to add a http_proxy
  62. ##
  63. extraEnv: {}
  64. ## Additional alertmanager Secret mounts
  65. # Defines additional mounts with secrets. Secrets must be manually created in the namespace.
  66. extraSecretMounts: []
  67. # - name: secret-files
  68. # mountPath: /etc/secrets
  69. # subPath: ""
  70. # secretName: alertmanager-secret-files
  71. # readOnly: true
  72. ## ConfigMap override where fullname is {{.Release.Name}}-{{.Values.alertmanager.configMapOverrideName}}
  73. ## Defining configMapOverrideName will cause templates/alertmanager-configmap.yaml
  74. ## to NOT generate a ConfigMap resource
  75. ##
  76. configMapOverrideName: ""
  77. ## The name of a secret in the same kubernetes namespace which contains the Alertmanager config
  78. ## Defining configFromSecret will cause templates/alertmanager-configmap.yaml
  79. ## to NOT generate a ConfigMap resource
  80. ##
  81. configFromSecret: ""
  82. ## The configuration file name to be loaded to alertmanager
  83. ## Must match the key within configuration loaded from ConfigMap/Secret
  84. ##
  85. configFileName: alertmanager.yml
  86. ingress:
  87. ## If true, alertmanager Ingress will be created
  88. ##
  89. enabled: false
  90. ## alertmanager Ingress annotations
  91. ##
  92. annotations: {}
  93. # kubernetes.io/ingress.class: nginx
  94. # kubernetes.io/tls-acme: 'true'
  95. ## alertmanager Ingress additional labels
  96. ##
  97. extraLabels: {}
  98. ## alertmanager Ingress hostnames with optional path
  99. ## Must be provided if Ingress is enabled
  100. ##
  101. hosts: []
  102. # - alertmanager.domain.com
  103. # - domain.com/alertmanager
  104. ## Extra paths to prepend to every host configuration. This is useful when working with annotation based services.
  105. extraPaths: []
  106. # - path: /*
  107. # backend:
  108. # serviceName: ssl-redirect
  109. # servicePort: use-annotation
  110. ## alertmanager Ingress TLS configuration
  111. ## Secrets must be manually created in the namespace
  112. ##
  113. tls: []
  114. # - secretName: prometheus-alerts-tls
  115. # hosts:
  116. # - alertmanager.domain.com
  117. ## Alertmanager Deployment Strategy type
  118. # strategy:
  119. # type: Recreate
  120. ## Node tolerations for alertmanager scheduling to nodes with taints
  121. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  122. ##
  123. tolerations: []
  124. # - key: "key"
  125. # operator: "Equal|Exists"
  126. # value: "value"
  127. # effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)"
  128. ## Node labels for alertmanager pod assignment
  129. ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
  130. ##
  131. nodeSelector: {}
  132. ## Pod affinity
  133. ##
  134. affinity: {}
  135. ## PodDisruptionBudget settings
  136. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/
  137. ##
  138. podDisruptionBudget:
  139. enabled: false
  140. maxUnavailable: 1
  141. ## Use an alternate scheduler, e.g. "stork".
  142. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  143. ##
  144. # schedulerName:
  145. persistentVolume:
  146. ## If true, alertmanager will create/use a Persistent Volume Claim
  147. ## If false, use emptyDir
  148. ##
  149. enabled: true
  150. ## alertmanager data Persistent Volume access modes
  151. ## Must match those of existing PV or dynamic provisioner
  152. ## Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  153. ##
  154. accessModes:
  155. - ReadWriteOnce
  156. ## alertmanager data Persistent Volume Claim annotations
  157. ##
  158. annotations: {}
  159. ## alertmanager data Persistent Volume existing claim name
  160. ## Requires alertmanager.persistentVolume.enabled: true
  161. ## If defined, PVC must be created manually before volume will be bound
  162. existingClaim: ""
  163. ## alertmanager data Persistent Volume mount root path
  164. ##
  165. mountPath: /data
  166. ## alertmanager data Persistent Volume size
  167. ##
  168. size: 2Gi
  169. ## alertmanager data Persistent Volume Storage Class
  170. ## If defined, storageClassName: <storageClass>
  171. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  172. ## If undefined (the default) or set to null, no storageClassName spec is
  173. ## set, choosing the default provisioner. (gp2 on AWS, standard on
  174. ## GKE, AWS & OpenStack)
  175. ##
  176. # storageClass: "-"
  177. ## alertmanager data Persistent Volume Binding Mode
  178. ## If defined, volumeBindingMode: <volumeBindingMode>
  179. ## If undefined (the default) or set to null, no volumeBindingMode spec is
  180. ## set, choosing the default mode.
  181. ##
  182. # volumeBindingMode: ""
  183. ## Subdirectory of alertmanager data Persistent Volume to mount
  184. ## Useful if the volume's root directory is not empty
  185. ##
  186. subPath: ""
  187. emptyDir:
  188. ## alertmanager emptyDir volume size limit
  189. ##
  190. sizeLimit: ""
  191. ## Annotations to be added to alertmanager pods
  192. ##
  193. podAnnotations: {}
  194. ## Tell prometheus to use a specific set of alertmanager pods
  195. ## instead of all alertmanager pods found in the same namespace
  196. ## Useful if you deploy multiple releases within the same namespace
  197. ##
  198. ## prometheus.io/probe: alertmanager-teamA
  199. ## Labels to be added to Prometheus AlertManager pods
  200. ##
  201. podLabels: {}
  202. ## Specify if a Pod Security Policy for node-exporter must be created
  203. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/
  204. ##
  205. podSecurityPolicy:
  206. annotations: {}
  207. ## Specify pod annotations
  208. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#apparmor
  209. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#seccomp
  210. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#sysctl
  211. ##
  212. # seccomp.security.alpha.kubernetes.io/allowedProfileNames: '*'
  213. # seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
  214. # apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
  215. ## Use a StatefulSet if replicaCount needs to be greater than 1 (see below)
  216. ##
  217. replicaCount: 1
  218. ## Annotations to be added to deployment
  219. ##
  220. deploymentAnnotations: {}
  221. statefulSet:
  222. ## If true, use a statefulset instead of a deployment for pod management.
  223. ## This allows to scale replicas to more than 1 pod
  224. ##
  225. enabled: false
  226. annotations: {}
  227. labels: {}
  228. podManagementPolicy: OrderedReady
  229. ## Alertmanager headless service to use for the statefulset
  230. ##
  231. headless:
  232. annotations: {}
  233. labels: {}
  234. ## Enabling peer mesh service end points for enabling the HA alert manager
  235. ## Ref: https://github.com/prometheus/alertmanager/blob/master/README.md
  236. enableMeshPeer: false
  237. servicePort: 80
  238. ## alertmanager resource requests and limits
  239. ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
  240. ##
  241. resources: {}
  242. # limits:
  243. # cpu: 10m
  244. # memory: 32Mi
  245. # requests:
  246. # cpu: 10m
  247. # memory: 32Mi
  248. ## Security context to be added to alertmanager pods
  249. ##
  250. securityContext:
  251. runAsUser: 65534
  252. runAsNonRoot: true
  253. runAsGroup: 65534
  254. fsGroup: 65534
  255. service:
  256. annotations: {}
  257. labels: {}
  258. clusterIP: ""
  259. ## Enabling peer mesh service end points for enabling the HA alert manager
  260. ## Ref: https://github.com/prometheus/alertmanager/blob/master/README.md
  261. # enableMeshPeer : true
  262. ## List of IP addresses at which the alertmanager service is available
  263. ## Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
  264. ##
  265. externalIPs: []
  266. loadBalancerIP: ""
  267. loadBalancerSourceRanges: []
  268. servicePort: 80
  269. # nodePort: 30000
  270. sessionAffinity: None
  271. type: ClusterIP
  272. ## Monitors ConfigMap changes and POSTs to a URL
  273. ## Ref: https://github.com/jimmidyson/configmap-reload
  274. ##
  275. configmapReload:
  276. prometheus:
  277. ## If false, the configmap-reload container will not be deployed
  278. ##
  279. enabled: true
  280. ## configmap-reload container name
  281. ##
  282. name: configmap-reload
  283. ## configmap-reload container image
  284. ##
  285. image:
  286. repository: jimmidyson/configmap-reload
  287. tag: v0.4.0
  288. pullPolicy: IfNotPresent
  289. ## Additional configmap-reload container arguments
  290. ##
  291. extraArgs: {}
  292. ## Additional configmap-reload volume directories
  293. ##
  294. extraVolumeDirs: []
  295. ## Additional configmap-reload mounts
  296. ##
  297. extraConfigmapMounts: []
  298. # - name: prometheus-alerts
  299. # mountPath: /etc/alerts.d
  300. # subPath: ""
  301. # configMap: prometheus-alerts
  302. # readOnly: true
  303. ## configmap-reload resource requests and limits
  304. ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
  305. ##
  306. resources: {}
  307. alertmanager:
  308. ## If false, the configmap-reload container will not be deployed
  309. ##
  310. enabled: true
  311. ## configmap-reload container name
  312. ##
  313. name: configmap-reload
  314. ## configmap-reload container image
  315. ##
  316. image:
  317. repository: jimmidyson/configmap-reload
  318. tag: v0.4.0
  319. pullPolicy: IfNotPresent
  320. ## Additional configmap-reload container arguments
  321. ##
  322. extraArgs: {}
  323. ## Additional configmap-reload volume directories
  324. ##
  325. extraVolumeDirs: []
  326. ## Additional configmap-reload mounts
  327. ##
  328. extraConfigmapMounts: []
  329. # - name: prometheus-alerts
  330. # mountPath: /etc/alerts.d
  331. # subPath: ""
  332. # configMap: prometheus-alerts
  333. # readOnly: true
  334. ## configmap-reload resource requests and limits
  335. ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
  336. ##
  337. resources: {}
  338. kubeStateMetrics:
  339. ## If false, kube-state-metrics sub-chart will not be installed
  340. ##
  341. enabled: true
  342. ## kube-state-metrics sub-chart configurable values
  343. ## Please see https://github.com/helm/charts/tree/master/stable/kube-state-metrics
  344. ##
  345. # kube-state-metrics:
  346. nodeExporter:
  347. ## If false, node-exporter will not be installed
  348. ##
  349. enabled: true
  350. ## If true, node-exporter pods share the host network namespace
  351. ##
  352. hostNetwork: true
  353. ## If true, node-exporter pods share the host PID namespace
  354. ##
  355. hostPID: true
  356. ## node-exporter container name
  357. ##
  358. name: node-exporter
  359. ## node-exporter container image
  360. ##
  361. image:
  362. repository: prom/node-exporter
  363. tag: v1.0.1
  364. pullPolicy: IfNotPresent
  365. ## Specify if a Pod Security Policy for node-exporter must be created
  366. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/
  367. ##
  368. podSecurityPolicy:
  369. annotations: {}
  370. ## Specify pod annotations
  371. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#apparmor
  372. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#seccomp
  373. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#sysctl
  374. ##
  375. # seccomp.security.alpha.kubernetes.io/allowedProfileNames: '*'
  376. # seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
  377. # apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
  378. ## node-exporter priorityClassName
  379. ##
  380. priorityClassName: ""
  381. ## Custom Update Strategy
  382. ##
  383. updateStrategy:
  384. type: RollingUpdate
  385. ## Additional node-exporter container arguments
  386. ##
  387. extraArgs: {}
  388. ## Additional InitContainers to initialize the pod
  389. ##
  390. extraInitContainers: []
  391. ## Additional node-exporter hostPath mounts
  392. ##
  393. extraHostPathMounts: []
  394. # - name: textfile-dir
  395. # mountPath: /srv/txt_collector
  396. # hostPath: /var/lib/node-exporter
  397. # readOnly: true
  398. # mountPropagation: HostToContainer
  399. extraConfigmapMounts: []
  400. # - name: certs-configmap
  401. # mountPath: /prometheus
  402. # configMap: certs-configmap
  403. # readOnly: true
  404. ## Node tolerations for node-exporter scheduling to nodes with taints
  405. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  406. ##
  407. tolerations: []
  408. # - key: "key"
  409. # operator: "Equal|Exists"
  410. # value: "value"
  411. # effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)"
  412. ## Node labels for node-exporter pod assignment
  413. ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
  414. ##
  415. nodeSelector: {}
  416. ## Annotations to be added to node-exporter pods
  417. ##
  418. podAnnotations: {}
  419. ## Labels to be added to node-exporter pods
  420. ##
  421. pod:
  422. labels: {}
  423. ## PodDisruptionBudget settings
  424. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/
  425. ##
  426. podDisruptionBudget:
  427. enabled: false
  428. maxUnavailable: 1
  429. ## node-exporter resource limits & requests
  430. ## Ref: https://kubernetes.io/docs/user-guide/compute-resources/
  431. ##
  432. resources: {}
  433. # limits:
  434. # cpu: 200m
  435. # memory: 50Mi
  436. # requests:
  437. # cpu: 100m
  438. # memory: 30Mi
  439. ## Security context to be added to node-exporter pods
  440. ##
  441. securityContext: {}
  442. # runAsUser: 0
  443. service:
  444. annotations:
  445. prometheus.io/scrape: "true"
  446. labels: {}
  447. # Exposed as a headless service:
  448. # https://kubernetes.io/docs/concepts/services-networking/service/#headless-services
  449. clusterIP: None
  450. ## List of IP addresses at which the node-exporter service is available
  451. ## Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
  452. ##
  453. externalIPs: []
  454. hostPort: 9100
  455. loadBalancerIP: ""
  456. loadBalancerSourceRanges: []
  457. servicePort: 9100
  458. type: ClusterIP
  459. server:
  460. ## Prometheus server container name
  461. ##
  462. enabled: true
  463. ## Use a ClusterRole (and ClusterRoleBinding)
  464. ## - If set to false - we define a RoleBinding in the defined namespaces ONLY
  465. ##
  466. ## NB: because we need a Role with nonResourceURL's ("/metrics") - you must get someone with Cluster-admin privileges to define this role for you, before running with this setting enabled.
  467. ## This makes prometheus work - for users who do not have ClusterAdmin privs, but wants prometheus to operate on their own namespaces, instead of clusterwide.
  468. ##
  469. ## You MUST also set namespaces to the ones you have access to and want monitored by Prometheus.
  470. ##
  471. # useExistingClusterRoleName: nameofclusterrole
  472. ## namespaces to monitor (instead of monitoring all - clusterwide). Needed if you want to run without Cluster-admin privileges.
  473. # namespaces:
  474. # - yournamespace
  475. name: server
  476. sidecarContainers:
  477. ## Prometheus server container image
  478. ##
  479. image:
  480. repository: prom/prometheus
  481. tag: v2.21.0
  482. pullPolicy: IfNotPresent
  483. ## prometheus server priorityClassName
  484. ##
  485. priorityClassName: ""
  486. ## EnableServiceLinks indicates whether information about services should be injected
  487. ## into pod's environment variables, matching the syntax of Docker links.
  488. ## WARNING: the field is unsupported and will be skipped in K8s prior to v1.13.0.
  489. ##
  490. enableServiceLinks: true
  491. ## The URL prefix at which the container can be accessed. Useful in the case the '-web.external-url' includes a slug
  492. ## so that the various internal URLs are still able to access as they are in the default case.
  493. ## (Optional)
  494. prefixURL: ""
  495. ## External URL which can access prometheus
  496. ## Maybe same with Ingress host name
  497. baseURL: ""
  498. ## Additional server container environment variables
  499. ##
  500. ## You specify this manually like you would a raw deployment manifest.
  501. ## This means you can bind in environment variables from secrets.
  502. ##
  503. ## e.g. static environment variable:
  504. ## - name: DEMO_GREETING
  505. ## value: "Hello from the environment"
  506. ##
  507. ## e.g. secret environment variable:
  508. ## - name: USERNAME
  509. ## valueFrom:
  510. ## secretKeyRef:
  511. ## name: mysecret
  512. ## key: username
  513. env: []
  514. extraFlags:
  515. - web.enable-lifecycle
  516. ## web.enable-admin-api flag controls access to the administrative HTTP API which includes functionality such as
  517. ## deleting time series. This is disabled by default.
  518. # - web.enable-admin-api
  519. ##
  520. ## storage.tsdb.no-lockfile flag controls BD locking
  521. # - storage.tsdb.no-lockfile
  522. ##
  523. ## storage.tsdb.wal-compression flag enables compression of the write-ahead log (WAL)
  524. # - storage.tsdb.wal-compression
  525. ## Path to a configuration file on prometheus server container FS
  526. configPath: /etc/config/prometheus.yml
  527. global:
  528. ## How frequently to scrape targets by default
  529. ##
  530. scrape_interval: 1m
  531. ## How long until a scrape request times out
  532. ##
  533. scrape_timeout: 10s
  534. ## How frequently to evaluate rules
  535. ##
  536. evaluation_interval: 1m
  537. ## https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write
  538. ##
  539. remoteWrite: []
  540. ## https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_read
  541. ##
  542. remoteRead: []
  543. ## Additional Prometheus server container arguments
  544. ##
  545. extraArgs: {}
  546. ## Additional InitContainers to initialize the pod
  547. ##
  548. extraInitContainers: []
  549. ## Additional Prometheus server Volume mounts
  550. ##
  551. extraVolumeMounts: []
  552. ## Additional Prometheus server Volumes
  553. ##
  554. extraVolumes: []
  555. ## Additional Prometheus server hostPath mounts
  556. ##
  557. extraHostPathMounts: []
  558. # - name: certs-dir
  559. # mountPath: /etc/kubernetes/certs
  560. # subPath: ""
  561. # hostPath: /etc/kubernetes/certs
  562. # readOnly: true
  563. extraConfigmapMounts: []
  564. # - name: certs-configmap
  565. # mountPath: /prometheus
  566. # subPath: ""
  567. # configMap: certs-configmap
  568. # readOnly: true
  569. ## Additional Prometheus server Secret mounts
  570. # Defines additional mounts with secrets. Secrets must be manually created in the namespace.
  571. extraSecretMounts: []
  572. # - name: secret-files
  573. # mountPath: /etc/secrets
  574. # subPath: ""
  575. # secretName: prom-secret-files
  576. # readOnly: true
  577. ## ConfigMap override where fullname is {{.Release.Name}}-{{.Values.server.configMapOverrideName}}
  578. ## Defining configMapOverrideName will cause templates/server-configmap.yaml
  579. ## to NOT generate a ConfigMap resource
  580. ##
  581. configMapOverrideName: ""
  582. ingress:
  583. ## If true, Prometheus server Ingress will be created
  584. ##
  585. enabled: false
  586. ## Prometheus server Ingress annotations
  587. ##
  588. annotations: {}
  589. # kubernetes.io/ingress.class: nginx
  590. # kubernetes.io/tls-acme: 'true'
  591. ## Prometheus server Ingress additional labels
  592. ##
  593. extraLabels: {}
  594. ## Prometheus server Ingress hostnames with optional path
  595. ## Must be provided if Ingress is enabled
  596. ##
  597. hosts: []
  598. # - prometheus.domain.com
  599. # - domain.com/prometheus
  600. ## Extra paths to prepend to every host configuration. This is useful when working with annotation based services.
  601. extraPaths: []
  602. # - path: /*
  603. # backend:
  604. # serviceName: ssl-redirect
  605. # servicePort: use-annotation
  606. ## Prometheus server Ingress TLS configuration
  607. ## Secrets must be manually created in the namespace
  608. ##
  609. tls: []
  610. # - secretName: prometheus-server-tls
  611. # hosts:
  612. # - prometheus.domain.com
  613. ## Server Deployment Strategy type
  614. # strategy:
  615. # type: Recreate
  616. ## hostAliases allows adding entries to /etc/hosts inside the containers
  617. hostAliases: []
  618. # - ip: "127.0.0.1"
  619. # hostnames:
  620. # - "example.com"
  621. ## Node tolerations for server scheduling to nodes with taints
  622. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  623. ##
  624. tolerations: []
  625. # - key: "key"
  626. # operator: "Equal|Exists"
  627. # value: "value"
  628. # effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)"
  629. ## Node labels for Prometheus server pod assignment
  630. ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
  631. ##
  632. nodeSelector: {}
  633. ## Pod affinity
  634. ##
  635. affinity: {}
  636. ## PodDisruptionBudget settings
  637. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/
  638. ##
  639. podDisruptionBudget:
  640. enabled: false
  641. maxUnavailable: 1
  642. ## Use an alternate scheduler, e.g. "stork".
  643. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  644. ##
  645. # schedulerName:
  646. persistentVolume:
  647. ## If true, Prometheus server will create/use a Persistent Volume Claim
  648. ## If false, use emptyDir
  649. ##
  650. enabled: true
  651. ## Prometheus server data Persistent Volume access modes
  652. ## Must match those of existing PV or dynamic provisioner
  653. ## Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  654. ##
  655. accessModes:
  656. - ReadWriteOnce
  657. ## Prometheus server data Persistent Volume annotations
  658. ##
  659. annotations: {}
  660. ## Prometheus server data Persistent Volume existing claim name
  661. ## Requires server.persistentVolume.enabled: true
  662. ## If defined, PVC must be created manually before volume will be bound
  663. existingClaim: ""
  664. ## Prometheus server data Persistent Volume mount root path
  665. ##
  666. mountPath: /data
  667. ## Prometheus server data Persistent Volume size
  668. ##
  669. size: 8Gi
  670. ## Prometheus server data Persistent Volume Storage Class
  671. ## If defined, storageClassName: <storageClass>
  672. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  673. ## If undefined (the default) or set to null, no storageClassName spec is
  674. ## set, choosing the default provisioner. (gp2 on AWS, standard on
  675. ## GKE, AWS & OpenStack)
  676. ##
  677. # storageClass: "-"
  678. ## Prometheus server data Persistent Volume Binding Mode
  679. ## If defined, volumeBindingMode: <volumeBindingMode>
  680. ## If undefined (the default) or set to null, no volumeBindingMode spec is
  681. ## set, choosing the default mode.
  682. ##
  683. # volumeBindingMode: ""
  684. ## Subdirectory of Prometheus server data Persistent Volume to mount
  685. ## Useful if the volume's root directory is not empty
  686. ##
  687. subPath: ""
  688. emptyDir:
  689. ## Prometheus server emptyDir volume size limit
  690. ##
  691. sizeLimit: ""
  692. ## Annotations to be added to Prometheus server pods
  693. ##
  694. podAnnotations: {}
  695. # iam.amazonaws.com/role: prometheus
  696. ## Labels to be added to Prometheus server pods
  697. ##
  698. podLabels: {}
  699. ## Prometheus AlertManager configuration
  700. ##
  701. alertmanagers: []
  702. ## Specify if a Pod Security Policy for node-exporter must be created
  703. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/
  704. ##
  705. podSecurityPolicy:
  706. annotations: {}
  707. ## Specify pod annotations
  708. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#apparmor
  709. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#seccomp
  710. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#sysctl
  711. ##
  712. # seccomp.security.alpha.kubernetes.io/allowedProfileNames: '*'
  713. # seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
  714. # apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
  715. ## Use a StatefulSet if replicaCount needs to be greater than 1 (see below)
  716. ##
  717. replicaCount: 1
  718. ## Annotations to be added to deployment
  719. ##
  720. deploymentAnnotations: {}
  721. statefulSet:
  722. ## If true, use a statefulset instead of a deployment for pod management.
  723. ## This allows to scale replicas to more than 1 pod
  724. ##
  725. enabled: false
  726. annotations: {}
  727. labels: {}
  728. podManagementPolicy: OrderedReady
  729. ## Alertmanager headless service to use for the statefulset
  730. ##
  731. headless:
  732. annotations: {}
  733. labels: {}
  734. servicePort: 80
  735. ## Enable gRPC port on service to allow auto discovery with thanos-querier
  736. gRPC:
  737. enabled: false
  738. servicePort: 10901
  739. # nodePort: 10901
  740. ## Prometheus server readiness and liveness probe initial delay and timeout
  741. ## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
  742. ##
  743. readinessProbeInitialDelay: 30
  744. readinessProbePeriodSeconds: 5
  745. readinessProbeTimeout: 30
  746. readinessProbeFailureThreshold: 3
  747. readinessProbeSuccessThreshold: 1
  748. livenessProbeInitialDelay: 30
  749. livenessProbePeriodSeconds: 15
  750. livenessProbeTimeout: 30
  751. livenessProbeFailureThreshold: 3
  752. livenessProbeSuccessThreshold: 1
  753. ## Prometheus server resource requests and limits
  754. ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
  755. ##
  756. resources: {}
  757. # limits:
  758. # cpu: 500m
  759. # memory: 512Mi
  760. # requests:
  761. # cpu: 500m
  762. # memory: 512Mi
  763. ## Vertical Pod Autoscaler config
  764. ## Ref: https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler
  765. verticalAutoscaler:
  766. ## If true a VPA object will be created for the controller (either StatefulSet or Deployemnt, based on above configs)
  767. enabled: false
  768. # updateMode: "Auto"
  769. # containerPolicies:
  770. # - containerName: 'prometheus-server'
  771. ## Security context to be added to server pods
  772. ##
  773. securityContext:
  774. runAsUser: 65534
  775. runAsNonRoot: true
  776. runAsGroup: 65534
  777. fsGroup: 65534
  778. service:
  779. annotations: {}
  780. labels: {}
  781. clusterIP: ""
  782. ## List of IP addresses at which the Prometheus server service is available
  783. ## Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
  784. ##
  785. externalIPs: []
  786. loadBalancerIP: ""
  787. loadBalancerSourceRanges: []
  788. servicePort: 80
  789. sessionAffinity: None
  790. type: ClusterIP
  791. ## Enable gRPC port on service to allow auto discovery with thanos-querier
  792. gRPC:
  793. enabled: false
  794. servicePort: 10901
  795. # nodePort: 10901
  796. ## If using a statefulSet (statefulSet.enabled=true), configure the
  797. ## service to connect to a specific replica to have a consistent view
  798. ## of the data.
  799. statefulsetReplica:
  800. enabled: false
  801. replica: 0
  802. ## Prometheus server pod termination grace period
  803. ##
  804. terminationGracePeriodSeconds: 300
  805. ## Prometheus data retention period (default if not specified is 15 days)
  806. ##
  807. retention: "15d"
  808. pushgateway:
  809. ## If false, pushgateway will not be installed
  810. ##
  811. enabled: true
  812. ## Use an alternate scheduler, e.g. "stork".
  813. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  814. ##
  815. # schedulerName:
  816. ## pushgateway container name
  817. ##
  818. name: pushgateway
  819. ## pushgateway container image
  820. ##
  821. image:
  822. repository: prom/pushgateway
  823. tag: v1.2.0
  824. pullPolicy: IfNotPresent
  825. ## pushgateway priorityClassName
  826. ##
  827. priorityClassName: ""
  828. ## Additional pushgateway container arguments
  829. ##
  830. ## for example: persistence.file: /data/pushgateway.data
  831. extraArgs: {}
  832. ## Additional InitContainers to initialize the pod
  833. ##
  834. extraInitContainers: []
  835. ingress:
  836. ## If true, pushgateway Ingress will be created
  837. ##
  838. enabled: false
  839. ## pushgateway Ingress annotations
  840. ##
  841. annotations: {}
  842. # kubernetes.io/ingress.class: nginx
  843. # kubernetes.io/tls-acme: 'true'
  844. ## pushgateway Ingress hostnames with optional path
  845. ## Must be provided if Ingress is enabled
  846. ##
  847. hosts: []
  848. # - pushgateway.domain.com
  849. # - domain.com/pushgateway
  850. ## Extra paths to prepend to every host configuration. This is useful when working with annotation based services.
  851. extraPaths: []
  852. # - path: /*
  853. # backend:
  854. # serviceName: ssl-redirect
  855. # servicePort: use-annotation
  856. ## pushgateway Ingress TLS configuration
  857. ## Secrets must be manually created in the namespace
  858. ##
  859. tls: []
  860. # - secretName: prometheus-alerts-tls
  861. # hosts:
  862. # - pushgateway.domain.com
  863. ## Node tolerations for pushgateway scheduling to nodes with taints
  864. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
  865. ##
  866. tolerations: []
  867. # - key: "key"
  868. # operator: "Equal|Exists"
  869. # value: "value"
  870. # effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)"
  871. ## Node labels for pushgateway pod assignment
  872. ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
  873. ##
  874. nodeSelector: {}
  875. ## Annotations to be added to pushgateway pods
  876. ##
  877. podAnnotations: {}
  878. ## Labels to be added to pushgateway pods
  879. ##
  880. podLabels: {}
  881. ## Specify if a Pod Security Policy for node-exporter must be created
  882. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/
  883. ##
  884. podSecurityPolicy:
  885. annotations: {}
  886. ## Specify pod annotations
  887. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#apparmor
  888. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#seccomp
  889. ## Ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/#sysctl
  890. ##
  891. # seccomp.security.alpha.kubernetes.io/allowedProfileNames: '*'
  892. # seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
  893. # apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
  894. replicaCount: 1
  895. ## Annotations to be added to deployment
  896. ##
  897. deploymentAnnotations: {}
  898. ## PodDisruptionBudget settings
  899. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/
  900. ##
  901. podDisruptionBudget:
  902. enabled: false
  903. maxUnavailable: 1
  904. ## pushgateway resource requests and limits
  905. ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
  906. ##
  907. resources: {}
  908. # limits:
  909. # cpu: 10m
  910. # memory: 32Mi
  911. # requests:
  912. # cpu: 10m
  913. # memory: 32Mi
  914. ## Security context to be added to push-gateway pods
  915. ##
  916. securityContext:
  917. runAsUser: 65534
  918. runAsNonRoot: true
  919. service:
  920. annotations:
  921. prometheus.io/probe: pushgateway
  922. labels: {}
  923. clusterIP: ""
  924. ## List of IP addresses at which the pushgateway service is available
  925. ## Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
  926. ##
  927. externalIPs: []
  928. loadBalancerIP: ""
  929. loadBalancerSourceRanges: []
  930. servicePort: 9091
  931. type: ClusterIP
  932. ## pushgateway Deployment Strategy type
  933. # strategy:
  934. # type: Recreate
  935. persistentVolume:
  936. ## If true, pushgateway will create/use a Persistent Volume Claim
  937. ##
  938. enabled: false
  939. ## pushgateway data Persistent Volume access modes
  940. ## Must match those of existing PV or dynamic provisioner
  941. ## Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  942. ##
  943. accessModes:
  944. - ReadWriteOnce
  945. ## pushgateway data Persistent Volume Claim annotations
  946. ##
  947. annotations: {}
  948. ## pushgateway data Persistent Volume existing claim name
  949. ## Requires pushgateway.persistentVolume.enabled: true
  950. ## If defined, PVC must be created manually before volume will be bound
  951. existingClaim: ""
  952. ## pushgateway data Persistent Volume mount root path
  953. ##
  954. mountPath: /data
  955. ## pushgateway data Persistent Volume size
  956. ##
  957. size: 2Gi
  958. ## pushgateway data Persistent Volume Storage Class
  959. ## If defined, storageClassName: <storageClass>
  960. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  961. ## If undefined (the default) or set to null, no storageClassName spec is
  962. ## set, choosing the default provisioner. (gp2 on AWS, standard on
  963. ## GKE, AWS & OpenStack)
  964. ##
  965. # storageClass: "-"
  966. ## pushgateway data Persistent Volume Binding Mode
  967. ## If defined, volumeBindingMode: <volumeBindingMode>
  968. ## If undefined (the default) or set to null, no volumeBindingMode spec is
  969. ## set, choosing the default mode.
  970. ##
  971. # volumeBindingMode: ""
  972. ## Subdirectory of pushgateway data Persistent Volume to mount
  973. ## Useful if the volume's root directory is not empty
  974. ##
  975. subPath: ""
  976. ## alertmanager ConfigMap entries
  977. ##
  978. alertmanagerFiles:
  979. alertmanager.yml:
  980. global: {}
  981. # slack_api_url: ''
  982. receivers:
  983. - name: default-receiver
  984. # slack_configs:
  985. # - channel: '@you'
  986. # send_resolved: true
  987. route:
  988. group_wait: 10s
  989. group_interval: 5m
  990. receiver: default-receiver
  991. repeat_interval: 3h
  992. ## Prometheus server ConfigMap entries
  993. ##
  994. serverFiles:
  995. ## Alerts configuration
  996. ## Ref: https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/
  997. alerting_rules.yml: {}
  998. # groups:
  999. # - name: Instances
  1000. # rules:
  1001. # - alert: InstanceDown
  1002. # expr: up == 0
  1003. # for: 5m
  1004. # labels:
  1005. # severity: page
  1006. # annotations:
  1007. # description: '{{ $labels.instance }} of job {{ $labels.job }} has been down for more than 5 minutes.'
  1008. # summary: 'Instance {{ $labels.instance }} down'
  1009. ## DEPRECATED DEFAULT VALUE, unless explicitly naming your files, please use alerting_rules.yml
  1010. alerts: {}
  1011. ## Records configuration
  1012. ## Ref: https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/
  1013. recording_rules.yml: {}
  1014. ## DEPRECATED DEFAULT VALUE, unless explicitly naming your files, please use recording_rules.yml
  1015. rules: {}
  1016. prometheus.yml:
  1017. rule_files:
  1018. - /etc/config/recording_rules.yml
  1019. - /etc/config/alerting_rules.yml
  1020. ## Below two files are DEPRECATED will be removed from this default values file
  1021. - /etc/config/rules
  1022. - /etc/config/alerts
  1023. scrape_configs:
  1024. - job_name: prometheus
  1025. static_configs:
  1026. - targets:
  1027. - localhost:9090
  1028. # A scrape configuration for running Prometheus on a Kubernetes cluster.
  1029. # This uses separate scrape configs for cluster components (i.e. API server, node)
  1030. # and services to allow each to use different authentication configs.
  1031. #
  1032. # Kubernetes labels will be added as Prometheus labels on metrics via the
  1033. # `labelmap` relabeling action.
  1034. # Scrape config for API servers.
  1035. #
  1036. # Kubernetes exposes API servers as endpoints to the default/kubernetes
  1037. # service so this uses `endpoints` role and uses relabelling to only keep
  1038. # the endpoints associated with the default/kubernetes service using the
  1039. # default named port `https`. This works for single API server deployments as
  1040. # well as HA API server deployments.
  1041. - job_name: 'kubernetes-apiservers'
  1042. kubernetes_sd_configs:
  1043. - role: endpoints
  1044. # Default to scraping over https. If required, just disable this or change to
  1045. # `http`.
  1046. scheme: https
  1047. # This TLS & bearer token file config is used to connect to the actual scrape
  1048. # endpoints for cluster components. This is separate to discovery auth
  1049. # configuration because discovery & scraping are two separate concerns in
  1050. # Prometheus. The discovery auth config is automatic if Prometheus runs inside
  1051. # the cluster. Otherwise, more config options have to be provided within the
  1052. # <kubernetes_sd_config>.
  1053. tls_config:
  1054. ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  1055. # If your node certificates are self-signed or use a different CA to the
  1056. # master CA, then disable certificate verification below. Note that
  1057. # certificate verification is an integral part of a secure infrastructure
  1058. # so this should only be disabled in a controlled environment. You can
  1059. # disable certificate verification by uncommenting the line below.
  1060. #
  1061. insecure_skip_verify: true
  1062. bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  1063. # Keep only the default/kubernetes service endpoints for the https port. This
  1064. # will add targets for each API server which Kubernetes adds an endpoint to
  1065. # the default/kubernetes service.
  1066. relabel_configs:
  1067. - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
  1068. action: keep
  1069. regex: default;kubernetes;https
  1070. - job_name: 'kubernetes-nodes'
  1071. # Default to scraping over https. If required, just disable this or change to
  1072. # `http`.
  1073. scheme: https
  1074. # This TLS & bearer token file config is used to connect to the actual scrape
  1075. # endpoints for cluster components. This is separate to discovery auth
  1076. # configuration because discovery & scraping are two separate concerns in
  1077. # Prometheus. The discovery auth config is automatic if Prometheus runs inside
  1078. # the cluster. Otherwise, more config options have to be provided within the
  1079. # <kubernetes_sd_config>.
  1080. tls_config:
  1081. ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  1082. # If your node certificates are self-signed or use a different CA to the
  1083. # master CA, then disable certificate verification below. Note that
  1084. # certificate verification is an integral part of a secure infrastructure
  1085. # so this should only be disabled in a controlled environment. You can
  1086. # disable certificate verification by uncommenting the line below.
  1087. #
  1088. insecure_skip_verify: true
  1089. bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  1090. kubernetes_sd_configs:
  1091. - role: node
  1092. relabel_configs:
  1093. - action: labelmap
  1094. regex: __meta_kubernetes_node_label_(.+)
  1095. - target_label: __address__
  1096. replacement: kubernetes.default.svc:443
  1097. - source_labels: [__meta_kubernetes_node_name]
  1098. regex: (.+)
  1099. target_label: __metrics_path__
  1100. replacement: /api/v1/nodes/$1/proxy/metrics
  1101. - job_name: 'kubernetes-nodes-cadvisor'
  1102. # Default to scraping over https. If required, just disable this or change to
  1103. # `http`.
  1104. scheme: https
  1105. # This TLS & bearer token file config is used to connect to the actual scrape
  1106. # endpoints for cluster components. This is separate to discovery auth
  1107. # configuration because discovery & scraping are two separate concerns in
  1108. # Prometheus. The discovery auth config is automatic if Prometheus runs inside
  1109. # the cluster. Otherwise, more config options have to be provided within the
  1110. # <kubernetes_sd_config>.
  1111. tls_config:
  1112. ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  1113. # If your node certificates are self-signed or use a different CA to the
  1114. # master CA, then disable certificate verification below. Note that
  1115. # certificate verification is an integral part of a secure infrastructure
  1116. # so this should only be disabled in a controlled environment. You can
  1117. # disable certificate verification by uncommenting the line below.
  1118. #
  1119. insecure_skip_verify: true
  1120. bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
  1121. kubernetes_sd_configs:
  1122. - role: node
  1123. # This configuration will work only on kubelet 1.7.3+
  1124. # As the scrape endpoints for cAdvisor have changed
  1125. # if you are using older version you need to change the replacement to
  1126. # replacement: /api/v1/nodes/$1:4194/proxy/metrics
  1127. # more info here https://github.com/coreos/prometheus-operator/issues/633
  1128. relabel_configs:
  1129. - action: labelmap
  1130. regex: __meta_kubernetes_node_label_(.+)
  1131. - target_label: __address__
  1132. replacement: kubernetes.default.svc:443
  1133. - source_labels: [__meta_kubernetes_node_name]
  1134. regex: (.+)
  1135. target_label: __metrics_path__
  1136. replacement: /api/v1/nodes/$1/proxy/metrics/cadvisor
  1137. # Scrape config for service endpoints.
  1138. #
  1139. # The relabeling allows the actual service scrape endpoint to be configured
  1140. # via the following annotations:
  1141. #
  1142. # * `prometheus.io/scrape`: Only scrape services that have a value of `true`
  1143. # * `prometheus.io/scheme`: If the metrics endpoint is secured then you will need
  1144. # to set this to `https` & most likely set the `tls_config` of the scrape config.
  1145. # * `prometheus.io/path`: If the metrics path is not `/metrics` override this.
  1146. # * `prometheus.io/port`: If the metrics are exposed on a different port to the
  1147. # service then set this appropriately.
  1148. - job_name: 'kubernetes-service-endpoints'
  1149. kubernetes_sd_configs:
  1150. - role: endpoints
  1151. relabel_configs:
  1152. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
  1153. action: keep
  1154. regex: true
  1155. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
  1156. action: replace
  1157. target_label: __scheme__
  1158. regex: (https?)
  1159. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
  1160. action: replace
  1161. target_label: __metrics_path__
  1162. regex: (.+)
  1163. - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
  1164. action: replace
  1165. target_label: __address__
  1166. regex: ([^:]+)(?::\d+)?;(\d+)
  1167. replacement: $1:$2
  1168. - action: labelmap
  1169. regex: __meta_kubernetes_service_label_(.+)
  1170. - source_labels: [__meta_kubernetes_namespace]
  1171. action: replace
  1172. target_label: kubernetes_namespace
  1173. - source_labels: [__meta_kubernetes_service_name]
  1174. action: replace
  1175. target_label: kubernetes_name
  1176. - source_labels: [__meta_kubernetes_pod_node_name]
  1177. action: replace
  1178. target_label: kubernetes_node
  1179. # Scrape config for slow service endpoints; same as above, but with a larger
  1180. # timeout and a larger interval
  1181. #
  1182. # The relabeling allows the actual service scrape endpoint to be configured
  1183. # via the following annotations:
  1184. #
  1185. # * `prometheus.io/scrape-slow`: Only scrape services that have a value of `true`
  1186. # * `prometheus.io/scheme`: If the metrics endpoint is secured then you will need
  1187. # to set this to `https` & most likely set the `tls_config` of the scrape config.
  1188. # * `prometheus.io/path`: If the metrics path is not `/metrics` override this.
  1189. # * `prometheus.io/port`: If the metrics are exposed on a different port to the
  1190. # service then set this appropriately.
  1191. - job_name: 'kubernetes-service-endpoints-slow'
  1192. scrape_interval: 5m
  1193. scrape_timeout: 30s
  1194. kubernetes_sd_configs:
  1195. - role: endpoints
  1196. relabel_configs:
  1197. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape_slow]
  1198. action: keep
  1199. regex: true
  1200. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
  1201. action: replace
  1202. target_label: __scheme__
  1203. regex: (https?)
  1204. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
  1205. action: replace
  1206. target_label: __metrics_path__
  1207. regex: (.+)
  1208. - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
  1209. action: replace
  1210. target_label: __address__
  1211. regex: ([^:]+)(?::\d+)?;(\d+)
  1212. replacement: $1:$2
  1213. - action: labelmap
  1214. regex: __meta_kubernetes_service_label_(.+)
  1215. - source_labels: [__meta_kubernetes_namespace]
  1216. action: replace
  1217. target_label: kubernetes_namespace
  1218. - source_labels: [__meta_kubernetes_service_name]
  1219. action: replace
  1220. target_label: kubernetes_name
  1221. - source_labels: [__meta_kubernetes_pod_node_name]
  1222. action: replace
  1223. target_label: kubernetes_node
  1224. - job_name: 'prometheus-pushgateway'
  1225. honor_labels: true
  1226. kubernetes_sd_configs:
  1227. - role: service
  1228. relabel_configs:
  1229. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_probe]
  1230. action: keep
  1231. regex: pushgateway
  1232. # Example scrape config for probing services via the Blackbox Exporter.
  1233. #
  1234. # The relabeling allows the actual service scrape endpoint to be configured
  1235. # via the following annotations:
  1236. #
  1237. # * `prometheus.io/probe`: Only probe services that have a value of `true`
  1238. - job_name: 'kubernetes-services'
  1239. metrics_path: /probe
  1240. params:
  1241. module: [http_2xx]
  1242. kubernetes_sd_configs:
  1243. - role: service
  1244. relabel_configs:
  1245. - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_probe]
  1246. action: keep
  1247. regex: true
  1248. - source_labels: [__address__]
  1249. target_label: __param_target
  1250. - target_label: __address__
  1251. replacement: blackbox
  1252. - source_labels: [__param_target]
  1253. target_label: instance
  1254. - action: labelmap
  1255. regex: __meta_kubernetes_service_label_(.+)
  1256. - source_labels: [__meta_kubernetes_namespace]
  1257. target_label: kubernetes_namespace
  1258. - source_labels: [__meta_kubernetes_service_name]
  1259. target_label: kubernetes_name
  1260. # Example scrape config for pods
  1261. #
  1262. # The relabeling allows the actual pod scrape endpoint to be configured via the
  1263. # following annotations:
  1264. #
  1265. # * `prometheus.io/scrape`: Only scrape pods that have a value of `true`
  1266. # * `prometheus.io/path`: If the metrics path is not `/metrics` override this.
  1267. # * `prometheus.io/port`: Scrape the pod on the indicated port instead of the default of `9102`.
  1268. - job_name: 'kubernetes-pods'
  1269. kubernetes_sd_configs:
  1270. - role: pod
  1271. relabel_configs:
  1272. - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
  1273. action: keep
  1274. regex: true
  1275. - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
  1276. action: replace
  1277. target_label: __metrics_path__
  1278. regex: (.+)
  1279. - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
  1280. action: replace
  1281. regex: ([^:]+)(?::\d+)?;(\d+)
  1282. replacement: $1:$2
  1283. target_label: __address__
  1284. - action: labelmap
  1285. regex: __meta_kubernetes_pod_label_(.+)
  1286. - source_labels: [__meta_kubernetes_namespace]
  1287. action: replace
  1288. target_label: kubernetes_namespace
  1289. - source_labels: [__meta_kubernetes_pod_name]
  1290. action: replace
  1291. target_label: kubernetes_pod_name
  1292. - source_labels: [__meta_kubernetes_pod_phase]
  1293. regex: Pending|Succeeded|Failed
  1294. action: drop
  1295. # Example Scrape config for pods which should be scraped slower. An useful example
  1296. # would be stackriver-exporter which queries an API on every scrape of the pod
  1297. #
  1298. # The relabeling allows the actual pod scrape endpoint to be configured via the
  1299. # following annotations:
  1300. #
  1301. # * `prometheus.io/scrape-slow`: Only scrape pods that have a value of `true`
  1302. # * `prometheus.io/path`: If the metrics path is not `/metrics` override this.
  1303. # * `prometheus.io/port`: Scrape the pod on the indicated port instead of the default of `9102`.
  1304. - job_name: 'kubernetes-pods-slow'
  1305. scrape_interval: 5m
  1306. scrape_timeout: 30s
  1307. kubernetes_sd_configs:
  1308. - role: pod
  1309. relabel_configs:
  1310. - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape_slow]
  1311. action: keep
  1312. regex: true
  1313. - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
  1314. action: replace
  1315. target_label: __metrics_path__
  1316. regex: (.+)
  1317. - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
  1318. action: replace
  1319. regex: ([^:]+)(?::\d+)?;(\d+)
  1320. replacement: $1:$2
  1321. target_label: __address__
  1322. - action: labelmap
  1323. regex: __meta_kubernetes_pod_label_(.+)
  1324. - source_labels: [__meta_kubernetes_namespace]
  1325. action: replace
  1326. target_label: kubernetes_namespace
  1327. - source_labels: [__meta_kubernetes_pod_name]
  1328. action: replace
  1329. target_label: kubernetes_pod_name
  1330. - source_labels: [__meta_kubernetes_pod_phase]
  1331. regex: Pending|Succeeded|Failed
  1332. action: drop
  1333. # adds additional scrape configs to prometheus.yml
  1334. # must be a string so you have to add a | after extraScrapeConfigs:
  1335. # example adds prometheus-blackbox-exporter scrape config
  1336. extraScrapeConfigs:
  1337. # - job_name: 'prometheus-blackbox-exporter'
  1338. # metrics_path: /probe
  1339. # params:
  1340. # module: [http_2xx]
  1341. # static_configs:
  1342. # - targets:
  1343. # - https://example.com
  1344. # relabel_configs:
  1345. # - source_labels: [__address__]
  1346. # target_label: __param_target
  1347. # - source_labels: [__param_target]
  1348. # target_label: instance
  1349. # - target_label: __address__
  1350. # replacement: prometheus-blackbox-exporter:9115
  1351. # Adds option to add alert_relabel_configs to avoid duplicate alerts in alertmanager
  1352. # useful in H/A prometheus with different external labels but the same alerts
  1353. alertRelabelConfigs:
  1354. # alert_relabel_configs:
  1355. # - source_labels: [dc]
  1356. # regex: (.+)\d+
  1357. # target_label: dc
  1358. networkPolicy:
  1359. ## Enable creation of NetworkPolicy resources.
  1360. ##
  1361. enabled: false
  1362. # Force namespace of namespaced resources
  1363. forceNamespace: null