-
Notifications
You must be signed in to change notification settings - Fork 169
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update kubernetes provider documentation and 8.6 release notes #2552
Changes from 11 commits
05f3fb8
de2602f
0c11433
37053b7
f599a50
49604a3
37c7132
56e395a
d11720c
23a4382
e7771ca
329d1e9
e40babb
48ccaf1
f73c366
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -37,6 +37,10 @@ To automatically identify a Redis Pod and monitor it with the Redis integration, | |
The condition `${kubernetes.labels.app} == 'redis'` will make the {agent} look for a Pod with the label `app:redis` within the scope defined in its manifest. | ||
|
||
For a list of provider fields that you can use in conditions, refer to <<kubernetes-provider>>. | ||
Some examples of conditions usage are: | ||
1. For a pod with label `app.kubernetes.io/name=ingress-nginx` the condition should be `condition: ${kubernetes.labels.app.kubernetes.io/name} == "ingress-nginx"` | ||
2. For a pod with annotation `prometheus.io/scrape: "true"` the condition should be `${kubernetes.annotations.prometheus.io/scrape} == "true"` | ||
3. For a pod with name `kube-scheduler-kind-control-plane` the condition should be `${kubernetes.pod.name == "kube-scheduler-kind-control-plane"` | ||
|
||
|
||
The `redis` input defined in the {agent} manifest only specifies the`info` metricset. To learn about other available metricsets and their configuration settings, refer to the {metricbeat-ref}/metricbeat-module-redis.html[Redis module page]. | ||
|
@@ -67,7 +71,9 @@ You should now be able to see Redis data flowing in on index `metrics-redis.info | |
|
||
NOTE: All assets (dashboards, ingest pipelines, and so on) related to the Redis integration are not installed. You need to explicitly <<install-uninstall-integration-assets,install them through {kib}>>. | ||
|
||
To set the target host dynamically for a targeted Pod based on its labels, use a variable in the {agent} policy to return path information from the provider: | ||
Conditions can also be used in the `Kubernetes` package in order to set the target host dynamically for a targeted Pod based on its labels. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. by for standalone we usually use in documentation can we keep it consistent? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The input can have whatever name the user wants so There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. thank you for clarifications, I don't have a strong opinion on it There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. No strong opinion either :) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ok as long you don't have a strong opinion I decided to use |
||
This is useful for datasets that target specific pods like `kube-scheduler` or `kube-controller-manager`. | ||
The following configuration will enable `kubernetes.scheduler` dataset only for pods which have the label `component=kube-scheduler` defined. | ||
|
||
[source,yaml] | ||
---- | ||
|
@@ -84,6 +90,13 @@ To set the target host dynamically for a targeted Pod based on its labels, use a | |
condition: ${kubernetes.labels.component} == 'kube-scheduler' | ||
---- | ||
|
||
NOTE: Pods' labels and annotations can be used in autodiscover conditions. In the case of labels or annotations that include dots(`.`), they can be used in conditions exactly as | ||
they are defined in the pods. For example `condition: ${kubernetes.labels.app.kubernetes.io/name} == 'ingress-nginx'`. This should not be confused with the dedoted (by default) labels and annotations | ||
stored into Elasticsearch(<<kubernetes-provider>>). | ||
|
||
WARNING: Before 8.6 release, labels used in autodiscover conditions were dedoted in case `labels.dedot` parameter was set to `true` in Kubernetes Provider | ||
configuration (by default `true`). The same did not apply for annotations. This was fixed in 8.6 release. Refer to <<release-notes-8.6.0>>. | ||
|
||
WARNING: In some "As a Service" Kubernetes implementations, like GKE, the control plane nodes or even the Pods running on them won’t be visible. In these cases, it won’t be possible to use scheduler metricsets, necessary for this example. Refer https://www.elastic.co/guide/en/beats/metricbeat/current/metricbeat-module-kubernetes.html#_scheduler_and_controllermanager[scheduler and controller manager] to find more information. | ||
|
||
Following the Redis example, if you deploy another Redis Pod with a different port, it should be detected. To check this, go, for example, to the field `service.address` under `metrics-redis.info-default`. It should be displaying two different services. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also the numeric list here seems broken in the view https://github.com/elastic/observability-docs/blob/e7771ca322ef8a0a7b1c8cf1cc2493aa62c951d4/docs/en/ingest-management/elastic-agent/configuration/autodiscovery/kubernetes-conditions-autodiscover.asciidoc
Can you have a look to update it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed