之前的写法:把 pod ip 写入配置文件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

- job_name: 'service-endpoints-metrics'
kubernetes_sd_configs:
- role: endpoints
metrics_path: /actuator/prometheus
static_configs:
- targets: ['172.20.87.93:8088']
labels:
app: idk-sdk
- targets: ['172.20.232.20:8088']
labels:
app: idk-sdk
- targets: ['172.20.87.192:8088']
labels:
app: idk-sdk
- targets: ['172.20.86.26:8088']
labels:
app: idk-sdk
- targets: ['172.20.60.87:8088']
labels:
app: idk-sdk
- targets: ['172.20.22.247:8088']
labels:
app: idk-sdk
- targets: ['172.20.83.23:8088']
labels:
app: idk-tsp
- targets: ['172.20.22.165:8088']
labels:
app: idk-tsp
- targets: ['172.20.63.105:8088']
labels:
app: idk-tsp
- targets: ['idk-mob-app:8088']
labels:
app: idk-app

如果你的 kubeconfig 只有某个命名空间的权限,则需要指定命名空间,不然会因为权限被拒绝无法继续执行下去。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
- job_name: 'vos-metrics'
metrics_path: '/actuator/prometheus'
kubernetes_sd_configs:
- role: endpoints
kubeconfig_file: /app/kube-config
namespaces:
names:
- llll
relabel_configs:
# - source_labels: [__meta_kubernetes_service_name]
# regex: 'idk-mob-sdk-svc|idk-tsp-svc|idk-mob-app'
# action: keep
# 添加自定义标签
- source_labels: [__meta_kubernetes_service_name]
target_label: app111
- source_labels: [__meta_kubernetes_pod_ip]
target_label: instance