Commit graph

41 commits

Author SHA1 Message Date
Bryan Boreham 1e3fef6ab0
scraping: limit detail on dropped targets, to save memory (#12647)
It's possible (quite common on Kubernetes) to have a service discovery
return thousands of targets then drop most of them in relabel rules.
The main place this data is used is to display in the web UI, where
you don't want thousands of lines of display.

The new limit is `keep_dropped_targets`, which defaults to 0
for backwards-compatibility.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-08-14 15:39:25 +01:00
Julien Pivotto b355e833d5 k8s example: Remove obsolete comment
Signed-off-by: Julien Pivotto <roidelapluie@o11y.eu>
2022-10-10 18:09:39 +02:00
paulfantom 151a8daa98 documentation: align kubernetes example with the prom operator and mixins
Signed-off-by: paulfantom <pawel@krupa.net.pl>
2021-11-22 11:13:47 +01:00
Michal Wasilewski 3f686cad8b
fixes yamllint errors
Signed-off-by: Michal Wasilewski <mwasilewski@gmx.com>
2021-06-12 12:47:47 +02:00
Julien Pivotto 8787f0aed7 Update common to support credentials type
Most of the backwards compat tests is done in common.

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-02-18 23:28:22 +01:00
Frederic Branczyk 9f9fb1ab33
documentation: Adapt Kubernetes RBAC to use metrics roles (#3661) 2020-07-24 16:36:56 +02:00
qinng e31b7b2679
[Doc] Fix wrong description in kubernetes expamle (#7012)
Signed-off-by: guoruyi1 <guoruyi1@xiaomi.com>

Co-authored-by: guoruyi1 <guoruyi1@xiaomi.com>
2020-03-20 08:03:43 +00:00
Bartek Plotka 03a9e7f72e example: Commented out annotation examples as they are meant only for example not as an idiomatic way of relabelling.
Signed-off-by: Bartek Plotka <bwplotka@gmail.com>
2018-05-02 13:42:23 +01:00
Paul Gier 85a3c974b7 minor yaml indentation consistency fix in example configs (#3946) 2018-03-11 23:06:13 +00:00
Johannes 'fish' Ziemke 70f3d1e9f9 k8s: Support discovery of ingresses (#3111)
* k8s: Support discovery of ingresses

* Move additional labels below allocation

This makes it more obvious why the additional elements are allocated.
Also fix allocation for node where we only set a single label.

* k8s: Remove port from ingress discovery

* k8s: Add comment to ingress discovery example
2017-09-04 13:10:44 +02:00
Felicity f30b10223a documentation: update Kubernetes example for 1.7 (#2918)
Kubernetes 1.7+ no longer exposes cAdvisor metrics on the Kubelet
metrics endpoint.  Update the example configuration to scrape cAdvisor
in addition to Kubelet.  The provided configuration works for 1.7.3+
and commented notes are given for 1.7.2 and earlier versions.

Also remove the comment about node (Kubelet) CA not matching the master
CA.  Since the example no longer connects directly to the nodes, it
doesn't matter what CA they're using.

References:

- https://github.com/kubernetes/kubernetes/issues/48483
- https://github.com/kubernetes/kubernetes/pull/49079
2017-07-21 14:10:02 +02:00
Jorrit Salverda 14d0604aba Kubernetes config scrape node via api proxy (#2641)
* scrape kubelet metrics via api node proxy

* add manifests to setup serviceaccount, clusterrole and clusterrolebinding to work with rbac

* removed .cluster.local and added newline to address comments
2017-05-09 13:57:49 +02:00
Svend Sorensen 94a3e863e4 Document what ports are scraped by default in k8s example
The Kubernetes pod SD creates a target for each declared port, as documented:

https://prometheus.io/docs/operating/configuration/#pod

> The pod role discovers all pods and exposes their containers as targets. For
> each declared port of a container, a single target is generated. If a
> container has no specified ports, a port-free target per container is created
> for manually adding a port via relabeling.

This results in the default port being the declared port, or no port if none are
declared.
2017-05-01 15:58:48 -07:00
Stephen Soltesz 3f29324e04 Fix kubernetes host:port relabel regex.
This change corrects a bug introduced by PR
https://github.com/prometheus/prometheus/pull/2427

The regex uses three groups: the hostname, an optional port, and the
prefered port from a kubernetes annotation.

Previously, the second group should have been ignored if a :port was not
present in the input. However, making the port group optional with the
"?" had the unintended side-effect of allowing the hostname regex "(.+)"
to match greedily, which included the ":port" patterns up to the ";"
separating the hostname from the kubernetes port annotation.

This change updates the regex for the hostname to match any non-":"
characters. This forces the regex to stop if a ":port" is present and
allow the second group to match the optional port.
2017-02-16 14:46:04 -05:00
Stephen Soltesz 0b1790ee44 Match addresses with or without declared ports.
This change updates port relabeling for pod and service discovery so the
relabeling regex matches addresses with or without declared ports. As
well, this change uses a consistent style in the replacement pattern
for the two expressions.

Previously, for both services or pods that did not have declared ports, the
relabel config regex would fail to match:

    __meta_kubernetes_service_annotation_prometheus_io_port
    regex: (.+)(?::\d+);(\d+)

    __meta_kubernetes_pod_annotation_prometheus_io_port
    regex: (.+):(?:\d+);(\d+)

Both regexes expected a <host>:<port> pattern.

The new regex matches addresses with or without declared ports by making
the :<port> pattern optional.

    __meta_kubernetes_service_annotation_prometheus_io_port
    __meta_kubernetes_pod_annotation_prometheus_io_port
    regex: (.+)(?::\d+)?;(\d+)
2017-02-14 20:12:38 -05:00
Svend Sorensen 3a96d0e267 Kubernetes SD: Fix namespace meta label
Replace one more instance of `__meta_kubernetes_service_namespace` with
`__meta_kubernetes_namespace`.
2017-02-06 13:28:12 -08:00
beorn7 5770d9e545 Kubernetes SD: More fixes to example config
- Avoid mentioning the `in_cluster` option. (It doesn't exist anymore.)
- Replace `__meta_kubernetes_service_namespace` and
  `__meta_kubernetes_pod_namespace` (which don't exist anymore) by
  `__meta_kubernetes_namespace`.
2016-11-29 18:42:35 +01:00
Jimmi Dyson 473dd5b89a
Kubernetes SD: Add endpoints role to API servers job to actually discover some API servers 2016-11-10 09:46:36 +00:00
Jimmi Dyson da23543f29
Kubernetes SD: Update example config to use endpoints role for API server discovery 2016-11-02 20:48:01 +00:00
Jimmi Dyson 4d37dca669
Kubernetes SD: Update config for discovery in 1.3 2016-11-02 15:06:20 +00:00
Audun Fauchald Strand 50e044bb00 added path to pods scrape job 2016-07-27 15:13:53 +02:00
William Stewart f97cd29e47
Drop '__meta_kubernetes_role' since we have role in the config 2016-07-21 15:46:14 +02:00
William Stewart 599fafd2aa
Add node job 2016-07-21 15:45:42 +02:00
William Martin Stewart 58a3771e49 Add roles to prometheus kubernetes example
Needed with Prometheus 1.0
2016-07-21 13:16:23 +02:00
Jimmi Dyson 5733de0dfe
Kubernetes SD: Update example config with TLS options 2016-06-27 14:38:51 +01:00
Pieter Lange 427b322078 Minor typo 2016-05-24 11:12:42 +02:00
Patrick Bogen ae413704e8 kubernetes pod-level discovery 2016-05-18 17:18:52 -07:00
Jimmi Dyson d3934345e9 Kubernetes Discovery: Ensure metrics path isn't overwritten in example relabeling 2016-01-12 21:06:32 +00:00
Jimmi Dyson c12fb447b8 Kubernetes SD: Use first TCP service port as target port & clean up
example config

Fixes #1256
2015-12-08 10:29:40 +00:00
Jimmi Dyson 042f18b07a Kubernetes SD: Fix metrics path relabeling in example config 2015-11-25 10:27:11 +00:00
Jimmi Dyson 645feba8cf KubernetesSD: Remove redundant defaults from example config 2015-11-18 14:24:30 +00:00
Jimmi Dyson 2cca07381b KubernetesSD: Create targets for services as well as service endpoints 2015-11-18 14:15:39 +00:00
Jimmi Dyson 104803e74e Kubernetes SD: Cleanup example config label regexps 2015-10-24 19:29:58 +01:00
Jimmi Dyson 87940ec213 Kubernetes SD: Rename masters to api_servers in config 2015-10-24 14:41:14 +01:00
Jimmi Dyson 1976dfe634 Add Kubernetes namespace & name labels to example config 2015-09-29 12:55:15 +01:00
Jimmi Dyson 0d61605526 Kubernetes SD example: separate out cluster level components & services 2015-09-29 11:22:18 +01:00
Jimmi Dyson e26fc5e73c Kubernetes SD config tidy & add labelmap action example 2015-09-29 08:59:35 +01:00
Keegan Carruthers-Smith e633b1dc8d Move InCluster auth in kubernetes example config
CA and Bearer Token are config of `kubernetes_sd_configs`, not the
`scrape_config`. Also updated misleading top-level comment and removed
unnecessary global config.
2015-09-29 09:05:21 +02:00
Jimmi Dyson a1574aa2b3 Move TLS options to scrape config
Fixes #1013, fixes #989
2015-09-09 09:52:21 +01:00
Jimmi Dyson d7a7fd4589 Kubernetes SD improvements
* Support multiple masters with retries against each master as required.
* Scrape masters' metrics.
* Add role meta label for node/service/master to make it easier for relabeling.
2015-09-04 11:31:20 +01:00
Jimmi Dyson 923f8111d4 Initial Kubernetes discovery
Fixes #904
2015-08-13 10:38:52 +01:00