相关博文原文地址:

简书:test小星星:使用docker部署prometheus监控系统

Prometheus监控系统(6)使用mysqld_exporter监控MySQL

CSDN:woqutechteam:prometheus监控多个MySQL实例



一、docker部署prometheus监控系统

1.1 配置安装环境

1.1.1 安装prometheus

docker pull prom/prometheus

1.1.2 安装grafana

docker pull grafana/grafana

1.1.3 安装node_exporter

下载node_exporter,然后解压:

tar -xvzf ****.tar.gz

启动:

nohup ./node_exporter >> node_exporter.log 2>&1 &

1.2 运行环境

1.2.1 配置prometheus

vim prometheus-config.yml
# 全局配置
global:
scrape_interval: 15s
evaluation_interval: 15s scrape_configs:
# 监控prometheus本身
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
# 通过node_exporter将监控数据传给prometheus,如果要监控多台服务器,只要在每个服务器上安装node_exporter,指定不同多ip地址就好了
- job_name: 'node_exporter'
static_configs:
- targets: ['localhost:9100']
# 监控mysql
- job_name: 'mysql'
static_configs:
- targets: ['localhost:9104']

1.2.2 启动 prometheus

docker run --name prometheus -d -p 9090:9090 \
-v /root/prometheus/prometheus-config.yml:/etc/prometheus/prometheus.yml \
prom/prometheus --config.file=/etc/prometheus/prometheus.yml

1.2.3启动 grafana

docker run --name grafana -d -p 3000:3000 grafana/grafana

在浏览器中输入:服务器ip地址:3000进入到Grafana界面。

添加监控数据源选择 prometheus。

输入prometheus的访问地址,并保存。注意不能使用localhost。


这个地方注意踩坑,prometheus.yml的配置文件,Ip尽量不要写localhost,写ip地址。

二、Prometheus使用mysqld_exporter监控MySQL

2.1官网下载mysqld_exporter并进行解压

2.2登录MySQL为exporter创建一个用户并进行授权(我直接使用root进行操作了,有风险,尽量不要使用)

CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX' WITH MAX_USER_CONNECTIONS 3;

GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';

2.3配置mysql_exporter

vi /usr/local/mysqld_exporter/my.cnf
[client]
host=192.168.21.xx
port=3306
user=exporter #这里的用户就是第二步设置的用户
password=123456

2.4启动mysqld_exporter,默认监听在9104端口

/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/my.cnf

2.4.1 通过Docker启动mysqld_exporter

docker run -d  --restart=always  --name mysqld-exporter -p 9104:9104   -e DATA_SOURCE_NAME="user:password@(hostname:port)/"   prom/mysqld-exporter

docker run -d  --restart=always  --name mysqld-exporter -p 9104:9104   -e DATA_SOURCE_NAME="exporter:123456@(192.168.1.82:3306)/"   prom/mysqld-exporter

要查看容器是否报错, 主要是验证exporter与mysql服务端之间正常连接和获取数据;
docker logs -f mysqld-exporter 看有没有报错

2.5为mysqld_exporter创建一个启动脚本,内容如下(可做可不做)

[Unit]
Description=mysqld_exporter [Service]
Type=simple
Restart=on-failure
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/my.cnf [Install]
WantedBy=multi-user.target

2.6使用systemctl管理mysqld_exporter

systemctl daemon-reload
systemctl start mysqld_exporter.service

