zoukankan      html  css  js  c++  java
  • Prometheus 安装与配置

    一、二进制包安装

    我们可以到 Prometheus 二进制安装包下载页面,根据自己的操作系统选择下载对应的安装包。下面我们将以 Amazon Linux 2 作为演示。

    我们以现在的时间为准,下载最新版本 v2.17.1

    1.1、下载 Prometheus Server

    wget https://github.com/prometheus/prometheus/releases/download/v2.17.1/prometheus-2.17.1.linux-amd64.tar.gz
    
    tar xf prometheus-2.17.1.linux-amd64.tar.gz
    mv prometheus-2.17.1.linux-amd64/prometheus /usr/local/bin/
     

    1.2、配置启动文件

    因为是生产环境,我们为其配置启动文件。

    vim /etc/systemd/system/prometheus.service
    [Unit]
    Description=Prometheus Server
    After=network.target
    Documentation=https://prometheus.io/docs/introduction/overview/
    
    [Service]
    Type=simple
    WorkingDirectory=/home/data/prometheus/
    ExecStart=/usr/local/bin/prometheus 
      --config.file=/etc/prometheus/prometheus.yml 
      --web.read-timeout=5m 
      --web.max-connections=512 
      --storage.tsdb.retention=15d 
      --storage.tsdb.path=/home/data/prometheus 
      --query.timeout=2m
    
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
     

    1.3、配置文件

    Prometheus 通过在目标节点的 HTTP 端口上采集 metrics(遥测专用词,度量指标)来监控目标节点(以下会称为“采样目标”)。因为 Prometheus 也以相同的方式暴露自己的数据,所以他也可以采集和检查自己的健康状况。

    我们把配置文件转移到标准目录/etc/prometheus/

    mkdir /etc/prometheus
    mv prometheus-2.17.1.linux-amd64/prometheus.yml /etc/prometheus
     
     

    初始的配置文件比较简单,如下,自带了一个 job,来监控 prometheus server 的状态。

    global:
      scrape_interval:     15s 
      evaluation_interval: 15s
    
    alerting:
      alertmanagers:
      - static_configs:
        - targets:
    
    rule_files:
    
    scrape_configs:
      - job_name: 'prometheus'
        static_configs:
          - targets: ['localhost:9090']
     

    1.4、启动

    systemctl daemon-reload
    systemctl start prometheus
    systemctl enable prometheus

    1.5、查看

    启动好之后,prometheus 服务会监听在端口 9090,我们使用 IP + Port,即可查看 prometheus 简单的图像界面:

    image-20200410205833898

    1. 可以看出 Prometheus 二进制安装非常方便,没有依赖,自带查询 web 界面。
    2. 在生产环境中,我们可以将 Prometheus 添加到 init 配置里,或者使用 supervisord 作为服务自启动。

    二、Docker 安装

    首先确保你已安装了最新版本的 Docker, 如果没有安装请点击这里

    下面我将以 Mac 版本的 Docker 作为演示。

    2.1、安装

    docker run 
        -p 9090:9090 
        -v /etc/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml 
        prom/prometheus
     

    2.2、Docker 管理 prometheus

    运行 docker ps 查看所有服务:

    CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS              PORTS                      NAMES
    e9ebc2435387        quay.io/prometheus/prometheus   "/bin/prometheus -..."   26 minutes ago      Up 26 minutes       0.0.0.0:9090->9090/tcp   prometheus
     

    运行 docker start prometheus 启动服务

    运行 docker stats prometheus 查看 prometheus 状态

    运行 docker stop prometheus 停止服务

    三、node_export 安装

    node_exporter 主要用于 *NIX 系统监控, 用 Golang 编写。

    3.1、二进制安装

    下载地址:https://prometheus.io/download/

    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
    
    mv node_exporter-0.18.1.linux-amd64/node_exporter /usr/local/bin/
     

    3.2、配置启动文件

    vim /etc/systemd/system/node_export.service
     
    [Unit]
    Description=Node Export
    After=network.target
    Documentation=https://prometheus.io/docs/guides/node-exporter/
    
    [Service]
    Type=simple
    WorkingDirectory=/tmp/
    ExecStart=/usr/local/bin/node_exporter 
    
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
     
    systemctl daemon-reload
    systemctl start node_export
    systemctl enable node_export
     
     

    3.3、加入监控

    我们手动加入 prometheus 监控,修改其配置文件,再尾部增加如下内容:

      - job_name: 'node_export'
        static_configs:
          - targets: 
            - localhost:9100
            - web1:9100
            - web2:9100
            - web3:9100
            - web4:9100
     
     

    prometheus 服务器需要可以解析这些地址,我们可以修改其 /etc/hosts 文件。

    3.4、Docker安装

    docker run -d 
      --net="host" 
      --pid="host" 
      -v "/:/host:ro,rslave" 
      quay.io/prometheus/node-exporter 
      --path.rootfs=/host
     

    四、grafana rpm 安装

    4.1、下载

    下载地址:https://grafana.com/grafana/download

    我推荐使用 rpm 包进行安装,这样很多依赖可以自动解决,而且也配置好了启动脚本。

    wget https://dl.grafana.com/oss/release/grafana-6.7.2-1.x86_64.rpm
    sudo yum install grafana-6.7.2-1.x86_64.rpm
     

    4.2、启动

    systemctl enable grafana-server
    systemctl start grafana-server
     

    4.3、访问

    访问 IP + Port,grafana 默认的启动 port 是 3000,初始账号和密码都是 admin,下面是登陆之后的界面,我这里截图是已经配置好数据源的。

    image-20200410235820764

    4.4、配置数据源

    grafana 支持的数据源非常多,我们这里选择 prometheus。

    image-20200410235935430

    因为我们的 grafana 和 prometheus 在同一台机器上面,地址填写 localhost:9090 即可。

    image-20200411000041835

    4.5、导入模板

    开始我们可能不会制作模板,我们先导入一个模板,只需要输入其编号即可。更多的官方 Dashboard 请参见:

    https://grafana.com/grafana/dashboards?orderBy=name&direction=asc

    image-20200411000223078

    4.6、查看效果

    image-20200411000413028

  • 相关阅读:
    Java实现 蓝桥杯 算法提高 小X的购物计划
    Java实现 蓝桥杯 算法提高 小X的购物计划
    Java实现 第十一届 蓝桥杯 (高职专科组)省内模拟赛
    Java实现 第十一届 蓝桥杯 (高职专科组)省内模拟赛
    Java实现 第十一届 蓝桥杯 (高职专科组)省内模拟赛
    Java 第十一届 蓝桥杯 省模拟赛 小明的城堡
    Java 第十一届 蓝桥杯 省模拟赛 小明的城堡
    Java 第十一届 蓝桥杯 省模拟赛 小明的城堡
    129. Sum Root to Leaf Numbers
    117. Populating Next Right Pointers in Each Node II
  • 原文地址:https://www.cnblogs.com/A121/p/14969431.html
Copyright © 2011-2022 走看看