Kubernetes 使用具有外部ip地址的prometheus

Kubernetes 使用具有外部ip地址的prometheus,kubernetes,google-cloud-platform,prometheus,kubernetes-helm,Kubernetes,Google Cloud Platform,Prometheus,Kubernetes Helm,我们有k8s集群,我有一个正在运行的应用程序。 现在我想补充一点 我使用命令 helminstallstable/prometheus——版本6.7.4——命名我的prometheus 这个命令有效,我得到了这个 名字:我的普罗米修斯 最后部署时间:2019年2月5日星期二15:21:46 名称空间:默认值 状态:已部署 ... 当我运行命令时 kubectl获取服务 我知道了 kubernetes ClusterIP 100.64.0.1

我们有k8s集群,我有一个正在运行的应用程序。 现在我想补充一点 我使用命令

helminstallstable/prometheus——版本6.7.4——命名我的prometheus

这个命令有效,我得到了这个

名字:我的普罗米修斯 最后部署时间:2019年2月5日星期二15:21:46 名称空间:默认值 状态:已部署 ... 当我运行命令时

kubectl获取服务

我知道了

kubernetes                         ClusterIP   100.64.0.1       <none>        443/TCP    2d4h
my-prometheus-alertmanager         ClusterIP   100.75.244.55   <none>        80/TCP     8m44s
my-prometheus-kube-state-metrics   ClusterIP   None             <none>        80/TCP     8m43s
my-prometheus-node-exporter        ClusterIP   None             <none>        9100/TCP   8m43s
my-prometheus-pushgateway          ClusterIP   100.75.24.67     <none>        9091/TCP   8m43s
my-prometheus-server               ClusterIP   100.33.26.206   <none>        80/TCP     8m43s
成功创建的

现在我看到了运行kubectl get服务时的外部ip

my-prometheus-server               LoadBalancer   100.33.26.206   8080:30001/TCP     80/TCP     8m43s

我在浏览器中使用100.33.26.206:30001,什么都没发生,知道吗

我认为您要做的是创建一个带有类型LoadBalancer的服务,这些类型具有内部和外部IP

您可以像创建任何其他服务一样创建一个服务,但应精确指定这两个字段:

externalTrafficPolicy: Local
type: LoadBalancer
已更新

看起来有些混乱,你不需要外部ip来监控你的应用程序,它只会被用来访问普罗米修斯的用户界面

用户界面可在9090端口访问,但出口商从未访问普罗米修斯,因为普罗米修斯将取消出口商


现在,要从internet访问服务,您应该拥有一个google ip,但您拥有的似乎仍然是一个内部ip,它与另一个clusterIP位于同一子网中,不应该。现在代替外部ip显示端口重定向,这也是错误的,因为prometheus UI位于端口9090上(如果您没有修改配置,它应该仍然是)。您应该尝试删除“节点端口”,并将端口重定向到kubernetes。

普罗米修斯头盔图表确实支持服务配置,请参阅

要在本地群集上配置Prometheus服务器,请执行以下步骤:

创建values.yaml:

server:
  service:
    servicePort: 31000
    type: LoadBalancer
    loadBalancerIP: localhost

向掌舵人添加稳定回购(如果缺失):

安装普罗米修斯:

helm install prometheus-demo stable/prometheus --values .\values.yaml

等待1-2分钟。普罗米修斯应该可以使用:

谢谢,但我应该如何将此连接到普罗米修斯?你能添加完整的yml文件吗?如果你有一个服务,在创建时应该是这样的,只需在规范中添加与端口相同级别的行(请参见我的更新:)也许你可以帮助,我能够创建externalIP,但在浏览器中使用它时,我没有获得普罗米修斯仪表板确定您使用的是什么ingress配置?我还没有使用ingress,这是必须的吗?
server:
  service:
    nodePort: 31000
    type: NodePort 
helm repo add stable "https://kubernetes-charts.storage.googleapis.com/"
helm install prometheus-demo stable/prometheus --values .\values.yaml