使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql的更多相关文章

  1. Spring Boot Metrics监控之Prometheus&Grafana(转)

    欢迎来到Spring Boot Actuator教程系列的第二部分.在第一部分中,你学习到了spring-boot-actuator模块做了什么,如何配置spring boot应用以及如何与各样的ac ...

  2. 开源监控系统Prometheus介绍

    前言 Prometheus是CNCF的一个开源项目,Google BorgMon监控系统的开源版本,是一个系统和服务的监控系统.周期性采集metrics指标,匹配规则和展示结果,以及触发某些条件的告警 ...

  3. 【原创】运维基础之Docker(2)通过docker部署zookeeper nginx tomcat redis kibana/elasticsearch/logstash mysql kafka mesos/marathon

    通过docker可以从头开始构建集群,也可以将现有集群(配置以及数据)平滑的迁移到docker部署: 1 docker部署zookeeper # usermod -G docker zookeeper ...

  4. Azkaban2.5安装部署(系统时区设置 + 安装和配置mysql + Azkaban Web Server 安装 + Azkaban Executor Server安装 + Azkaban web server插件安装 + Azkaban Executor Server 插件安装)(博主推荐)(五)

    Azkaban是什么?(一) Azkaban的功能特点(二) Azkaban的架构(三) Hadoop工作流引擎之Azkaban与Oozie对比(四) 不多说,直接上干货! http://www.cn ...

  5. asp.net core全局异常过滤并监控系统BUG将异常信息记录到日志

    添加: using Dw.Util.Helper; using Microsoft.AspNetCore.Mvc.Filters; using System; using System.Collect ...

  6. 监控实战Prometheus+Grafana

    这期的分享是监控实战,其实不想写这篇的,因为网上相关的文章也挺多的,但是出于光说不练都是假把式,而且也想告诉你:当帅气的普罗米修斯(Prometheus)遇到高颜值的格拉法纳(Grafana)究竟会擦 ...

  7. 机房ping监控 smokeping+prometheus+grafana

    一.前言 1.本监控方案主要由smokeping+promethues+grafana组成.smokeping主要数据采集,promethues作为数据存储,grafana数据展示 2.其实smoke ...

  8. 机房ping监控 smokeping+prometheus+grafana(续) 自动获取各省省会可用IP

    一.前言 1.之前的文章中介绍了如何使用smokeping监控全国各省的网络情况:https://www.cnblogs.com/MrVolleyball/p/10062231.html 2.由于之前 ...

  9. 【k8s 硬盘监控】prometheus grafana

    设置监控哪块盘: https://www.bountysource.com/issues/50160777-disk-space-usage-depcited-in-grafana-correct h ...

随机推荐

  1. 变量提升(hoisting)

    JavaScript的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行.这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升(hoisting). con ...

  2. Liunx运维(九)-Liunx进程管理命令

    文档目录: 一.ps:查看进程 二.pstree:查看进程状态树 三.pgrep:查找匹配条件的进程 四.kill:终止进程 五.killall:通过进程名终止进程 六.pkill:通过进程名种植进程 ...

  3. ShareSdk自己写的Demo

    安卓原生Demo 根据mob发布的ShareSdk编写的demo,只添加了自己使用到的一些平台. 签名和第三方平台的账号都是用的shareSdk官方Demo的. 因为只是为了展示shareSdk用法, ...

  4. Kubernetes官方java客户端之四:内部应用

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  5. 一键配置网卡IP(win10)脚本

    前两天有个小伙伴问我,如何快速配置IP,在公司在家里在宿舍,快速配置IP,然后我特别为这个小伙伴写了一个脚本. @echo off mode con: cols=60 lines=25 title 网 ...

  6. IE浏览器F12无法使用

    原文链接http://zhhll.icu/2020/04/07/windows/IE%E6%B5%8F%E8%A7%88%E5%99%A8F12%E6%97%A0%E6%B3%95%E4%BD%BF% ...

  7. Django(投票程序)

    Django是一个web框架,python编写的. MTV模式 Django的MTV模式本质上和MVC是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同 -M代表模型(Model ):负责 ...

  8. 【JavaWeb】EL 表达式

    EL 表达式 简介 EL(Expression Language),即表达式语言. EL 表达式主要是代替 jsp 页面中 表达式脚本 在 jsp 页面中进行数据的输出,因为 EL 表达式在输出数据的 ...

  9. 【C++】《C++ Primer 》第十一章

    第十一章 关联容器 关联容器和顺序容器的不同:关联容器中的元素时按照关键字来保存和访问的. 关联容器支持通过关键字来高效地查找和读取元素,基本的关联容器类型是 map和 set. 类型 map 和 m ...

  10. 详细的String源码解析

    我们常常把String类型的字符串作为HashMap的key,为什么要这样做呢? 因为String是不可变的,一旦初始化就不再改变了,如果被修改将会是一个新对象. @Test public void ...