• Grafana+Prometheus打造运维监控系统(一)-安装篇


    1. Prometheus、Grafana介绍

    Prometheus是一个开源的系统监控和报警系统,Grafana 是一个开源的监控数据分析和可视化套件,利用Grafana+Prometheus组合,打造运维日常的各种指标监控以及数据可视化。

    2. Prometheus

    2.1 下载

    访问:https://prometheus.io/download/,选择对应版本,下载保存到服务器中。我这里选择的是2022-12-01发布的2.40.5版本
    在这里插入图片描述

    2.2 安装

    解压到/etc/路径下,并重命名文件夹名字为prometheus

    tar zxvf prometheus-2.40.5.linux-amd64.tar.gz -C /etc/
    cd /etc/
    mv prometheus-2.40.5.linux-amd64 prometheus
    
    • 1
    • 2
    • 3

    2.3 注册为系统服务并设置开机自启

    vi /usr/lib/systemd/system/prometheus.service,添加如下内容:

    [Service]
    ExecStart=/etc/prometheus/prometheus --config.file=/etc/prometheus/prometheus.yml
    ExecReload=/bin/kill -HUP $MAINPID
    KillMode=process
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    
    [Unit]
    Description=node_exporter
    After=network.target
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    systemctl daemon-reload  # 重新加载使服务配置文件生效
    systemctl enable prometheus  # 添加开机自启
    systemctl start prometheus  # 启动Prometheus
    
    • 1
    • 2
    • 3

    此时Prometheus已经启动,默认的访问端口是9090
    在这里插入图片描述
    关闭防火墙systemctl stop firewalld.service,浏览器输入虚拟机IP:9090,出现如下页面,代表访问正常。
    在这里插入图片描述

    3. Grafana

    3.1 下载&安装

    访问:https://grafana.com/grafana/download,选择对应版本,下载保存到服务器中。我这里选择的是2022-12-02发布的9.3.1版本,选择自己对应的Linux发行版本,进行安装。

    wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.3.1-1.x86_64.rpm
    sudo rpm -i --nodeps grafana-enterprise-9.3.1-1.x86_64.rpm
    
    • 1
    • 2

    在这里插入图片描述
    安装完成后,执行systemctl start grafana-server.service启动grafana服务,默认监听的是3000端口,可通过修改/etc/grafana/grafana.ini配置文件进行修改。
    在这里插入图片描述
    在这里插入图片描述
    如果想修改端口,取消注释用的;号,并修改3000为你想要的值在这里插入图片描述
    浏览器输入虚拟机IP:3000,出现如下页面,代表访问正常.
    初始账号:admin
    初始密码:admin
    在这里插入图片描述
    验证成功后,会要求你输入新的密码,也可以点击skip选择跳过,我个人为了方便,设置为123456,温馨提示:生产环境请勿使用简单密码哦~!
    在这里插入图片描述
    在这里插入图片描述

    4. 安装节点采集器node_exporter

    node_exporter可以采集服务器的各种指标,比如CPU、内存、磁盘、网络等,形成时序数据。

    4.1 下载

    访问:https://prometheus.io/download/#node_exporter,选择对应版本,下载保存到服务器中
    在这里插入图片描述

    4.2 安装

    解压到/etc/路径下,并重命名文件夹名字为node_exporter

    tar zxvf node_exporter-1.4.0.linux-amd64.tar.gz -C /etc/
    cd /etc/
    mv node_exporter-1.5.0.linux-amd64/ node_exporter
    
    • 1
    • 2
    • 3

    4.3 注册为系统服务并设置开机自启

    vi /usr/lib/systemd/system/prometheus.service,添加如下内容:

    [Service]
    ExecStart=/etc/node_exporter/node_exporter
    ExecReload=/bin/kill -HUP $MAINPID
    KillMode=process
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    
    [Unit]
    Description=node_exporter
    After=network.target
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    systemctl daemon-reload  # 重新加载使服务配置文件生效
    systemctl enable node_exporter.service  # 添加开机自启
    systemctl start node_exporter.service  # 启动
    
    • 1
    • 2
    • 3

    此时node_exporter已经启动,默认的访问端口是9100
    在这里插入图片描述
    浏览器输入虚拟机IP:9090,出现如下页面,代表访问正常。
    在这里插入图片描述

    5. Grafana数据可视化展示

    5.1 添加Prometheus抓取任务

    vi /etc/prometheus/prometheus.yml,添加如下内容:

    - job_name: 'node_exporter'
        static_configs:
          - targets: ["localhost:9100"]
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    5.2 重启Prometheus

    systemctl restart prometheus

    5.3 添加grafana数据源

    左侧导航栏,设置–>Datasouces–>Add data souce
    在这里插入图片描述
    选择Prometheus
    在这里插入图片描述
    URL框输入:http://localhost:9090
    在这里插入图片描述
    Save & test,提示Data souce is working,说明添加数据源成功
    在这里插入图片描述

    5.4 添加仪表盘

    grafana提供了各式各样的仪表盘,除了自己手动创建,我们也可以使用别人已经做好的仪表盘进行导入。
    左侧导航栏,Dashboards–>Import
    在这里插入图片描述
    导入的方式有两种,第一种是本地上传json文件;第二种是从grafana导入,但是要指明对应的仪表盘URL或者ID。这里我们选择第二种方式
    在这里插入图片描述
    访问:https://grafana.com/grafana/dashboards/,选择Collector Types为Node exporter,点击Node Exporter Full进入详情页,得到ID为1860
    在这里插入图片描述
    在这里插入图片描述
    输入1860,点击Load进行加载在这里插入图片描述
    选择数据源为Prometheus,点击Import进行导入。
    在这里插入图片描述
    这样就得到了一个漂亮的可视化仪表盘了,是不是So Easy呀~!
    在这里插入图片描述

  • 相关阅读:
    C++ 池式组件 线程池 内存池 异步请求池 MySQL连接池
    肝爆3w字整理出这50道计算机网络必问面试题
    Decoupled Contrastive Learning 论文解读和感想
    【Linux】自制shell
    docker Centos 7 安装 xfce4 桌面 + x11vnc + novnc
    webpack提升构建速度
    【开发篇】一、热部署
    postman安装使用教程
    挖矿僵尸网络蠕虫病毒kdevtmpfsi处理过程(包含部分pgsql线程池满的情况)
    【uniapp】富文本
  • 原文地址:https://blog.csdn.net/zcm545186061/article/details/128172488