繁体   English   中英

用于检查 AlertManager 的错误 Prometheus 端点

[英]Error Prometheus endpoint for checking AlertManager

我安装了 Prometheus(请访问此链接: https : //devopscube.com/setup-prometheus-monitoring-on-kubernetes/

但是,在检查 Targets 的状态时,它显示 AlertManager 服务为“Down”,每隔一个端点都已启动,请参阅附件在此处输入图片说明

然后,我检查服务发现,发现的标签显示:

地址=” 192.168.180.254:9093" __meta_kubernetes_endpoint_address_target_kind = “荚” __meta_kubernetes_endpoint_address_target_name = “alertmanager-6c666985cc-54rjm” __meta_kubernetes_endpoint_node_name = “工人节点1” __meta_kubernetes_endpoint_port_protocol = “TCP” __meta_kubernetes_endpoint_ready = “真” __meta_kubernetes_endpoints_name = “alertmanager” __meta_kubernetes_namespace =“监控“__meta_kubernetes_pod_annotation_cni_projectcalico_org_podIP =” 192.168.180.254/32" __meta_kubernetes_pod_annotationpresent_cni_projectcalico_org_podIP = “真” __meta_kubernetes_pod_container_name = “alertmanager” __meta_kubernetes_pod_container_port_name = “alertmanager” __meta_kubernetes_pod_container_port_number = “9093”,”

但是目标标签显示另一个端口( 8080 ),我不知道为什么:

 instance="192.168.180.254:8080" job="kubernetes-service-endpoints" kubernetes_name="alertmanager" kubernetes_namespace="monitoring"

在此处输入图片说明

首先,如果你想安装 prometheus 和 grafana 而不会生病,你需要通过 helm 来完成。

首先安装头盔

进而

helm install installationWhatEverName stable/prometheus-operator

我已经在 GCE 上重现了您的问题。

如果您使用的版本1.16+你可能会改变apiVersion在教程中,您必须Deploymentextensions/v1beta1 从 K8s 1.16+您需要将其更改为apiVersion: apps/v1 否则你会得到如下错误:

error: unable to recognize "STDIN": no matches for kind "Deployment" in version "extensions/v1beta1"

第二件事,在 1.16+ 中,您需要指定selector 如果您不这样做,您将收到另一个错误:

`error: error validating "STDIN": error validating data: ValidationError(Deployment.spec): missing required field "selector" in io.k8s.api.apps.v1.DeploymentSpec; if you choose to ignore these errors, turn validation off with --validate=false`

它看起来像:

...
spec:
  replicas: 1
  selector:
    matchLabels:
      app: prometheus-server
  template:
    metadata:
      labels:
        app: prometheus-server
    spec:
      containers:
...

关于8080端口,请以示例查看 这篇文章

端口:端口是使同一 K8s 集群中运行的其他服务可以看到服务的端口号。 换句话说,如果一个服务想要调用在同一个 Kubernetes 集群中运行的另一个服务,它将能够使用服务规范文件中针对“端口”指定的端口来实现。

它适用于我在 GCE 的环境。 您是否为端点配置了防火墙?

此外。 Helm 3一些hooks被弃用了。 您可以在此处找到此信息。

如果您仍有问题,请提供您对 1.16+ 版应用更改的 YAML。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM