• prometheus监控


    介绍

      Prometheus是一个开源监控系统,它前身是SoundCloud的警告工具包。从2012年开始,许多公司和组织开始使用Prometheus。该项目的开发人员和用户社区非常活跃,越来越多的开发人员和用户参与到该项目中。目前它是一个独立的开源项目,且不依赖与任何公司。为了强调这点和明确该项目治理结构,Prometheus在2016年继Kurberntes之后,加入了Cloud Native Computing Foundation。

    安装步骤

    • 安装prometheus,监控服务
    • 安装node-exporter,节点数据收集服务
    • 安装alertmanager,报警服务
    • 安装grafana,图形化展示服务

    一、安装prometheus

    # 下载
    wget https://github.com/prometheus/prometheus/releases/download/v2.12.0/prometheus-2.12.0.linux-amd64.tar.gz
    tar xf prometheus-2.12.0.linux-amd64.tar.gz
    cd prometheus-2.12.0.linux-amd64
    # 根据下面yml配置文件配置需要信息
    vim prometheus.yml
    # 启动
    ./prometheus 
    # 访问prometheus
    http://192.168.1.24:9090

    配置修改:prometheus.yml

    global:
      # 每隔15秒向pushgateway采集一次指标数据
      scrape_interval:    15s 
      # 每隔15秒根据所配置的规则集,进行规则计算
      evaluation_interval: 15s 
    
    alerting:
      alertmanagers:
      - static_configs:
      # 设置altermanager的地址,altermanager报警规则服务
        - targets: ['192.168.1.24:9093']
    
      # 指定所配置报价模板文件,下面给出模板配置
    rule_files:
      - "rules.yml"
    
    scrape_configs:
      # 用于获取被控主机数据,可以添加多条
      - job_name: '测试-25'
        static_configs:
        - targets: ['192.168.1.25:9100']

    使用systemctl管理

    vi  /etc/systemd/system/prometheus.service
    [Unit]
    Description=Prometheus Monitoring System
    Documentation=Prometheus Monitoring System
     
    [Service]
    ExecStart=/usr/local/prometheus/prometheus 
      --config.file=/usr/local/prometheus/prometheus.yml 
      --web.listen-address=:9090
     
    [Install]
    WantedBy=multi-user.target

    二、监控机安装node-exporter

    # 下载
    wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz
    tar xf node_exporter-0.18.1.linux-amd64.tar.gz
    cd node_exporter-0.18.1.linux-amd64
    # 启动
    ./node_exporter
    # 访问
    http://192.168.1.24:9100

    使用systemctl管理

    --collector.systemd 开启system 服务的监控

    vi  /etc/systemd/system/node_exporter.service
    [Unit]
    Description=node_exporter service
    
    [Service]
    ExecStart=/usr/local/node_exporter/node_exporter 
        --collector.systemd 
        --collector.systemd.unit-whitelist=(chronyd|sshd|nginx).service
    
    TimeoutStopSec=10
    Restart=on-failure
    RestartSec=5
    
    [Install]
    WantedBy=multi-user.target

    常用查询

    • cpu使用总量
    node_cpu_seconds_total
    • mode标签值为idle的为空闲
    node_cpu_seconds_total{mode='idle'}
    • 获取5分钟内的CPU平均空闲情况
    avg(irate(node_cpu_seconds_total{mode='idle'}[5m])) by (instance)
    • 获取CPU5分钟内使用率
    100 - (avg(irate(node_cpu_seconds_total{mode='idle'}[5m])) by (instance) *100)
    • 获取空闲内存
    (node_memory_MemFree_bytes+node_memory_Cached_bytes+node_memory_Buffers_bytes)
    • 获取空闲内存率
    (node_memory_MemFree_bytes+node_memory_Cached_bytes+node_memory_Buffers_bytes) / node_memory_MemTotal_bytes * 100
    • 获取内存使用率
    100 - ((node_memory_MemFree_bytes+node_memory_Cached_bytes+node_memory_Buffers_bytes) / node_memory_MemTotal_bytes * 100)
    • 剩余磁盘空间
    node_filesystem_free_bytes
    • 磁盘空间总大小
    node_filesystem_size_bytes
    • 获取磁盘空闲率
    node_filesystem_free_bytes{fstype=~"ext4|xfs",mountpoint="/"} / node_filesystem_size_bytes{fstype=~"ext4|xfs",mountpoint="/"} *100
    • 获取磁盘使用率
    100 - (node_filesystem_free_bytes{fstype=~"ext4|xfs",mountpoint="/"} / node_filesystem_size_bytes{fstype=~"ext4|xfs",mountpoint="/"} *100)
    • 配置node_exporter启动参数
    --collector.systemd --collector.systemd.unit-whitelist=(chronyd|sshd|nginx).service
    • 查询nginx状态
    node_systemd_unit_state{name="nginx.service", state="active"}

    说明:

    存活状态
    node_systemd_unit_state使用这个监控项查看,里面也有很多标签,
    name=“docker.service”,标签name表示服务的名称,
    state=“active”,state表示服务的状态,active表示活动的,对应的监控值也是1,如果为1则表示正常,不为1表示异常


    作者:Outsrkem
    出处:https://www.cnblogs.com/outsrkem/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    Centos 6.8安装配置KVM
    使用明小子进行网页渗透测试-XYCMS企业建站系统2.3(鑫跃教育)
    VSFTP2.3.4(笑脸漏洞)渗透测试
    MS08_067smb漏洞利用渗透测试
    css基本概念与css核心语法介绍
    HTML块级、行级元素,特殊字符,嵌套规则
    网页DIV+CSS布局与ifame传统布局对比
    html基本标签表单实现交互原理,单选框,复选框,下拉框介绍
    HTML基础标签图片文本超链接列表表格介绍
    html网页基本结构
  • 原文地址:https://www.cnblogs.com/outsrkem/p/14402492.html
Copyright © 2020-2023  润新知