[begin] Prometheus [/begin] 是一个开源的系统监控和报警系统,现在已经加入到CNCF基金会,成为继k8s之后第二个在CNCF托管的项目,在kubernetes容器管理系统中,通常会搭配prometheus进行监控,同时也支持多种exporter
采集数据,还支持pushgateway
进行数据上报,Prometheus性能足够支撑上万台规模的集群。
[begin] Grafana [/begin] grafana是一个非常酷的数据可视化平台,常常应用于显示监控数据,底层数据源可以支持influxDb、graphite、elasticSeach。
[begin] onde-exporter [/begin] 用于采集服务器层面的运行指标,包括机器的loadavg、filesystem、meminfo等基础监控,类似于传统主机监控维度的zabbix-agent
更新
v1.0 基础内容(2022.09.03)
一. 安装部署
1.1 Prometheus部署
用于收集服务器资源数据
拉取镜像
docker pull prom/prometheus:latest
启动容器
docker run -itd --name=prometheus --net=hmnet --restart=always -p 52007:9090 prom/prometheus:latest
命令解释
-d 后台进程运行 –name 名称,指定容器的名称为prometheus
–net=hmnet 网络,加入hmnet网络
-p 9090:9090 映射端口
prom/prometheus:latest 使用镜像
1.2 Grafana部署
用于图形化显示服务器资源数据
拉取镜像
docker pull grafana/grafana:latest
运行容器
docker run -itd --name=grafana --net=hmnet --restart=always -p 52008:3000 -v /data/Docker/grafana/grafana-storage:/var/lib/grafana grafana/grafana:latest
命令解释
-d 后台进程运行 –name 名称,指定容器的名称为grafana
–net=hmnet 网络,加入hmnet网络
-p 9091:9090 映射端口
grafana/grafana:latest 使用镜像
1.3 node-exporter部署
用于发送被监控设备数据
拉取镜像
docker pull prom/node-exporter:latest
运行容器
docker run -itd --name=node-exporter --restart=always -p 52009:9100 -v "/data/Docker/node-exporter/proc:/host/proc:ro" -v "/data/Docker/node-exporter/sys:/host/sys:ro" -v "/data/Docker/node-exporter/:/rootfs:ro" prom/node-exporter:latest
命令解释
-d 后台进程运行 –name 名称,指定容器的名称为node-exporter
–net=hmnet 网络,加入hmnet网络
-p 52009:9090 映射端口
grafana/grafana:latest 使用镜像
二. 配置运行
2.1 配置 Prometheus+node_exporter
prometheus 本身没有数据收集功能,需要用 node_exporter 收集,他们俩之间如何连接在一起呢?这就要修改 Prometheus 的配置文件,这个文件在 Prometheus 容器的 /etc/prometheus/prometheus.yml
从Prometheus容器中拷贝配置文件到宿主机磁盘
docker cp prometheus:/etc/prometheus/prometheus.yml /data/Docker/prometheus
修改prometheus.yml文件
vim prometheus.yml
yml 文件的编辑,注意格式;想添加多个监控服务器时,可以在中括号中,用逗号分隔写多个
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ['hanming-macmini.local:52007'] #监控服务器地址
labels:
instance: prometheus
- job_name: hanming-macmini #被监控服务器名称
static_configs:
- targets: ['hanming-macmini.local:52009'] #被监控服务器地址及端口号
labels:
instance: localhost
把修改后的Prometheus配置文件拷贝到容器中
docker cp /data/Docker/prometheus/prometheus.yml prometheus:/etc/prometheus/prometheus.yml
重启 Prometheus 容器
docker restart prometheus
2.2 配置 Grafana+Prometheus
用浏览器访问Grafana容器
http:// ip:52008
- 登录用户密码:admin
- 登录后,在首页,选择 “Add your first data source”
- 选择 Prometheus,填写相关信息
- 点击Select
- 点击 back 按钮,回到首页
- 输入 12884,点击 load
暂无评论内容