Prometheus普罗米休斯

实施步骤:

  1. 时间同步配置
  2. 下载Prometheus软件包
  3. 启动Prometheus服务
  4. 访问Web管理界面

实验环境:

    设置三台服务器,一台prometheus,一台grafana,和一台docker1

Prometheus快速上手指南

时间同步操作指南

方法一:计划任务方式

  1. 创建定时任务:
*/2 * * * * /sbin/ntpdate ntp1.aliyun.com &>/dev/null

方法二:chrony服务方式

  • 安装chrony:
dnf -y install chrony
  • 配置chrony:
vim /etc/chrony.conf
  • 添加或修改服务器配置:
server [目标IP/域名] iburst

       保存退出(:wq)

  • 启动服务:
systemctl enable chronyd --now
  • 验证同步状态:
chronyc sources

方法三:timedatectl工具

  • 查看时区:
timedatectl
  • 设置时区:
timedatectl set-timezone Asia/Shanghai
  • 查看当前时间:
date
  • 手动修改时间:
date -s "YYYY-MM-DD HH:MM:SS"

个人推荐方法一和方法二

安装prometheus

你可以从Prometheus官网下载安装包,然后上传到服务器进行解压安装

Download | Prometheus      找到合适的安装包进行下载

解压安装包

tar xf 包名
mv 解压后的文件夹移动到 /usr/local/下,名字自己定

启动Prometheus服务

方法一:直接启动

  1. 进入Prometheus安装目录:
    cd /usr/local/prometheus
    
  2. 启动服务:
    ./prometheus
    

方法二:配置systemd服务

  1. 创建服务配置文件:

    cp /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/prometheus.service
    
  2. 编辑服务配置:

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

    添加以下内容:

    [Unit]
    Description=Prometheus Monitoring System
    After=network.target
    
    [Service]
    ExecStart=/usr/local/prometheus/prometheus \
      --config.file=/usr/local/prometheus/prometheus.yml \
      --storage.tsdb.path=/usr/local/prometheus/data/
    
    [Install]
    WantedBy=multi-user.target
    

    保存并退出(:wq

  3. 重新加载服务配置并启动:

    systemctl daemon-reload
    systemctl enable --now prometheus
    

    访问prometheus的web页面

访问你prometheus部署的服务器ip

 显示所有键值

也可以命令行过滤查看

curl -s http://prometheus的ip地址:9090/metrics | grep -v '#' | wc -l

Node Exporter 安装与配置指南

  • node-exporter用于监控硬件和系统的常用指标。
  • exporter运行于被监控端,以服务的形式存在。每个exporter所使用的端口号都不一样。
  • 在被监控节点上部署node exporter。

所有节点配置node_exporter是同理的

第一步:在被监控节点安装 Node Exporter

  1. 从 Prometheus 官网下载合适的安装包
  2. 解压安装包:
    tar xf [package_name]
    
  3. 将解压后的文件夹移动到指定目录:
    mv [extracted_folder] /usr/local/[custom_name]
    

第二步:配置 Systemd 服务

  1. 创建服务配置文件:

    vim /usr/lib/systemd/system/node_exporter.service
    
  2. 添加以下内容:

    [Unit]
    Description=node_exporter service
    After=network.target
    
    [Service]
    ExecStart=/usr/local/node_exporter/node_exporter
    
    [Install]
    WantedBy=multi-user.target
    
  3. 保存并退出编辑器,然后执行:

    systemctl daemon-reload
    systemctl enable node_exporter --now
    

第三步:在 Prometheus 服务器配置监控

方法一、正常配置prometheus服务器端配置文件

  1. 编辑 Prometheus 配置文件:

    vim /usr/local/prometheus/prometheus.yml
    
  2. 添加以下监控任务配置:

vim /usr/local/prometheus/prometheus.yml

#追加内容
- job_name: "node_exporter"     # 定义监控任务名称,标识node_exporter采集任务:ml-citation{ref="1,2" data="citationList"}
  static_configs:               # 静态配置目标列表,适用于固定IP的监控目标:ml-citation{ref="1,5" data="citationList"}
    - targets: ["192.168.88.20:9100"]  # 指定node_exporter服务地址和端口,默认9100:ml-citation{ref="1,2" data="citationList"}

方法二、动态配置prometheus服务器端配置文件

  1.  编辑 Prometheus 配置文件:

    vim /usr/local/prometheus/prometheus.yml
    
  2. 添加以下监控任务配置:

vim /usr/local/prometheus/prometheus.yml

#追加内容
- job_name: "dhcp_node_exporter"    # 任务名称,标识动态DHCP环境的监控任务
  file_sd_configs:                  # 文件服务发现配置,适用于IP不固定的目标
    - targets:                      # 目标定义区块
      - files:                      # 指定发现文件路径
        - /usr/local/prometheus/discovery_node_exporter.json  # JSON格式的服务发现文件
      refresh_interval: 5s          # 文件刷新间隔(默认5分钟,此处设置为5秒高频刷新)
 
            

创建同台加载配置文件

vim /usr/local/prometheus/discovery_node_exporter.json


[
  {
    "targets": [
                  "192.168.88.20:9100",
                  "192.168.88.30:9100"
               ]
  }
]

......
:wq

适用于大量主机添加的时候

Prometheus安装监控小结

  • prometheus通过各种exporter来进行监控客户端。
  • 常用exporter
  1.   node_exporter获取主机的系统监控项。
  2.   其他项目通过各种exporter(docker运行)实现。
  • 以上部分主要讲解的是prometheus服务端的配置(连接客户端)
  1.   prometheus.yml  主配置文件。
  2.   静态配置:state_configs 书写到配置文件,重启prometheus服务端生效。应用场景:适用于固定的服务器监控。
  3.   动态配置:file_sd_configs 配置书写到文件中,prometheus定时加载。应用场景:网站集群经常发生变化。

被监控节点显示页面

--------------------------------------------------------------------------------------

Prometheus过滤语句

基本过滤

  • 获取所有主机可用内存输入

node_memory_MemFree_bytes

  • 加入运算符后

node_memory_MemFree_bytes/1024^2

  •  过滤负载

node_load1

  • 查看所有键值

后续内容不定时更新

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值