潜力的监控mysql_Grafana 数据库监控平台

Grafana 数据库监控平台

简介

Grafana

demo 地址:官方demo

文档可以下载pdf离线阅读

Percona监控和管理(PMM)是一个用于管理和监控MySQL和MongoDB性能的开源平台。它由Percona与托管数据库服务,支持和咨询领域的专家合作开发。

PMM是一种免费的开源解决方案,您可以在自己的环境中运行,以获得最大的安全性和可靠性。它为MySQL和MongoDB服务器提供全面的基于时间的分析,以确保您的数据尽可能高效地工作。

系统架构

PMM平台基于客户端 - 服务器模型,实现可伸缩性。它包括以下模块:

PMM客户端安装在要监视的每个数据库主机上。它收集服务器指标,常规系统指标和查询分析数据,以获得完整的性能概述。

PMM Server是PMM的核心部分,它聚合收集的数据并以Web界面中的表格,仪表板和图形的形式呈现。

这些模块的封装便于安装和使用。假设用户不需要了解构成每个模块的确切工具以及它们如何交互。但是,如果您想充分发挥PMM的潜力,内部结构非常重要。

PMM是一系列旨在无缝协同工作的工具。有些是由Percona开发的,有些是第三方开源工具。

注意

整体客户端 - 服务器模型不太可能改变,但组成每个组件的工具集可能随产品而变化。

下图说明了PMM当前的结构:

20bdb7fbe350?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image

PMM服务端安装

pmm服务器安装有多种方式。官方安装介绍

本文主要介绍docker的安装方式

docker 镜像下载

$ docker pull percona/pmm-server:latest

创建pmm-data 容器

创建一个持久化的 pmm 数据容器

docker create \

-v /opt/prometheus/data \

-v /opt/consul-data \

-v /var/lib/mysql \

-v /var/lib/grafana \

--name pmm-data \

percona/pmm-server:latest /bin/true

docker create 参数说明:

The docker create command instructs the Docker daemon to create a container from an image.

The -v options initialize data volumes for the container.

The --name option assigns a custom name for the container that you can use to reference the container within a Docker network. In this case: pmm-data.

percona/pmm-server:latest is the name and version tag of the image to derive the container from.

/bin/true is the command that the container runs.

Note

这个容器不会运行,他的存在仅仅是保留PMM的数据,当你升级到一个新的PMM版本的时候。不要删除、重新创建这个容器,除非你想要删除所有的PMM数据。

创建PMM服务容器并启动

官网提供的创建方式

$ docker run -d \

-p 80:80 \

--volumes-from pmm-data \

--name pmm-server \

--restart always \

percona/pmm-server:latest

docker run参数说明:

The -d option starts the container in the background (detached mode).

The -p option maps the port for accessing the PMM Server web UI. For example, if port 80 is not available, you can map the landing page to port 8080 using -p 8080:80.

The -v option mounts volumes from the pmm-data container (see Creating the pmm-data Container).

The --name option assigns a custom name to the container that you can use to reference the container within the Docker network. In this case: pmm-server.

The --restart option defines the container’s restart policy. Setting it to always ensures that the Docker daemon will start the container on startup and restart it if the container exits.

percona/pmm-server:latest is the name and version tag of the image to derive the container from.

我们在基础配置上,添加用户名密码的配置信息:

$ docker run -d \

-p 80:80 \

--volumes-from pmm-data \

--name pmm-server \

--restart always \

-e SERVER_USER=test \

-e SERVER_PASSWORD=test \

-e ORCHESTRATOR_ENABLED=true \

percona/pmm-server:latest

新建PMM的客户端

安装Percona的软件仓库

sudo yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm

验证安装结果

sudo yum list | grep percona

结果如下:

percona-release.noarch 0.1-6 @/percona-release-0.1-6.noarch

Percona-Server-55-debuginfo.x86_64 5.5.54-rel38.7.el7 percona-release-x86_64

Percona-Server-56-debuginfo.x86_64 5.6.35-rel81.0.el7 percona-release-x86_64

Percona-Server-57-debuginfo.x86_64 5.7.17-13.1.el7 percona-release-x86_64

...

安装客户端

sudo yum install pmm-client

PMM的客户端配置

pmm客户端的 配置命令是pmm-admin

一般步骤为

配置客户端到服务器的连接信息

将需要监控的内容加入到监控列表

客户端与服务端连接配置

pmm-admin config --server 192.168.0.157:80 --server-user test --server-password test

配置服务端的网络信息,用户名,密码。

Note

执行后会生成配置文件,配置文件的默认路径为 /usr/local/percona/pmm-client/pmm.yml

配置好后可以使用以下命令查看连接信息

配置信息

# pmm-admin info

pmm-admin 1.13.0

PMM Server | 192.168.0.157:80 (password-protected)

Client Name | 192.168.0.156

Client Address | 192.168.0.156

