Prometheus运算符:无法访问Prometheus实例

问题描述

我正在按照documentation创建服务运营商。我不确定为什么无法访问Prometheus服务。

我的apps.yml:

kind: Service
apiVersion: v1
Metadata:
  name: sms-config-service
  labels:
    app: sms-config-service
spec:
  type: NodePort
  selector:
    app: sms-config-service
  ports:
  - port: 8080
    targetPort: 8080
    name: http

我的ServiceMonitor yml:

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
Metadata:
  labels:
    app: servicemonitor-sms-services
  name: servicemonitor-sms-config-services
  namespace: metrics
spec:
  selector:
    matchLabels:
      app: sms-config-service
  endpoints:
    - port: http

普罗米修斯yml:

apiVersion: monitoring.coreos.com/v1
kind: Prometheus
Metadata:
  name: prometheus
spec:
  serviceAccountName: prometheus
  serviceMonitorSelector:
    matchLabels:
      app: servicemonitor-sms-services
  resources:
    requests:
      memory: 800Mi
  enableAdminAPI: true

Prometheus配置yml:

apiVersion: v1
kind: Service
Metadata:
  name: prometheus
spec:
  type: NodePort
  ports:
    - name: web
      nodePort: 30900
      port: 9090
      protocol: TCP
      targetPort: web
  selector:
    prometheus: prometheus

当我访问下面的URL时,浏览器显示“无法连接”。我不确定我做错了什么?我应该为普罗米修斯建立一个部署吗?


$ minikube service prometheus --url
http://192.168.64.3:30900

更新: 我在NodePort 32676上运行了prometheus pod。

enter image description here

我应该更改Prometheus config yml来解决此问题吗?

解决方法

我发现问题是我没有创建serviceAccountName