- Published on
使用Helm部署Prometheus和Grafana监控Kubernetes
- Authors
- Name
- 老杨的博客
使用 Helm 部署 Prometheus 和 Grafana 监控 Kubernetes
[TOC]
1. 环境说明
- 可用的 kubernetes 集群
- 可用的持久化存储
- 可用的 helm
这里我们使用 kubeapps 管理 charts。
2. 安装 chart
安装时,适当修改values.yaml
里的参数以适应自身的环境。我是设置持久化存储、ingress 和证书 secret。
安装 Prometheus
安装成功后,注意提示页面的提示。同一 namespace 里,引用域名可只使用前面一段。
同理,安装stable/mysql
和stable/grafana
。 mysql 的values.yaml
配置用户密码和库名,以给 grafana 使用。
安装 grafana 时注意values.yaml
里的数据库配置
[database]
type = mysql
host = monitoring-mysql-mysql:3306
name = grafana
user = grafana
password = GrafanaPWD
3. 配置 Grafana
全部安装运行正常后。我们配置登录 Grafana 添加数据源:
添加测试成功后,添加 dashboard 模板:
访问官网搜索模板: https://grafana.com/dashboards?dataSource=prometheus&search=kubernetes Grafana 的 POD 在上网环境可使用 id 直接导入,也可下载 json 文件导入。
我用的这位大神的 dashboard,https://karlstoney.com/2018/07/07/managing-your-costs-on-kubernetes/
感觉比较清爽,当然,有需要再自己调整添加些 dashboard。
4. 小结
Helm 使部署方便快捷,瞬间感觉 kubernetes 管理是如此 easy。但是,helm 安装 chart 过程中,最好看得懂 chart 里的 templates,会排查问题,不然出错了会感觉无从下手。我是直接参考 github 里的 chart,模仿各种用法,加上学习下面参考资料中的[3]写了一个fastdfs-nginx的 chart,再回来部署 helm 的 chart,遇到问题才知道调试。
参考资料: [1] https://github.com/kubernetes/kube-state-metrics [2] https://www.kancloud.cn/huyipow/prometheus/527093 [3] https://whmzsu.github.io/helm-doc-zh-cn/quickstart/using\_helm-zh\_cn.html