Prometheus+grafana部署使用

主机列表:

192.168.161.130 : Prometheus

192.168.161.128 : node-1

192.168.161.129 : node-2

二进制手动部署

解压 prometheus-2.14.0.linux-amd64.tar.gz包

解压放至 /usr/local下

  • 编辑服务启动脚本

vim /usr/lib/systemd/system/prometheus.service

[Unit]
Description=Prometheus server daemon [Service]
ExecStart=/usr/local/prome/prometheus --config.file=/usr/local/prome/prometheus.yml
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s [Install]
WantedBy=multi-user.target
systemctl daemon-reload  # 加载后台服务
systemctl start | stop | restart | status prometheus

服务端监控配置文件内容

global:    # 全局配置段
scrape_interval: 15s
evaluation_interval: 15s
external_labels:
monitor: 'codelab-monitor'
rule_files: # 告警规则配置 scrape_configs: # 监控配置
- job_name: 'prometheus' #监控任务名称 static_configs: # 静态监控配置
- targets: ['192.168.235.130:9090']
labels:
node: prome_server

使用动态发现添加主机

global:    # 全局配置段
scrape_interval: 15s
evaluation_interval: 15s
external_labels:
monitor: 'codelab-monitor'
rule_files: # 告警规则配置 scrape_configs: # 监控配置
- job_name: 'prometheus' #监控任务名称 # static_configs: # 静态监控配置
# - targets: ['192.168.235.130:9090']
# labels:
# node: prome_server
file_sd_configs: # 基于配置文件动态发现添加主机
- files: ['/usr/local/prome/sd_config/*.yml'] # 定义服务发现配置路径
refresh_interval: 5s # 5秒发现刷洗发现一次
  • 创建服务发现配置文件
mkdir /usr/local/prome/sd_config
  • 编辑prometheus监控程序的配置文件
- targets:            # 直接指定动态发现下的 targets 目标主机
- 192.168.235.130:9090
labels: # 给目标主机添加标签标识
node: prome_server
  • 重载服务
systemctl reload prometheus

被监控节点安装数据采集工具 node-exporter

  • 解压
[root@localhost ~]# tar zxf node_exporter-0.18.1.linux-amd64.tar.gz
[root@localhost ~]# mv node_exporter-0.18.1.linux-amd64 /usr/local/
  • 将服务做成系统服务管理运行
[Unit]
Description=Node_exporter server daemon [Service]
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure [Install]
WantedBy=multi-user.target

prometheus添加远程主机监控

在原来的prometheus.yml中添加任务,监控远程主机

# my global config
global:
evaluation_interval: 15s
scrape_interval: 15s rule_files:
# - "first_rules.yml"
# - "second_rules.yml" scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['192.168.235.130:9090']
labels:
node: prome_server
# file_sd_configs:
# - files: ['/usr/local/prome/sd_config/*.yml']
# refresh_interval: 5s
- job_name: 'node-1' # 添加主机node-1
static_configs:
- targets: ['192.168.235.128:9100']
labels:
node: node-1 - job_name: 'node-2' # 添加主机node-2
static_configs:
- targets: ['192.168.235.129:9100']
labels:
node: node-2

将node_exporter添加服务监控

node_exporter 还可以监控系统的服务状态,在启动是指定参数启用服务监控--collector.systemd --collector.systemd.unit-whitelist=服务名称

[Unit]
Description=Node_exporter server daemon [Service]
ExecStart=/usr/local/node_exporter/node_exporter --collector.systemd --collector.systemd.unit-whitelist=(sshd|docker|nginx).service
Restart=on-failure [Install]
WantedBy=multi-user.target
  • --collector.systemd : 表示启用服务监控
  • --collector.systemd.unit-whitelist=(sshd|docker|nginx).service : 表示监控多个服务

grafan中快速使用监控模板快速监控

grafana 提供了大量的监控模板,针对各种exporter和数据源制作了不同的监控模板,在grafana中导入即可直接使用

https://grafana.com/grafana/dashboards
  • 通过监控模板的ID值直接导入

选择某个监控模板,找到Get this dashboard:的值,这里针对node-exporter的模板有一个比较好的模板ID:8919 ,可以快速实现主机资源的监控。

同样,容器监控也一样。找到合适的模板即可

最新文章

  1. spring整合mybatis使用<context:property-placeholder>时的坑
  2. 数据结构——B树、B+树
  3. Sigar介绍与使用
  4. ios CoreBluetooth 警告 is being dealloc'ed while pending connection
  5. How to fix broken packages?(转)
  6. TCP协议三次握手、四次断开 过程分析
  7. Hibernate 注意命名与数据库关键字的冲突 处理方法
  8. Eclipse 将projectBuild Path中引用的jar包自己主动复制到WEB-INF下的lib目录下
  9. 基于visual Studio2013解决面试题之1003字符串逆序
  10. 深入理解spring中的各种注解(转)
  11. Vue列表过渡
  12. Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(一)
  13. 通配符的匹配很全面, 但无法找到元素 'mvc:annotation-driven' 的声明
  14. Java学习--泛型
  15. Importing Maven projects' has encountered a problem
  16. 类的三大方法 与__init___
  17. 22 Zabbix系统版本升级过程
  18. activiti 项目变更控制器
  19. [LeetCode&Python] Problem 530. Minimum Absolute Difference in BST
  20. c#对dataset和list集合压缩和解压,能提高访问速度

热门文章

  1. 【ybtoj】贪心算法例题
  2. Sunlogin RCE漏洞分析和使用
  3. 华为云企业级Redis揭秘第16期:超越开源Redis的ACID"真"事务
  4. C# 给Word每一页设置不同图片水印
  5. vivo全球商城全球化演进之路——多语言解决方案
  6. css文字超出指定行数显示省略号
  7. Kali网络环境设置
  8. 智能脚本工具(Smart scripts)测试应用
  9. web报表设计器在线制作炫酷图表
  10. 用这个BI工具,不会代码的业务人员也能做数据分析!