Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes中的一个示例集装箱化应用程序无法在Prometheus中显示为用于刮取度量的目标_Kubernetes_Monitoring_Prometheus - Fatal编程技术网

Kubernetes中的一个示例集装箱化应用程序无法在Prometheus中显示为用于刮取度量的目标

Kubernetes中的一个示例集装箱化应用程序无法在Prometheus中显示为用于刮取度量的目标,kubernetes,monitoring,prometheus,Kubernetes,Monitoring,Prometheus,我的目标是重现这篇博文中的观察结果: 到目前为止,我已经能够在集群中部署示例rpc应用程序,下面显示了该应用程序的两个POD正在运行: NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATE

我的目标是重现这篇博文中的观察结果:

到目前为止,我已经能够在集群中部署示例rpc应用程序,下面显示了该应用程序的两个POD正在运行:

NAMESPACE     NAME                                                   READY   STATUS    RESTARTS   AGE     IP            NODE                           NOMINATED NODE   READINESS GATES
default       rpc-app-deployment-64f456b65-5m7j5                     1/1     Running   0          3h23m   10.244.0.15   my-server-ip.company.com   <none>           <none>
default       rpc-app-deployment-64f456b65-9mnfd                     1/1     Running   0          3h23m   10.244.0.14   my-server-ip.company.com   <none>           <none>
我的普罗米修斯吊舱在同一个集群中运行。然而,我在普罗米修斯身上看不到任何放射性物质

monitoring    prometheus-deployment-599bbd9457-pslwf                 1/1     Running   0          30m     10.244.0.21   my-server-ip.company.com   <none>           <none>
监控prometheus-deployment-599bbd9457-pslwf 1/1运行0 30m 10.244.0.21 my-server-ip.company.com
在普罗米修斯的GUI中

单击状态->服务发现,我得到

服务发现 rpc指标(0/3个活动目标)

单击状态->目标不显示任何内容(0个目标)

单击状态->配置 内容可以看作:

我对普罗米修斯/库伯内特斯监控非常陌生,感谢您帮助解决此问题

更新1-我创建了服务

`
# cat rpc-app-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: rpc-app-service
  labels:
    app: rpc-app
spec:
  ports:
  - name: web
    port: 8081
    targetPort: 8081
    protocol: TCP
    nodePort: 32325
  selector:
    app: rpc-app
  type: NodePort


# kubectl get service rpc-app-service
NAME              TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
rpc-app-service   NodePort   10.110.204.119   <none>        8081:32325/TCP   9h
`
#cat rpc-app-service.yaml
版本:v1
种类:服务
元数据:
名称:rpc应用程序服务
标签:
应用程序:rpc应用程序
规格:
端口:
-名称:网站
端口:8081
目标港:8081
协议:TCP
节点端口:32325
选择器:
应用程序:rpc应用程序
类型:节点端口
#kubectl获取服务rpc应用程序服务
名称类型CLUSTER-IP外部IP端口年龄
rpc应用程序服务节点端口10.110.204.119 8081:32325/TCP 9h

您是否创建了Kubernetes服务来公开部署

kubectl创建-f rpc-app-service.yam
Prometheus配置监视的是服务端点,而不是部署


看一看这张照片。它比在集群中运行普罗米修斯部署稍微复杂一些,但它代表了普罗米修斯最先进的部署,具有一些优雅的抽象,例如
PodMonitors
ServiceMonitors

是的,我创建了服务。请参阅更新1“日志中的任何内容?”?你有一套复杂的relabel。也许可以简化配置以匹配文章,并且在工作时增加复杂性?TLS配置也值得确认。由于某些原因,最初尝试使用OP中的确切配置不起作用。现在我改回简单的配置,它似乎可以工作。我能够看到操作中描述的结果。。当前我的Prometheus部署为同一集群中的pod,现在我需要探索如何在集群外运行Prometheus服务器时重复相同的行为。如果我有问题,我会问一个新的线程。谢谢你检查这个@不客气!
`
# cat rpc-app-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: rpc-app-service
  labels:
    app: rpc-app
spec:
  ports:
  - name: web
    port: 8081
    targetPort: 8081
    protocol: TCP
    nodePort: 32325
  selector:
    app: rpc-app
  type: NodePort


# kubectl get service rpc-app-service
NAME              TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
rpc-app-service   NodePort   10.110.204.119   <none>        8081:32325/TCP   9h