Service Manager | linux-systemd

Go Version | 1.10.1

Runtime Info | linux/amd64

2.网络连接信息

# pmm-admin check-network

PMM Network Status

Server Address | 192.168.0.157:80

Client Address | 192.168.0.156

* System Time

NTP Server (0.pool.ntp.org) | 2018-08-16 09:17:22 +0000 UTC

PMM Server | 2018-08-16 09:17:20 +0000 GMT

PMM Client | 2018-08-16 17:17:22 +0800 CST

PMM Server Time Drift | OK

PMM Client Time Drift | OK

PMM Client to PMM Server Time Drift | OK

* Connection: Client --> Server

-------------------- -------

SERVER SERVICE STATUS

-------------------- -------

Consul API OK

Prometheus API OK

Query Analytics API OK

Connection duration | 617.745µs

Request duration | -207.451µs

Full round trip | 410.294µs

* Connection: Client

-------------- -------------- -------------------- ------- ---------- ---------

SERVICE TYPE NAME REMOTE ENDPOINT STATUS HTTPS/TLS PASSWORD

-------------- -------------- -------------------- ------- ---------- ---------

linux:metrics 192.168.0.156 192.168.0.156:42000 OK YES YES

mysql:metrics 192.168.0.156 192.168.0.156:42002 OK YES YES

mysql数据配置

grafana收集mysql的信息方式的配置需要针对mysql的版本

mysql5.5 之后增加 performance_schema。mysql开启performance_schema后grafana可以直接获取信息。MySQL 5.6.9之后的版本默认开启,之前的版本需要手动开启。

mysql5.5之前的mysql版本可以通过slow-log获取慢查询的信息。

Note

本节主要介绍使用performance_schema的方式,即 mysql5.5之后版本的数据库监控。

mysql5.5之前版本的数据库监控,见下一节。

创建pmm数据库账号

GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD ON *.* TO pmm@'%' IDENTIFIED BY 'pmm' WITH MAX_USER_CONNECTIONS 10;

GRANT SELECT, UPDATE, DELETE, DROP ON performance_schema.* TO 'pmm'@'%';

flush privileges;

查看数据的关键参数

mysql> SHOW VARIABLES LIKE 'performance_schema';

+--------------------+-------+

| Variable_name | Value |

+--------------------+-------+

| performance_schema | ON |

+--------------------+-------+

mysql> select * from setup_consumers;

+----------------------------------+---------+

| NAME | ENABLED |

+----------------------------------+---------+

| events_stages_current | NO |

| events_stages_history | NO |

| events_stages_history_long | NO |

| events_statements_current | YES |

| events_statements_history | YES |

| events_statements_history_long | NO |

| events_transactions_current | NO |

| events_transactions_history | NO |

| events_transactions_history_long | NO |

| events_waits_current | NO |

| events_waits_history | NO |

| events_waits_history_long | NO |

| global_instrumentation | YES |

| thread_instrumentation | YES |

| statements_digest | YES |

+----------------------------------+---------+

15 rows in set (0.00 sec)

确保 statements_digest是 开启的

如果以上关键参数没有开启就需要修改配置文件

mysql配置文件修改

Percona Server(or XtraDB Cluster)

log_output=file

slow_query_log=ON

long_query_time=0

log_slow_rate_limit=100

log_slow_rate_type=query

log_slow_verbosity=full

log_slow_admin_statements=ON

log_slow_slave_statements=ON

slow_query_log_always_write_time=1

slow_query_log_use_global_control=all

innodb_monitor_enable=all

userstat=1

MySQL 5.6+ or MariaDB 10.0+

innodb_monitor_enable=all

performance_schema=ON

MySQL 5.5 or MariaDB 5.5

log_output=file

slow_query_log=ON

long_query_time=0

log_slow_admin_statements=ON

log_slow_slave_statements=ON

mysql5.5之前版本的配置

mysql 5.5之前的版本是通过慢查询文件进行查询语句的查看,所以需要配置慢查询

slow_query_log

long_query_time = 3

PMM客户端添加数据库

performance_schema方式

pmm-admin add mysql --user pmm --password pmm --socket /application/mysql3307/logs/mysql.sock --query-source perfschema

慢查询的方式

pmm-admin add mysql --user pmm --password pmm --socket /application/mysql3307/logs/mysql.sock

参考文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/270572.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PC软件:推荐七款Windows下宝藏软件

目录 一、uTools 效率神器 二、Groupy 窗口切换神器 三、Revo Uninstaller 卸载神器 四、Universal Viewer 五、VectorMagic 六、QuickLook 文件预览神器 七、Bandizip 压缩神器 今天给大家推荐七款Windows下软件,每一个都值得拥有。 一、uTools 效率神器 一个可以帮…

Linux计划任务(at,crontab)

