Docker部署Grafana+Promethus监控Mysql和服务器

一、Grafana部署所需资源

Grafana 需要最少的系统资源:

  • 建议的最小内存:512 MB
  • 建议的最低 CPU:1

官方文档:https://grafana.com/docs/grafana/latest/getting-started/build-first-dashboard/

可以看到,我的这台服务器,部署了Grafana+Promethus,已经占了1个G左右的内存。
image.png
这是另一台被监控的服务器,部署了Mysql、Node-Exporter、Mysql-Export,占了1个多G的内存。
image.png
以上,就是给大家一个资源评估的建议,接下来我们对这两台服务器称为A服务器、B服务器,整个服务的部署以及数据流通如下图所示:

二、搭建MYSQL

  1. 拉取镜像
docker pull hub.c.163.com/library/mysql:latest
  1. 创建宿主机的挂载数据卷
mkdir -p /opt/mysql/data
  1. 启动容器
docker run -p 3306:3306 --restart="always" --name mysql -v /opt/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 -d --privileged=true hub.c.163.com/library/mysql:latest
  1. 为容器创建exporter用户
#进入容器
docker exec -it mysql bash
#进入mysql
mysql -uroot -p123456
# 创建数据库用户
mysql>create user 'exporter' @ 'localhost' identified by '123456';
# 查看主从运行情况及所有数据库
mysql>grant process,replication client,select on *.* TO 'exporter '@' localhost ' ;
  1. 查看容器是否正常启动
#查看所有运行中的容器
docker ps

image.png

三、搭建mysql-exporter

  1. 拉取镜像
docker pull prom/mysqld-exporter
  1. 创建配置文件
vim /opt/my.cnf
#输入以下内容
[client]
host=主机ip 
user=用户
password=密码
  1. 启动容器
docker run -d --restart="always" -name mysql-exporter -p 9104:9104 -v /opt/my.cnf:/etc/mysql/my.cnf prom/mysqld-exporter  --config.my-cnf=/etc/mysql/my.cnf
  1. 查看服务是否在监听

访问http://主机ip:9104

四、搭建node-exporter

  1. 拉取镜像
docker pull prom/prometheus
  1. 启动容器
docker run -d -p 9100:9100 \-v "/proc:/host/proc:ro" \-v "/sys:/host/sys:ro" \-v "/:/rootfs:ro" \--net="host" \--name node-expoter \prom/node-exporter
  1. 查看服务是否在监听

访问http://主机ip:9100

五、搭建prometheus

  1. 拉取镜像
docker pull prom/node-exporte
  1. 新建目录,生成prometheus.yml
mkdir /opt/prometheus
cd /opt/prometheus/
vim prometheus.yml
#输入以下内容
global:scrape_interval:     60sevaluation_interval: 60sscrape_configs:- job_name: prometheusstatic_configs:- targets: ['localhost:9090']labels:instance: prometheus- job_name: linuxstatic_configs:- targets: ['192.168.119.128:9100']labels:instance: localhost- job_name: mysqlstatic_configs:- targets: ['192.168.119.128:9104']labels:instance: mysql
  1. 启动容器
docker run  -d \-p 9090:9090 \-v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml  \--name prometheus \prom/prometheus
  1. 查看服务是否在监听

访问http://主机ip:9090/targets,看到启动的相关服务是up就可以了
image.png

六、搭建Grafana

  1. 拉取镜像
docker pull grafana/grafana
  1. 启动容器

访问地址:http://IP:3000 默认账号密码都是admin

 docker run -d -p 3000:3000 grafana/grafana
  1. 启动容器
docker run  -d \-p 9090:9090 \-v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml  \--name prometheus \prom/prometheus
  1. 配置数据源

image.pngimage.pngimage.pngimage.pngimage.png

  1. 配置mysql监控面板

image.png
image.png
image.png
image.png
image.png
最终效果如下:
image.png

  1. 配置linux监控面板

与mysql配置基本一样,只有模版ID变了,为12633。效果如下图:
image.png

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

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

相关文章

有了Future为什么还要CompletableFuture?

文章目录 Future 接口理论知识复习Future 接口概述场景描述小结 Future 接口常用实现类 FutureTask 异步任务Future 的作用Futrue 编码测试优缺点分析优点缺点小结 面对一些复杂的任务对于简单的业务场景使用 Future 接口完全 OK回调通知创建异步任务多个任务前后依赖可以组合对…

DFS——连通性和搜索顺序

dfs的搜索是基于栈,但一般可以用用递归实现,实际上用的是系统栈。有内部搜索和外部搜索两种,内部搜索是在图的内部,内部搜索一般基于连通性,从一个点转移到另一个点,或者判断是否连通之类的问题&#xff0c…

[Python] opencv - 什么是直方图?如何绘制图像的直方图?

什么是直方图? 直方图是一种统计图,用于展示数据的分布情况。它将数据按照一定的区间或者组进行划分,然后计算在每个区间或组内的数据频数或频率(即数据出现的次数或占比),然后用矩形或者柱形图的形式将这…

C++学习Day03之构造函数和析构函数

目录 一、程序及输出1.1 构造函数1.2 析构函数1.3 构造和析构必须要声明在全局作用域 二、分析与总结 一、程序及输出 1.1 构造函数 构造函数 没有返回值 不用写void 函数名 与 类名相同 可以有参数 ,可以发生重载 构造函数 由编译器自动调用一次 无须手动调用 创建…

C语言——Q/编译和链接

目录 一、翻译环境和运⾏环境 二、翻译环境 1、预处理(预编译) 2、编译 2.2.1 词法分析: 2.2.2 语法分析 2.2.3 语义分析 3、汇编 4、链接 三、运行环境 一、翻译环境和运行环境 在ANSI C 的任何⼀种实现中,存在两个不…

CentOS7局域网内搭建本地yum源

CentOS7.6 局域网内搭建本地yum源 一、背景 客户机房服务器无法直连公网,远程通过堡垒机部署环境,因为机器比较多,最终选择通过安装自定义yum源进行部署。以下为自己部署yum源过程,以备后续使用。 二、准备yum源Packages 网上…

【刷题题解】最长回文子序列

给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列 这道题,一眼动态规划,但是即使动起来也规划…

python_蓝桥杯刷题记录_笔记_全AC代码_入门3

前言 记录我的解法以及笔记思路,谢谢观看。 题单目录 1.P2141 [NOIP2014 普及组] 珠心算测验 2.P1567 统计天数 3.P1055 [NOIP2008 普及组] ISBN 号码 4.P1200 [USACO1.1] 你的飞碟在这儿 Your Ride Is Here 5.P1308 [NOIP2011 普及组] 统计单词数 6.P1047 […

深度学习之循环神经网络进阶

这一讲我们学习如何实现一个循环神经网络的分类器: 我们要解决的问题是名字分类,我们根据名字找到其对应的国家。 上一讲我们介绍了循环神经网络。 我们在处理自然语言的时候我们通常是以上这种方式,我们在处理单词的时候,通常…

一文彻底搞懂MySQL基础:B树和B+树的区别(简洁版)

文章目录 1. 节点结构2. 插入和删除3. 查询4. 性能5. 适用场景6.关于 B树和 B树的常见问题6.1. B树和B树的区别是什么?6.2. 什么情况下应该使用 B树?6.3. 什么情况下应该使用 B树? B树和B树都是多路搜索树,它们都用于数据库索引中…

命令注入漏洞原理以及修复方法

漏洞名称 :命令注入 漏洞描述:Command Injection,即命令注入攻击,是指由于Web应用程序对用户提交的数据过滤 不严格,导致黑客可以通过构造特殊命令字符串的方式,将数据提交至Web应用程序中,并利…

一文讲明Jetpack中的图片组件

Jetpack Compose系列(5) - 图片组件 Jetpack Compose中的常用图片组件有两个:Icon和Image。从命名上就不难看出这两个组件在内容呈现上就是负责图形和图片相关。 需要说明的是,Compose获取资源方式有四种: 文本 -> stringResource(R.s…

比特币ETF广告战大爆发!

作者:秦晋 贝莱德主动发起广告攻势。 2月1日,据外媒Cryptoslate报道,贝莱德在提交给美国SEC的一份文件中显示,其提出一项在建筑物侧面投影比特币ETF广告计划。 据介绍,广告内容为:「IBIT」信号是一个以迈阿…

【Qt+MSVC2017_64bit +Cmake新建项目编译出错】

项目场景: 提示:这里简述项目相关背景: 项目新电脑环境配置 QtMSVC2017_64bit Cmake新建项目编译出错 问题描述 提示:这里描述项目中遇到的问题: QtMSVC2017_64bit Cmake新建项目编译出错 Running C:\Program Fil…

【数据分享】1米分辨率土地覆盖数据集SinoLC-1

数据链接 SinoLC-1: the first 1-meter resolution national-scale land-cover map of China created with the deep learning framework and open-access data (Update data: August, 2023) (zenodo.org)https://zenodo.org/records/8214467 数据分享 数据分享到了公众号&…

Android studio改代码运行不生效

Android studio改代码后运行不生效,尝试卸载apk后,运行能生效,后面尝试手动通过adb命令安装生成的apk能生效。 studio 版本 解决方案: 在File->Settings->Build, Execution, Deployment,找到Android Configura…

BFS——双向广搜+A—star

有时候从一个点能扩展出来的情况很多,这样几层之后搜索空间就很大了,我们采用从两端同时进行搜索的策略,压缩搜索空间。 190. 字串变换(190. 字串变换 - AcWing题库) 思路:这题因为变化规则很多,所以我们一层一层往外…

golang开源的可嵌入应用程序高性能的MQTT服务

golang开源的可嵌入应用程序高性能的MQTT服务 什么是MQTT? MQTT(Message Queuing Telemetry Transport)是一种轻量级的、开放的消息传输协议,设计用于在低带宽、高延迟或不可靠的网络环境中进行通信。MQTT最初由IBM开发&#xf…

canvas设置图形各种混合模式,类似photoshop效果

查看专栏目录 canvas实例应用100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…