zabbix+tidb

本文介绍了如何将分布式数据库TiDB与企业级监控解决方案Zabbix集成部署。TiDB是一个支持HTAP的云原生数据库,兼容MySQL协议,而Zabbix则用于网络和应用监控。在三台机器上分别部署TiDB的PD、TiKV组件,并通过Zabbix监控TiDB的状态。最终在Zabbix配置中更新数据库连接以指向TiDB,完成集成。
摘要由CSDN通过智能技术生成

TiDB

TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 5.7 协议和 MySQL 生态等重要特性。目标是为用户提供一站式 OLTP (Online Transactional Processing)、OLAP (Online Analytical Processing)、HTAP 解决方案。TiDB 适合高可用、强一致要求较高、数据规模较大等各种应用场景。
 

Zabbix:企业级开源监控解决方案Zabbix是一个成熟、易用的企业级开源监控解决方案,适用于百万级指标的网络监控和应用监控https://www.zabbix.com/cn云原生分布式数据库-实时 HTAP-开源 | PingCAPPingCAP 成立于 2015 年,是一家企业级开源分布式数据库厂商。由 PingCAP 创立的分布式关系型数据库 TiDB,具备「一键水平扩容或者缩容、金融级高可用、实时 HTAP、云原生、MySQL 兼容」等特性,帮助企业最大化发挥数据价值,充分释放企业增长空间。https://pingcap.com/zh/

部署三台机器

server2        172.25.31.2     zabbix-server  tidb

server33        172.25.31.33        tikv

server34        172.25.31.34        tikv

在三台机器上都下载tidb二进制软件包

wget https://download.pingcap.org/tidb-latest-linux-amd64.tar.gz
tar zxf tidb-latest-linux-amd64.tar.gz
scp tidb-latest-linux-amd64.tar.gz server33:
scp tidb-latest-linux-amd64.tar.gz server34:

server2 解压完成后进入tidb-v5.0.1-linux-amd64/目录下

执行此命令   将pd进程打入后台

./bin/pd-server --name=pd1 --data-dir=pd1 --client-urls="http://172.25.31.2:2379" --peer-urls="http://172.25.31.2:2380" --initial-cluster="pd1=http://172.25.31.2:2380" --log-file=pd.log &

打入后台之后查看进程,要看到这两个端口运行

[root@server2 web]# netstat -antlp | grep pd
tcp        0      0 172.25.31.2:2379        0.0.0.0:*               LISTEN      5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2380        0.0.0.0:*               LISTEN      5570/./bin/pd-serve 

server33 server34 :

在server33 和server34  机器上解压二进制软件包

执行./bin/tikv-server 将pd指向server2

[root@server33 ~]# tar zxf tidb-latest-linux-amd64.tar.gz 
[root@server33 ~]# cd tidb-v5.0.1-linux-amd64/
[root@server33 tidb-v5.0.1-linux-amd64]# ls
bin  PingCAP Community Software Agreement(Chinese Version).pdf  PingCAP Community Software Agreement(English Version).pdf
[root@server33 tidb-v5.0.1-linux-amd64]# ./bin/tikv-server --pd="172.25.31/3:2379" --addr="172.25.31.33:20160" --data-dir=tikv1 --log-file=tikv.log &
[1] 3920

执行完成后要看到以下端口开启与否

[root@server33 tidb-v5.0.1-linux-amd64]# netstat -antlp | grep tikv
tcp        0      0 127.0.0.1:20180         0.0.0.0:*               LISTEN      3441/./bin/tikv-ser 
tcp6       0      0 172.25.31.33:20160      :::*                    LISTEN      3441/./bin/tikv-ser 
tcp6       0      0 172.25.31.33:20160      172.25.31.34:58334      ESTABLISHED 3441/./bin/tikv-ser 
tcp6       0      0 172.25.31.33:42300      172.25.31.34:20160      ESTABLISHED 3441/./bin/tikv-ser 
tcp6       0      0 172.25.31.33:41028      172.25.31.2:2379        ESTABLISHED 3441/./bin/tikv-ser 

server34同步上述操作

执行完成后在server2主机上开启tidb服务及zabbix服务

将tidb服务打入后台  

查看4000端口是否开启

[root@server2 tidb-v5.0.1-linux-amd64]# ./bin/tidb-server &
[root@server2 tidb-v5.0.1-linux-amd64]# netstat -antlp | grep tidb
tcp6       0      0 :::10080                :::*                    LISTEN      5711/./bin/tidb-ser 
tcp6       0      0 :::4000                 :::*                    LISTEN      5711/./bin/tidb-ser 

 在查看里面有没有来自33和34的主机的连接,有的话代表连接成功

[root@server2 tidb-v5.0.1-linux-amd64]# netstat -antlp | grep pd
tcp        0      0 127.0.0.1:36232         0.0.0.0:*               LISTEN      5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2379        0.0.0.0:*               LISTEN      5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2380        0.0.0.0:*               LISTEN      5570/./bin/pd-serve 
tcp        0      0 127.0.0.1:43929         0.0.0.0:*               LISTEN      5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:56980       172.25.31.2:2379        ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2379        172.25.31.33:41028      ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2379        172.25.31.2:56980       ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2379        172.25.31.2:56984       ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:56984       172.25.31.2:2379        ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2379        172.25.31.2:56982       ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:2379        172.25.31.34:48594      ESTABLISHED 5570/./bin/pd-serve 
tcp        0      0 172.25.31.2:56982       172.25.31.2:2379        ESTABLISHED 5570/./bin/pd-serve 
tcp6       0      0 :::80                   :::*                    LISTEN      3166/httpd          

进入数据库将数据库中,将数据从mysql转移到tidb 

进入mysql数据库  创建zabbix用户并设定权限

[root@server2 tidb-v5.0.1-linux-amd64]# mysql -h 172.25.31.2 -P 4000 -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.25-TiDB-v5.0.1 TiDB Server (Apache License 2.0) Community Edition, MySQL 5.7 compatible

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> CREATE USER 'zabbix'@'%' IDENTIFIED BY 'Westos_111';
mysql> grant all privileges on *.* to 'zabbix'@'%';

权限设定完毕后开始对mysql数据库进行备份

切换目录 开始备份  中途不要ctrl+c 结束

cd /usr/share/doc/zabbix-server-mysql-5.0.25/
mysqldump -uroot -pWestos_111 zabbix >/mnt/zabbix.sql 

将mysql数据库的内容导入到tidb中

[root@server2 mnt]# mysql -h 172.25.31.2 -P 4000 -uroot
MySQL [(none)]> use zabbix;
Database changed
MySQL [zabbix]> set tidb_batch_insert=1;
MySQL [zabbix]> source /mnt/zabbix.sql;

直接等待导入完成

编辑配置文件   将 zabbix 的监听端口更改为4000

[root@server2 ~]# vim /etc/zabbix/zabbix_server.conf

# Range: 1024-65535
# Default:
DBPort=4000

编辑配置文件/etc/zabbix/web

将server选项更改为自己的tidb主机 更改端口为4000

<?php
// Zabbix GUI configuration file.

$DB['TYPE']                             = 'MYSQL';
$DB['SERVER']                   = '172.25.31.2';
$DB['PORT']                             = '4000';
$DB['DATABASE']                 = 'zabbix';
$DB['USER']                             = 'zabbix';
$DB['PASSWORD']                 = 'Westos_111';

重启zabbix-server   zabbix-agent服务

 systemctl restart zabbix-agent
 systemctl restart zabbix-server

重启完成后访问zabbix主机

 设定完成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值