如何在Kubernetes上通过掌舵安装后访问Prometheus?

时间:2017-11-10 07:39:39

标签: docker kubernetes prometheus kubernetes-helm

在Kubernetes集群中安装了Prometheus:

helm install stable/prometheus

接下来:

kubectl get pods
NAME                                                           READY     STATUS    RESTARTS   AGE
winsome-otter-prometheus-alertmanager-3488774855-mk4ph         2/2       Running   0          5m
winsome-otter-prometheus-kube-state-metrics-2907311046-ggnwx   1/1       Running   0          5m
winsome-otter-prometheus-node-exporter-dp9b3                   1/1       Running   0          5m
winsome-otter-prometheus-pushgateway-3103937292-fvw8m          1/1       Running   0          5m
winsome-otter-prometheus-server-2211167584-hjlp6               2/2       Running   0          5m

kubectl get service
NAME                                          TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)    AGE
kubernetes                                    ClusterIP   10.0.0.1     <none>        443/TCP    4d
winsome-otter-prometheus-alertmanager         ClusterIP   10.0.0.215   <none>        80/TCP     8m
winsome-otter-prometheus-kube-state-metrics   ClusterIP   None         <none>        80/TCP     8m
winsome-otter-prometheus-node-exporter        ClusterIP   None         <none>        9100/TCP   8m
winsome-otter-prometheus-pushgateway          ClusterIP   10.0.0.168   <none>        9091/TCP   8m
winsome-otter-prometheus-server               ClusterIP   10.0.0.62    <none>        80/TCP     8m

如何从浏览器访问它?使用哪个端口?怎么知道?

2 个答案:

答案 0 :(得分:2)

您需要先将端口9090从localhost转发到prometheus pod:

export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=server" -o jsonpath="{.items[0].metadata.name}")
kubectl --namespace default port-forward $POD_NAME 9090

现在您可以通过http://localhost:9090

上的浏览器访问Prometheus了

您也可以对alertmanager执行相同操作:

export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=alertmanager" -o jsonpath="{.items[0].metadata.name}")
kubectl --namespace default port-forward $POD_NAME 9093

现在可通过http://localhost:9093

上的浏览器获取Alertmanager

答案 1 :(得分:0)

NOTES:                                                                                                                                                                                                  
The Prometheus server can be accessed via port 81 on the following DNS name from within your cluster:                                                                                                   
voting-prawn-prometheus-server.default.svc.cluster.local                                                                                                                                                


Get the Prometheus server URL by running these commands in the same shell:                                                                                                                              
 export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=server" -o jsonpath="{.items[1].metadata.name}")                                                                        kubectl --namespace default port-forward $POD_NAME 9091                                                                                                                                                

The Prometheus alertmanager can be accessed via port 81 on the following DNS name from within your cluster:                                                                                             
voting-prawn-prometheus-alertmanager.default.svc.cluster.local                                                                                                                                          


Get the Alertmanager URL by running these commands in the same shell:                                                                                                                                   
 export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=alertmanager" -o jsonpath="{.items[1].metadata.name}")                                                             
 kubectl --namespace default port-forward $POD_NAME 9094                                                                                                                                                


The Prometheus PushGateway can be accessed via port 9092 on the following DNS name from within your cluster:                                                                                            
voting-prawn-prometheus-pushgateway.default.svc.cluster.local                                                                                                                                           


Get the PushGateway URL by running these commands in the same shell:                                                                                                                                    
 export POD_NAME=$(kubectl get pods --namespace default -l "app=prometheus,component=pushgateway" -o jsonpath="{.items[1].metadata.name}")                                                              
 kubectl --namespace default port-forward $POD_NAME 9094                                                                                                                                                

For more information on running Prometheus, visit:                                                                                                                                                      
https://prometheus.io/