zoukankan      html  css  js  c++  java
  • prometheus + grafana安装部署(centos6.8)

    官方网址:https://prometheus.io/

    GitHub网址:https://github.com/prometheus/prometheus

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

    第三方中文介绍:https://github.com/1046102779/prometheus

    prometheus介绍

           Prometheus是一个开源的系统监控和报警的工具包,最初由SoundCloud发布。

    特点:

    • 多维数据模型(有metric名称和键值对确定的时间序列)
    • 灵活的查询语言
    • 不依赖分布式存储
    • 通过pull方式采集时间序列,通过http协议传输
    • 支持通过中介网关的push时间序列的方式
    • 监控数据通过服务或者静态配置来发现
    • 支持图表和dashboard等多种方式

    组件:

    • Prometheus 主程序,主要是负责存储、抓取、聚合、查询方面。
    • Alertmanager 程序,主要是负责实现报警功能。
    • Pushgateway 程序,主要是实现接收由Client push过来的指标数据,在指定的时间间隔,由主程序来抓取。
    • *_exporter 这类是不同系统已经实现了的集成。

    架构:

    prometheus部署

    1、下载安装包prometheus-1.6.2.linux-amd64.tar.gz

    https://github.com/prometheus/prometheus/releases/tag/v1.6.2

    2、解压

    tar -xvf prometheus-1.6.2.linux-amd64.tar.gz
    cd prometheus-1.6.2.linux-amd64
    

    3、配置prometheus.yml 

    • scrape_interval: 15s   # 默认15秒到目标处抓取数据

    4、启动

    nohup ./prometheus -config.file=prometheus.yml &
    或
    nohup /opt/prometheus-1.6.2.linux-amd64/prometheus &
    

    5、WEB页面访问http://localhost:9090/ ,可以看到Prometheus的graph页面。

    备注:参考文章 http://www.cnblogs.com/vovlie/p/Prometheus_install.html

    grafana部署

    http://docs.grafana.org/installation/rpm/

    1、安装

    wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.2.0-1.x86_64.rpm
    sudo yum install initscripts fontconfig -y
    sudo rpm -Uvh grafana-4.2.0-1.x86_64.rpm
    

    2、启动服务service grafana-server start

    3、访问页面http://localhost:3000 ,默认账号、密码admin/admin

    4、Prometheus 和 Grafana 的对接

    https://prometheus.io/docs/visualization/grafana/

    参考文章:http://www.cnblogs.com/sfnz/p/6566951.html

    MySQL的dashboards(Grafana)

    https://github.com/percona/grafana-dashboards

    git clone https://github.com/percona/grafana-dashboards.git
    cp -r grafana-dashboards/dashboards /var/lib/grafana/dashboards

    编辑Grafana配置文件

    vi /etc/grafana/grafana.ini
    [dashboards.json]
    enabled = true
    path = /var/lib/grafana/dashboards
    

    重启service grafana-server restart

    mysql监控部署

    在需要监控的mysql上安装 node_exporter和 mysqld_exporter

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

    tar -xvf node_exporter-0.14.0.linux-amd64.tar.gz
    cd node_exporter-0.14.0.linux-amd64
    nohup ./node_exporter &
    
    tar -xvf mysqld_exporter-0.10.0.linux-amd64.tar.gz
    cd mysqld_exporter-0.10.0.linux-amd64
    
    vi .my.cnf
    [client]
    user=root
    password=root
    
    ./mysqld_exporter -config.my-cnf=".my.cnf" &
    

    服务端配置,文件prometheus.yml

    scrape_configs:
      - job_name: 'prometheus'
        static_configs:
          - targets: ['localhost:9090']
    
      - job_name: 'mysql'
        static_configs:
          - targets: ['10.10.83.162:9104']
            labels:
              instance: db-10.10.83.162
    

    redis监控部署

    下载 https://github.com/oliver006/redis_exporter/releases

    tar -xvf redis_exporter-v0.11.linux-amd64.tar.gz
    nohup /opt/redis_exporter -redis.addr "redis://10.10.83.162:16379" &
    

    grafana配置

    下载 redis_exporter-0.11.tar.gz

    tar -xvf redis_exporter-0.11.tar.gz
    cd redis_exporter-0.11 
    cp *json /var/lib/grafana/dashboards/

    服务端配置,文件prometheus.yml

    scrape_configs:
      # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
      - job_name: 'prometheus'
    
        # metrics_path defaults to '/metrics'
        # scheme defaults to 'http'.
    
        static_configs:
          - targets: ['localhost:9090']
    
      - job_name: 'mysql'
        static_configs:
          - targets: ['10.10.83.162:9104']
            labels:
              instance: db-10.10.83.162
    
      - job_name: redis_exporter
        static_configs:
          - targets: ['10.10.83.162:9121']
            labels:
              instance: redis-10.10.83.162
    
  • 相关阅读:
    python高级编程
    django笔记
    sublime ide
    python3 django mysql
    python win
    linux时区设置
    在实际应用中如何实现切圆角的功能
    display和visiblity在应用中使用哪个好
    看懂UML类图和时序图
    解决Xcode7.2真机调试出现:The account “” has no team with ID “”
  • 原文地址:https://www.cnblogs.com/shhnwangjian/p/6878199.html
Copyright © 2011-2022 走看看