如何部署Prometheus Operator
这篇文章给大家介绍如何部署Prometheus Operator,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
在实践时使用的是 Prometheus Operator 版本 v0.14.0。由于项目开发迭代速度很快,部署方法可能会更新。
下载最新源码
git clone https://github.com/coreos/prometheus-operator.git
cd prometheus-operator
为方便管理,创建一个单独的 Namespace monitoring
,Prometheus Operator 相关的组件都会部署到这个 Namespace。
kubectl create namespace monitoring
安装 Prometheus Operator Deployment
helm install --name prometheus-operator --set rbacEnable=true --namespace=monitoring helm/prometheus-operator
Prometheus Operator 所有的组件都打包成 Helm Chart,安装部署非常方便。如果对 Helm 不熟悉,可以参考前面相关章节。
安装 Prometheus、Alertmanager 和 Grafana
helm install --name prometheus --set serviceMonitorsSelector.app=prometheus --set ruleSelector.app=prometheus --namespace=monitoring helm/prometheus
helm install --name alertmanager --namespace=monitoring helm/alertmanager
helm install --name grafana --namespace=monitoring helm/grafana
可以通过 kubectl get prometheus
查看 Prometheus
类型的资源。
每个 Service 对应一个 ServiceMonitor,组成 Pormetheus 的 Target 列表。
我们注意到有些 Exporter 没有运行 Pod,这是因为像 API Server、Scheduler、Kubelet 等 Kubernetes 内部组件原生就支持 Prometheus,只需要定义 Service 就能直接从预定义端口获取监控数据。
浏览器打开 Pormetheus 的 Web UI http://192.168.56.105:30413/targets
Grafana 的 DataSource 和 Dashboard 已自动配置。点击 Home
就可以使用我们在最开始讨论过的那些 Dashboard 了。
我们实践了三种 Kubernetes 监控方案。
Weave Scope 可以展示集群和应用的完整视图。其出色的交互性让用户能够轻松对容器化应用进行实时监控和问题诊断。
Heapster 是 Kubernetes 原生的集群监控方案。预定义的 Dashboard 能够从 Cluster 和 Pods 两个层次监控 Kubernetes。
Prometheus Operator 可能是目前功能最全面的 Kubernetes 开源监控方案。除了能够监控 Node 和 Pod,还支持集群的各种管理组件,比如 API Server、Scheduler、Controller Manager 等。
关于如何部署Prometheus Operator就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。