Kubernetes 普罗米修斯将监测eks(aws)节点
我正试图通过以下Kubernetes 普罗米修斯将监测eks(aws)节点,kubernetes,prometheus,amazon-eks,Kubernetes,Prometheus,Amazon Eks,我正试图通过以下scrape\u配置设置prometheus来监视kubernetes节点(eks,1.10版) - job_name: 'kubernetes-nodes' kubernetes_sd_configs: - api_servers: - 'https://kubernetes.default.svc.cluster.local' in_cluster: true role: node tls_config:
scrape\u配置设置prometheus来监视kubernetes节点(eks,1.10版)
- job_name: 'kubernetes-nodes'
kubernetes_sd_configs:
- api_servers:
- 'https://kubernetes.default.svc.cluster.local'
in_cluster: true
role: node
tls_config:
insecure_skip_verify: true
relabel_configs:
- target_label: __scheme__
replacement: https
节点导出器:
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: node-exporter
namespace: kube-system
labels:
name: node-exporter
spec:
template:
metadata:
labels:
name: node-exporter
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "9100"
spec:
hostPID: true
hostIPC: true
hostNetwork: true
containers:
- ports:
- containerPort: 9100
protocol: TCP
resources:
requests:
cpu: 0.15
securityContext:
privileged: true
image: prom/node-exporter:v0.15.2
args:
- --path.procfs
- /host/proc
- --path.sysfs
- /host/sys
- --collector.filesystem.ignored-mount-points
- '"^/(sys|proc|dev|host|etc)($|/)"'
name: node-exporter
volumeMounts:
- name: dev
mountPath: /host/dev
- name: proc
mountPath: /host/proc
- name: sys
mountPath: /host/sys
- name: rootfs
mountPath: /rootfs
volumes:
- name: proc
hostPath:
path: /proc
- name: dev
hostPath:
path: /dev
- name: sys
hostPath:
path: /sys
- name: rootfs
hostPath:
path: /
使用此配置,普罗米修斯吊舱会出现以下故障:
level=error ts=2019-05-15T15:18:45.472Z caller=main.go:717
err="error loading config from \"/etc/prometheus/prometheus.yml\":
couldn't load configuration (--config.file=\"/etc/prometheus/prometheus.yml\"): parsing YAML file
/etc/prometheus/prometheus.yml: yaml: unmarshal errors:\n line 33: field api_servers not found in type kubernetes.plain\n
line 35: field in_cluster not found in type kubernetes.plain"
更新:
已更正scrape\u配置为
- job_name: 'kubernetes-apiservers'
kubernetes_sd_configs:
- role: endpoints
scheme: http
relabel_configs:
- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
action: keep
regex: default;kubernetes;https
- job_name: 'kubernetes-nodes'
scheme: http
kubernetes_sd_configs:
- role: node
relabel_configs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- target_label: __address__
replacement: kubernetes.default.svc:443
- source_labels: [__meta_kubernetes_node_name]
regex: (.+)
target_label: __metrics_path__
replacement: /api/v1/nodes/${1}/proxy/metrics
节点度量没有首先显示在prometheus UI中,因为这是默认行为?你没有自定义它,你只是在发出错误消息
第二,清楚地表明api_server:
不是复数的有什么不对(有多个是什么意思?!)
第三,对于一个正在工作的普罗米修斯来说,有那么多,为什么不从他们提供的东西中学习呢,即使你最终没有使用他们呢