CentOS-7部署mysql、clickhouse并通过普罗米修斯、grafna监控告警

本文主要是介绍CentOS-7部署mysql、clickhouse并通过普罗米修斯、grafna监控告警,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、准备工作

1、系统环境

所用镜像:CentOS-7-x86_64-DVD-2009.iso

2、涉及安装包

3、克隆4台虚拟机

用途IP主机名
Prometneus服务器192.168.15.129master
被监控服务器1192.168.15.133node1
mysql、clickhouse、grafana服务器192.168.15.134node2
被监控服务器2192.168.15.136node3

二、通用设置(分别在4台虚拟机设置)

1、在四台服务器上分别配置主机名

hostnamectl set-hostname --static 主机名

2、修改hosts文件

vim /etc/hosts
输入:
192.168.15.129 master
192.168.15.133 node1
192.168.15.134 node2
192.168.15.136 node3

3、 保持服务器之间时间同步

yum install -y  ntpdate && ntpdate time.windows.com

4、关闭防火墙(生产上不要这样操作、重启虚拟机后需重新操作)

systemctl stop firewalld 
systemctl disable firewalld 
iptables -F

三、在master服务器安装普罗米修斯

1、 将文件解压到你想要的文件夹

tar -zxvf prometheus-2.5.0.linux-amd64.tar.gz -C /usr/local/

2、重命名普罗米修斯文件夹名称

mv /usr/local/prometheus-2.5.0.linux-amd64/  /usr/local/prometheus

3、使用使用默认配置文件启动(重启虚拟机需要重新启动)

/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &
注:启动时可以添加参数,比如	这种方式可以设置数据保存位置
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" --storage.tsdb.path="/usr/local/prometheus/data" &--storage.tsdb.path: 存储数据的目录,默认为data/,如果要挂外部存储,可以指定该目录
--storage.tsdb.retention.time: 数据过期清理时间,默认保存15天
--storage.tsdb.retention.size: 实验性质,声明数据块的最大值,不包括wal文件,如512MB
--storage.tsdb.retention: 已被废弃,改为使用storage.tsdb.retention.time

4、 确认服务是否启动

ss -anltp | grep 9090
访问http://192.168.15.129:9090/targets,看到up说明启动成功

在这里插入图片描述

四、在node1、node3节点安装node_exporter组件

1、将文件解压到你想要的文件夹

tar -zxvf node_exporter-0.16.0.linux-amd64.tar.gz -C /usr/local/

2、重命名

mv /usr/local/node_exporter-0.16.0.linux-amd64/ /usr/local/node_exporter

3、启动node_exporter(重启虚拟机需要重新启动)

nohup /usr/local/node_exporter/node_exporter &

4、确认服务是否启动

ss -anltp | grep 9100
访问http://192.168.15.133:9100/metrics,http://192.168.15.136:9100/metrics成功说明启动成功

5、修改普罗米修斯配置,在master节点操作

vim /usr/local/prometheus/prometheus.yml 
在最后添加- job_name: 'node1'static_configs:- targets: ['192.168.15.133:9100']- job_name: 'node2'static_configs:- targets: ['192.168.15.136:9100']

6、重启普罗米修斯,在master节点操作

先杀死服务
pkill prometheus
再重新启动
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

访问http://192.168.15.129:9090/targets,看到up说明启动成功

在这里插入图片描述

五、在node2节点安装mysql

参考:

https://blog.csdn.net/weixin_42924611/article/details/138125237

六、在node2节点安装clickhouse

参考:

https://blog.csdn.net/weixin_42924611/article/details/138125822

七、在node2节点安装Grafana

参考:

https://blog.csdn.net/weixin_42924611/article/details/138126370

八、在node2节点安装mysqld_exporter

1、解压

tar -xzvf mysqld_exporter-0.15.0.linux-amd64.tar.gz

2、重命名

mv mysqld_exporter-0.15.0.linux-amd64 mysqld_exporter

3、进入该目录后进入数据库

cd /jxh/mysqld_exportermysql -uroot -padmin