在LINUX中,我们通过crontab和at这两个东西来实现 at:它是一个可以处理仅执行一次就结束的指令 crontab:它是会把你指定的工作或任务,比如:脚本等,按照你设定的周期一直循环执行下去 1.at计划任务的使用 语…

硬件:笔记本电脑7大分类总结,看完你就明白了

目录 游戏本 超极本 轻薄本 学生本 商务本 二合一电脑 上网本 今天给大家分享笔记本电脑7大场景分类,看完你就明白了! 游戏本 游戏本最早由外星人和微星推出,在90年代就引起了众多游戏玩家的热捧。目前游戏本在笔记本电脑市场可谓是超级火爆&…

网路知识:为什么宽带越用越慢,看完你就明白了

目录 一、办理宽带的时候要问清楚宽带是不是独享的! 二、定期重启路由器 三、定期检修宽带线路 四、出口光猫或路由器的问题 每个家庭都有安装宽带,但是仍然有不少人不知道宽带的基本常识,今天和大家一起来聊一聊。 首先宽带,是一…

设计模式---------门面模式

1.概念 提供一个统一的接口去访问多个子系统的多个不同的接口,它为子系统中的一组接口提供一个统一的高层接口。使用子系统更容易使用。 本质:就是化零为整;引入一个中介类,把各个分散的功能组合成一个整体,只对外暴…

电脑技巧:推荐五款超级好用的电脑小众软件

目录 1、HoneyView 看图神器 2、PeaZip 压缩软件 3、Sandbox 沙盘工具 4、Seer 预览神器 5、flux 护眼神器 今天给大家推荐五款超级好用的电脑小众软件,希望对大家能够有所帮助! 1、HoneyView 看图神器 HoneyView 看图软件,打开速度非常快&am…

java math round小数_Java——Math的round方法

代码如下,后面的注释是输出的结果public static voidmain(String[] args) {System.out.println(Math.round(0.399));//0System.out.println(Math.round(0.4));//0System.out.println(Math.round(0.41));//0System.out.println(Math.round(0.499));//0System.out.pri…

电脑软件:9款超级实用的办公软件

目录 一、Quicker 二、Eagle 三、FSCapture 四、图说 五、Lively Wallpaper 六、爱奇艺万能联播 七、Fliqlo 八、Folder Painter 九、7Zip 今天给大家分享9款超级实用的办公软件,值得收藏! 一、Quicker 作为全网好评的这款国产软件,可以秒杀很…

20145231 《信息安全系统设计基础》期中总结

20145231 《信息安全系统设计基础》期中总结 教材学习内容复习 结合课本知识及再次实践加深理解记忆 按照学习时相关重点知识的顺序进行整理归纳 实践内容:重要命令的使用 gdb调试栈帧(再理解) makefile 编译运行代码深入理解局部性 Linux中的…

资源分享:分享5个冷门而超级实用的在线网站

目录 1、网站配色-Adobe color 1、YYDS电影 3、蓝调music 4、在线艺术图库 5、全景看世界 AirPano 1、网站配色-Adobe color 网站:https://color.adobe.com/zh/ 只需要在网上找到一张有你喜欢的颜色的任意图片或者照片,拖入网页,Adobe Color …

常用插件:分享12款超级好用的 Chrome 插件

1、dblock Plus:免除广告困扰你是不是每次搜索百度前几个都是广告?有了它,你的搜索结果只有纯净。2. 监听网络请求插件simple-extension插件让每个网站都可以保存/切换Cookies、切换User-Agent,简单地监听网络请求。地址&#xff…

IrregularGridCollectionView处理不定宽度的标签cell

IrregularGridCollectionView处理不定宽度的标签cell 效果 源码 https://github.com/YouXianMing/UI-Component-Collection 中的 IrregularGridCollectionView // // IrregularGridCollectionView.h // IrregularGridCollectionView // // Created by YouXianMing on 16/8/3…

服务端负载均衡和客户端负载均衡

服务端负载均衡 用户在App访问通过80端口请求nginx,ngin来实现负载均衡,分发请求 客户端负载均衡 Eureka Server注册中心集群部署,goods_services服务提供者启动后向Eureka Server注册中心进行服务注册 App服务从Eureka Server发现服务 goods_servic…

java上传和下载文件代码_JavaWeb中上传和下载文件实例代码

一丶先引入上传下载的lib二丶上传的的servletpackage com.test.action;import java.io.file;import java.io.fileoutputstream;import java.io.ioexception;import java.io.inputstream;import java.io.outputstream;import java.util.list;import javax.servlet.servletexcept…

操作系统:Linux 环境变量配置的 6 种方法

目录 Linux环境变量配置 Linux读取环境变量 Linux环境变量配置方法一:export PATH Linux环境变量配置方法二:vim ~/.bashrc Linux环境变量配置方法三:vim ~/.bash_profile Linux环境变量配置方法四:vim /etc/bashrc Linux环境变量…