mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
147 lines
2.7 KiB
Plaintext
147 lines
2.7 KiB
Plaintext
// Module included in the following assemblies:
|
|
//
|
|
// * observability/otel/otel-collector/otel-collector-receivers.adoc
|
|
|
|
:_mod-docs-content-type: REFERENCE
|
|
[id="otel-receivers-k8scluster-receiver_{context}"]
|
|
= Kubernetes Cluster Receiver
|
|
|
|
[role="_abstract"]
|
|
The Kubernetes Cluster Receiver gathers cluster metrics and entity events from the Kubernetes API server. It uses the Kubernetes API to receive information about updates. Authentication for this receiver is only supported through service accounts.
|
|
|
|
:FeatureName: The Kubernetes Cluster Receiver
|
|
include::snippets/technology-preview.adoc[]
|
|
|
|
.OpenTelemetry Collector custom resource with the enabled Kubernetes Cluster Receiver
|
|
[source,yaml]
|
|
----
|
|
# ...
|
|
config:
|
|
receivers:
|
|
k8s_cluster:
|
|
distribution: openshift
|
|
collection_interval: 10s
|
|
exporters:
|
|
debug: {}
|
|
service:
|
|
pipelines:
|
|
metrics:
|
|
receivers: [k8s_cluster]
|
|
exporters: [debug]
|
|
logs/entity_events:
|
|
receivers: [k8s_cluster]
|
|
exporters: [debug]
|
|
# ...
|
|
----
|
|
|
|
This receiver requires a configured service account, RBAC rules for the cluster role, and the cluster role binding that binds the RBAC with the service account.
|
|
|
|
.`ServiceAccount` object
|
|
[source,yaml]
|
|
----
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
labels:
|
|
app: otelcontribcol
|
|
name: otelcontribcol
|
|
# ...
|
|
----
|
|
|
|
.RBAC rules for the `ClusterRole` object
|
|
[source,yaml]
|
|
----
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: otelcontribcol
|
|
labels:
|
|
app: otelcontribcol
|
|
rules:
|
|
- apiGroups:
|
|
- quota.openshift.io
|
|
resources:
|
|
- clusterresourcequotas
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
- namespaces
|
|
- namespaces/status
|
|
- nodes
|
|
- nodes/spec
|
|
- pods
|
|
- pods/status
|
|
- replicationcontrollers
|
|
- replicationcontrollers/status
|
|
- resourcequotas
|
|
- services
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- apps
|
|
resources:
|
|
- daemonsets
|
|
- deployments
|
|
- replicasets
|
|
- statefulsets
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- extensions
|
|
resources:
|
|
- daemonsets
|
|
- deployments
|
|
- replicasets
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- batch
|
|
resources:
|
|
- jobs
|
|
- cronjobs
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- autoscaling
|
|
resources:
|
|
- horizontalpodautoscalers
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
# ...
|
|
----
|
|
|
|
.`ClusterRoleBinding` object
|
|
[source,yaml]
|
|
----
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: otelcontribcol
|
|
labels:
|
|
app: otelcontribcol
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: otelcontribcol
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: otelcontribcol
|
|
namespace: default
|
|
# ...
|
|
----
|