1
+ apiVersion : addon.open-cluster-management.io/v1alpha1
2
+ kind : AddOnTemplate
3
+ metadata :
4
+ name : otel-0.0.1
5
+ spec :
6
+ addonName : otel
7
+ agentSpec :
8
+ workload :
9
+ manifests :
10
+ - apiVersion : apps/v1
11
+ kind : Deployment
12
+ metadata :
13
+ name : deployment-collector-dev-opentelemetry-collector
14
+ namespace : default
15
+ spec :
16
+ replicas : 1
17
+ selector :
18
+ matchLabels :
19
+ app.kubernetes.io/instance : deployment-collector-dev
20
+ app.kubernetes.io/name : opentelemetry-collector
21
+ component : standalone-collector
22
+ template :
23
+ metadata :
24
+ labels :
25
+ app.kubernetes.io/instance : deployment-collector-dev
26
+ app.kubernetes.io/name : opentelemetry-collector
27
+ component : standalone-collector
28
+ spec :
29
+ containers :
30
+ - args :
31
+ - --config=/conf/relay.yaml
32
+ command :
33
+ - /otelcontribcol
34
+ env :
35
+ - name : MY_POD_IP
36
+ valueFrom :
37
+ fieldRef :
38
+ apiVersion : v1
39
+ fieldPath : status.podIP
40
+ - name : K8S_NODE_NAME
41
+ valueFrom :
42
+ fieldRef :
43
+ apiVersion : v1
44
+ fieldPath : spec.nodeName
45
+ image : quay.io/clyang82/otelcontribcol-dev:0.0.1
46
+ imagePullPolicy : IfNotPresent
47
+ livenessProbe :
48
+ failureThreshold : 3
49
+ httpGet :
50
+ path : /
51
+ port : 13133
52
+ scheme : HTTP
53
+ periodSeconds : 10
54
+ successThreshold : 1
55
+ timeoutSeconds : 1
56
+ name : opentelemetry-collector
57
+ ports :
58
+ - containerPort : 6831
59
+ name : jaeger-compact
60
+ protocol : UDP
61
+ - containerPort : 14250
62
+ name : jaeger-grpc
63
+ protocol : TCP
64
+ - containerPort : 14268
65
+ name : jaeger-thrift
66
+ protocol : TCP
67
+ - containerPort : 4317
68
+ name : otlp
69
+ protocol : TCP
70
+ - containerPort : 4318
71
+ name : otlp-http
72
+ protocol : TCP
73
+ - containerPort : 9411
74
+ name : zipkin
75
+ protocol : TCP
76
+ readinessProbe :
77
+ failureThreshold : 3
78
+ httpGet :
79
+ path : /
80
+ port : 13133
81
+ scheme : HTTP
82
+ periodSeconds : 10
83
+ successThreshold : 1
84
+ timeoutSeconds : 1
85
+ resources : {}
86
+ securityContext : {}
87
+ terminationMessagePath : /dev/termination-log
88
+ terminationMessagePolicy : File
89
+ volumeMounts :
90
+ - mountPath : /conf
91
+ name : opentelemetry-collector-configmap
92
+ dnsPolicy : ClusterFirst
93
+ restartPolicy : Always
94
+ schedulerName : default-scheduler
95
+ securityContext : {}
96
+ serviceAccount : opentelemetry-collector-sa
97
+ serviceAccountName : opentelemetry-collector-sa
98
+ terminationGracePeriodSeconds : 30
99
+ volumes :
100
+ - configMap :
101
+ defaultMode : 420
102
+ items :
103
+ - key : relay
104
+ path : relay.yaml
105
+ name : deployment-collector-dev-opentelemetry-collector
106
+ name : opentelemetry-collector-configmap
107
+ - apiVersion : v1
108
+ data :
109
+ relay : |
110
+ exporters:
111
+ debug: {}
112
+ prometheusremotewrite:
113
+ endpoint: {{PROM_ENDPOINT}}
114
+ external_labels:
115
+ cluster_name: cluster1
116
+ extensions:
117
+ health_check:
118
+ endpoint: ${env:MY_POD_IP}:13133
119
+ processors:
120
+ batch: {}
121
+ receivers:
122
+ prometheus:
123
+ config:
124
+ scrape_configs:
125
+ - job_name: opentelemetry-collector
126
+ metrics_path: /metrics/cadvisor
127
+ scheme: https
128
+ tls_config:
129
+ insecure_skip_verify: true
130
+ ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
131
+ bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
132
+ kubernetes_sd_configs:
133
+ - role: node
134
+ relabel_configs:
135
+ - action: labelmap
136
+ regex: __meta_kubernetes_node_label_(.+)
137
+ scrape_interval: 10s
138
+ service:
139
+ extensions:
140
+ - health_check
141
+ pipelines:
142
+ metrics:
143
+ exporters:
144
+ - prometheusremotewrite
145
+ processors:
146
+ - batch
147
+ receivers:
148
+ - prometheus
149
+ kind : ConfigMap
150
+ metadata :
151
+ name : deployment-collector-dev-opentelemetry-collector
152
+ namespace : default
153
+ - apiVersion : v1
154
+ kind : ServiceAccount
155
+ metadata :
156
+ name : opentelemetry-collector-sa
157
+ namespace : default
158
+ - apiVersion : rbac.authorization.k8s.io/v1
159
+ kind : ClusterRole
160
+ metadata :
161
+ name : otel-clusterrole
162
+ rules :
163
+ - nonResourceURLs :
164
+ - /metrics
165
+ - /metrics/cadvisor
166
+ verbs :
167
+ - get
168
+ - apiGroups :
169
+ - " "
170
+ resources :
171
+ - nodes
172
+ - nodes/metrics
173
+ verbs :
174
+ - get
175
+ - list
176
+ - watch
177
+ - apiVersion : rbac.authorization.k8s.io/v1
178
+ kind : ClusterRoleBinding
179
+ metadata :
180
+ name : otel-clusterrolebinding
181
+ roleRef :
182
+ apiGroup : rbac.authorization.k8s.io
183
+ kind : ClusterRole
184
+ name : otel-clusterrole
185
+ subjects :
186
+ - kind : ServiceAccount
187
+ name : opentelemetry-collector-sa
188
+ namespace : default
189
+ registration : []
190
+
0 commit comments