简介
为了通过网址远程查看服务器及容器的运行状况,选择了时下最热门的监控方案:Prometheus+node_exporter+Grafana。
现记录下自己的安装过程。
Prometheus
官网地址 https://prometheus.io/docs/introduction/overview/
概述
Prometheus 是一个开源的系统监控和警报工具包,由 SoundCloud 构建,由 Golang 编写,现有非常活跃的开发人员和社区,是一个独立的开源项目,于 2016 年加入了云原生计算基金会,成为继 Kubernetes 之后的第二个托管项目。总结:非常热门+ NB。
安装
话不多说,开始使用安装之旅。
1)官网下载页面
核心组件 prometheus 的最新版下载地址为:
上面的地址为 github,众所周知,因为某些原因,你下载可能会出现网络问题,这里不做解决。
如果你的系统可直连 github,可以通过如下命令直接下载。
|
|
提示 wget 没安装?
debian: sudo apt install wget
centos: sudo yum install wget
2)解压安装
下载完成之后,解压安装
解压放到自己熟悉的路径即可。
|
|
修改名字
|
|
在解压的目录下,找到 prometheus.yml 文件,这是 prometheus 的配置文件
本文只为快速搭建使用,对于配置的含义不做详细解释。
默认的文件也不需要修改,需要注意的地方是
|
|
默认的端口是 9090,如果你的端口被占用了,只需要修改上述的端口即可。
1.3. 启动
因为使用 go 语言编写,编译后的文件 只需要执行解压后的文件 prometheus
进入解压的目录
1)前台启动
|
|
2)后台启动
|
|
上述的命令的含义为:后台启动,错误的日志重定向到标准输出,也就是将所有的日志追加到 prometheus.log 中,prometheus.log 会自动生成
通过浏览器 ip:端口 就可以访问。
如果是服务器,需要开放安全组,这里不做介绍。
关于对 Prometheus 的简单介绍就先到这里。
2. node_exporter
2.1. 概述
在 Prometheus 的架构设计中,Prometheus Server 主要负责数据的收集,存储并且对外提供数据查询支持。
实际的监控样本数据的收集则是由 Exporter 完成,因此为了能够监控到某些东西,如主机的 CPU 使用率,我们需要使用到 Exporter。
Prometheus 周期性的从 Exporter 暴露的 HTTP 服务地址(通常是/metrics)拉取监控样本数据。
为了能够采集到主机的运行指标如 CPU, 内存,磁盘等信息。我们可以使用 Node Exporter。Node Exporter 同样采用 Golang 编写,并且不存在任何的第三方依赖,只需要下载,解压即可运行。
2.2. 安装
|
|
2.3. 启动
直接执行 node_exporter 文件即可
|
|
通过控制台打印的信息可以知道,端口为 9100
浏览器访问 ip:9100 即可访问
设置开机自启,编写 systemd 服务脚本
关于如何编写,可以观看这篇文章
服务脚本文件以 .service 结尾,由 Unit、Service 和 Install 三个区块组成,这里提供一个示例
|
|
创建 service 文件
|
|
开启自启
|
|
3. Grafana
3.1 概述
Grafana 是一款采用 Go 语言编写的开源应用,主要用于大规模指标数据的可视化展现
是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数据库。
官网:https://grafana.com/zh-cn/grafana/
3.2 安装
个人使用,选择 Standalone Linux Binaries 版本
|
|
3.3 启动
进入解压的目录之后
|
|
3.4 集成 Prometheus
启动 Grafana 之后,浏览器访问 ip:3000,进入登录界面,默认用户和密码都为 admin
输出密码之后,会提示修改密码,修改即可。
完成之后,进入主界面 ,大概如下:

3.4.1 配置数据源
按住 Ctrl+K,搜索 data sources,选中 data sources 配置数据源,进入如下界面

选择 add new data source ,选择 Prometheus,进入配置

这里只需要配置一下 Prometheus server URL,默认没改端口的填入 http://localhost:9090,不要选择 https,滑到最底下,选择 save & test 按钮,如果显示 Successfully queried the Prometheus API,表示对接成功。
3.4.2 创建仪表盘 Dashboard
Ctrl + K,搜索 Dashboards,进入 Dashboards,选择 new dashborad,后续自行探索吧。

3.4.3 导入仪表盘 Dashboard
Ctrl + K,搜索 Dashboards,进入 Dashboards,选择 Import

填入 ID ,Load 即可
对于如何寻找已经创建好的仪表盘,可在官网寻找 https://grafana.com/grafana/dashboards/

这里推荐一个 https://grafana.com/grafana/dashboards/12633-linux/
填入的 id 为 12633,load 后进入如下界面,选择之前连接的 Prometheus,最后 Import 就大功告成了。

最后的展示