4、授予 ‘mysql_monitor’@‘localhost’ 用户在所有数据库中的所有表上执行 SELECT、REPLICATION CLIENT 和 PROCESS 权限,并使用 ‘GUANzhu123//’ 作为该用户的密码

grant select,replication client,process ON *.* to 'mysql_monitor'@'localhost' identified by 'GUANzhu123//';

5、刷新权限

flush privileges;

6、创建配置文件将账户密码写入

vim .my.cnf
输入:
[client]
user=mysql_monitor
password=GUANzhu123//

7、启动mysqld_exporter(重启虚拟机需要重新启动)

nohup /jxh/mysqld_exporter/mysqld_exporter --config.my-cnf=/jxh/mysqld_exporter/.my.cnf &

8、查看服务是否启动

netstat -antup | grep mysqld

访问http://192.168.15.134:9104/metrics成功

9、去普罗米修斯服务器配置prometheus文件(master节点)

vim /usr/local/prometheus/prometheus.yml
在最后输入:- job_name: "mysql"static_configs: - targets: ['192.168.15.134:9104']

10、重启普罗米修斯服务,在master节点操作

先杀死服务
pkill prometheus
再重新启动
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

在这里插入图片描述

九、在node2节点安装clickhouse_exporter

1、下载文件

wget -P /var/download https://dl.google.com/go/go1.12.10.linux-amd64.tar.gz

2、解压文件

tar -zxf /var/download/go1.12.10.linux-amd64.tar.gz -C /usr/lib/

3、进入文件夹重命名文件夹

cd /usr/lib/mv go golang

4、修改配置文件

vim /etc/profile
在文件的末尾添加如下内容:
export GOROOT=/usr/lib/golang
export GOPATH=/var/goproject
export PATH=$PATH:$GOROOT/bin

5、重新加载配置文件

source /etc/profile

6、进入目录下载clickhouse_exporter

cd  /app/clickhouse_exporter/clickhouse_exportergit clone  https://github.com/f1yegor/clickhouse_exporter.git

7、安装clickhouse_exporter

go clean -modcache
export GOPROXY=https://mirrors.aliyun.com/goproxy/
go build clickhouse_exporter.go

8、查看是否编译成功

clickhouse_exporter --h

在这里插入图片描述

9、启动clickhouse_exporter(第六步安装的是有密码的ch)(重启虚拟机需要重新启动)

nohup /app/clickhouse_exporter/clickhouse_exporter/clickhouse_exporter -scrape_uri=http://default:123456@192.168.15.134:8123/ &

10、访问

http://192.168.15.134:9116/metrics
在这里插入图片描述

11、去普罗米修斯服务器配置prometheus文件(master节点)

vim /usr/local/prometheus/prometheus.yml
在最后输入:- job_name: "clickhouse"static_configs: - targets: ['192.168.15.134:9116']

12、重启普罗米修斯服务,在master节点操作

先杀死服务
pkill prometheus
再重新启动
/usr/local/prometheus/prometheus --config.file="/usr/local/prometheus/prometheus.yml" &

访问http://192.168.15.129:9090/targets,看到clickhouse状态是up

在这里插入图片描述

十、导入grafana模板

1、clickhouse监控模板882

在这里插入图片描述

2、虚拟机(node)监控模板8919

在这里插入图片描述

3、mysql监控模板7362

在这里插入图片描述

这篇关于CentOS-7部署mysql、clickhouse并通过普罗米修斯、grafna监控告警的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/929319

相关文章

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

MySQL错误代码2058和2059的解决办法

《MySQL错误代码2058和2059的解决办法》:本文主要介绍MySQL错误代码2058和2059的解决办法,2058和2059的错误码核心都是你用的客户端工具和mysql版本的密码插件不匹配,... 目录1. 前置理解2.报错现象3.解决办法(敲重点!!!)1. php前置理解2058和2059的错误

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

MySQL Workbench 安装教程(保姆级)

《MySQLWorkbench安装教程(保姆级)》MySQLWorkbench是一款强大的数据库设计和管理工具,本文主要介绍了MySQLWorkbench安装教程,文中通过图文介绍的非常详细,对大... 目录前言:详细步骤:一、检查安装的数据库版本二、在官网下载对应的mysql Workbench版本,要是