Configuration 如何解决普罗米修斯错误';缺少角色(pod、服务、端点、节点之一)和#x27;

Configuration 如何解决普罗米修斯错误';缺少角色(pod、服务、端点、节点之一)和#x27;,configuration,kubernetes,yaml,prometheus,Configuration,Kubernetes,Yaml,Prometheus,我第一次尝试将kubernetes应用到我的minikube集群。我在集群管理方面的经验有限,以前从未与普罗米修斯合作过,因此我为noob错误道歉 我运行以下命令: docker build -t my-prometheus . docker run -p 9090:9090 my-prometheus 这是我的yaml: global: scrape_interval: 15s external_labels: monitor: 'codelab-monitor' scrap

我第一次尝试将kubernetes应用到我的minikube集群。我在集群管理方面的经验有限,以前从未与普罗米修斯合作过,因此我为noob错误道歉

我运行以下命令:

docker build -t my-prometheus .
docker run -p 9090:9090 my-prometheus
这是我的yaml:

global:
  scrape_interval: 15s
  external_labels:
    monitor: 'codelab-monitor'
scrape_configs:
- job_name: 'kubernetes-apiservers'
  scheme: http
  tls_config:
    ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
  kubernetes_sd_configs:
  - role: endpoints
  - api_server: localhost:30000
我通过亚姆林特查了一下,发现它是有效的。但是,当我运行第二个docker命令时,会出现以下错误:

level=error ts=2018-09-18T21:49:34.365671918Z caller=main.go:617 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: role missing (one of: pod, 
service, endpoints, node)"
但是,您可以看到,我已经在my
kubernetes\u sd\u configs
中指定了我的
-role:endpoints


有人能帮我一下吗?kubernetes_sd_configs是一个配置列表,用YAML术语命名为块序列

现在,您的配置列表如下所示:

- role: endpoints
- api_server: localhost:3000
因此,您定义了两个配置,其中只有第一个具有角色。这就是为什么会出现错误。很可能,您只想创建一个配置了
角色
api_服务器
的配置。放下第二个
-
,使
api\u服务器属于第一个配置:

- role: endpoints
  api_server: localhost:3000

成功了!感谢您的快速回复和解释