相关博文原文地址:

简书: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. 表单绑定v-model

    表单控件在实际开发中是极为常见的.特别是对于用户信息的提交,需要大量的表单.Vue中使用v-model指令来实现表单元素和数据的双向绑定.此篇记录下其原理,以及当时学习时候的一些小尝试以及修饰符. v ...

  2. reactor模式前序:传统IO的WEB服务器设计

    先看一段经典的WEB JAVA服务器设计 JAVA代码为(伪代码) 1 ServerSocket serverSocket = ...; 2 serverSocket.bind(8899); 3 4 ...

  3. Oracle-序列-存储过程-视图-索引-触发器

    课程介绍 1. 约束(掌握) 2. 序列(掌握) 3. 索引(掌握) 4. 视图(掌握) 5. 存储过程(掌握) 6. 自定义函数(掌握) 7. 触发器(掌握) 数据库对象的命名规则 1.对象名称必须 ...

  4. js 中的 DOM 和 BOM

    BOM浏览器对象模型   概念:Browser Object Model   组成:   Window:浏览器窗口对象   Navigator:浏览器对象   screen:显示器屏幕对象   His ...

  5. Mybatis-plus的使用步骤

    Mybatis-plus的简单使用步骤 花开堪折直需折,莫待无花空折枝 导入依赖 <dependency> <groupId>org.projectlombok</gro ...

  6. WPF ToolTip 绑定

    Tool绑定: 绑定到ComboBox的SelectValue <ComboBox Name="cmb_WHSCD" VerticalAlignment="Cent ...

  7. CODING x 腾讯兔小巢,打破研发团队与用户反馈的最后一道壁垒

    任何产品的更新迭代都离不开用户的使用反馈.产品经理日常需要奔走到一线部门了解用户的使用反馈:一线运营或业务团队日常需要向产品经理转述用户的问题场景及催促需求的进度.中间需要消耗大量的精力来进行信息转达 ...

  8. Docker学习笔记之进入容器Bash

    我们在创建容器的时候,如果容器的命令(command)不是/bin/bash的时候,使用docker attach命令是会卡住进不去容器的bash shell的.如下图所示: 所以,这里记录一个可以进 ...

  9. Python找对称数——纪念第一次自主编写代码

    2021-01-17 题目: [问题描述]已知10个四位数输出所有对称数及个数 n,例如1221.2332都是对称数[输入形式]10个四位数,以空格分隔开[输出形式]输入的四位数中的所有对称数,对称数 ...

  10. 断言封装之key检查及kv实战示例

    ️️️️️️️️️️️️️️️️️️️️️️️️️️️️️ 测试: 断言处理: demo_04.pyimport jsonjson_obj = {"access_token":&q ...