我有一个DigitalOcean Kubernetes集群。我已经通过Helm安装了NGINX入口控制器,还安装了Prometheus和Grafana。
我的入口在default名称空间中,我的监控在monitoring名称空间中。
以下是我安装的图表的版本。
❯ helm list
NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
grafana 1 Mon Oct 7 08:04:15 2019 DEPLOYED grafana-3.8.18 6.3.5 monitoring
metrics-server 1 Thu Aug 29 09:07:21 2019 DEPLOYED metrics-server-2.8.2 0.3.2 kube-system
nginx-ingress 1 Wed Aug 21 21:32:06 2019 DEPLOYED nginx-ingress-1.17.1 0.25.1 default
prometheus 1 Mon Oct 7 09:24:21 2019 DEPLOYED prometheus-9.1.2 2.11.1 monitoring我正在尝试获取一些NGINX指标,这样我就可以在Grafana中进行监控。
但是,它们都不会出现在Prometheus UI中。我尝试将普罗米修斯旗帜添加到我所有的入口,但仍然一无所获。例如:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ****-ingress
namespace: monitoring
annotations:
kubernetes.io/ingress.class: nginx
enable-vts-status: "true"
prometheus.io/scrape: "true"
prometheus.io/port: "10254"我对nginx控制器使用了默认的values.yaml文件,但我确实进行了更改以启用指标:
metrics:
enabled: true据我所知,它应该是开箱即用的。所以我不知道哪里出了问题。


有一件事看起来很可疑,那就是服务发现似乎没有监控任何服务,但我从来没有使用过普罗米修斯,我对要寻找的东西束手无策。
谢谢
发布于 2019-10-09 15:39:45
我终于到了那里。我必须创建一个prometheus作业来监视NGINX Metrics服务器。我想,我的设置和所有在线示例之间的区别(即使我使用相同的舵图)是我有一个独立的NGINX指标服务,运行在不同的端口上。所以OOB Prometheus没有配置为检查它。
- job_name: nginx-ingress
metrics_path: /metrics
scrape_interval: 5s
static_configs:
- targets:
- nginx-ingress-controller-metrics:9913将其添加到prometheus配置映射中,并重新加载配置。
发布于 2019-10-07 19:13:06
看起来你是从头开始部署普罗米修斯。Nginx入口指标仅在您通过prometheus-operator部署Prometheus时有效。
发布于 2020-09-26 07:31:38
我认为您也可以使用在其他名称空间中找到您的选择器,并激活它们。我遇到了和你一样的nginx入口问题(相同的端口等)。我不确定哪些是关键代码行,所以我把它们都加进去了,但我的代码变得生动起来了,我认为这是一个未来的证明。
values:
prometheus:
prometheusSpec:
# Use all prometheus rules on the cluster
ruleNamespaceSelector:
any: true
ruleSelectorNilUsesHelmValues: false
# Use all service monitors on the cluster
serviceMonitorNamespaceSelector:
any: true
serviceMonitorSelectorNilUsesHelmValues: falsehttps://stackoverflow.com/questions/58266687
复制相似问题