为分布式监控系统Zabbix配置TiDB数据库

TiDB 简介

TiDB 是 PingCAP 公司基于 Google Spanner / F1 论文实现的开源分布式 NewSQL 数据库。

TiDB 具备如下 NewSQL 核心特性:

TiDB 的整体架构:

 

TiDB 集群主要分为三个组件:

TiDB Server

TiDB Server 负责接收 SQL 请求,处理 SQL 相关的逻辑,并通过 PD 找到存储计算所需数据的 TiKV 地址,与 TiKV 交互获取数据,最终返回结果。 TiDB Server 是无状态的,其本身并不存储数据,只负责计算,可以无限水平扩展,可以通过负载均衡组件(如LVS、HAProxy 或 F5)对外提供统一的接入地址。

PD Server

Placement Driver (简称 PD) 是整个集群的管理模块,其主要工作有三个: 一是存储集群的元信息(某个 Key 存储在哪个 TiKV 节点);二是对 TiKV 集群进行调度和负载均衡(如数据的迁移、Raft group leader 的迁移等);三是分配全局唯一且递增的事务 ID。

PD 是一个集群,需要部署奇数个节点,一般线上推荐至少部署 3 个节点。

TiKV Server

TiKV Server 负责存储数据,从外部看 TiKV 是一个分布式的提供事务的 Key-Value 存储引擎。存储数据的基本单位是 Region,每个 Region 负责存储一个 Key Range (从 StartKey 到 EndKey 的左闭右开区间)的数据,每个 TiKV 节点会负责多个 Region 。TiKV 使用 Raft 协议做复制,保持数据的一致性和容灾。副本以 Region 为单位进行管理,不同节点上的多个 Region 构成一个 Raft Group,互为副本。数据在多个 TiKV 之间的负载均衡由 PD 调度,这里也是以 Region 为单位进行调度。

为zabbix配置TiDB数据库

官方文档https://www.pingcap.com/docs-cn/QUICKSTART/

本文配置测试环境为rhel7.3 x86_64bit,且已经安装zabbix-server并且配置过mariadb数据库

这里的实验拟使用单节点,部署一个 PD,一个 TiKV,以及一个 TiDB(172.25.81.11)

下载官方 Binary

[root@foundation81 kiosk]# wget http://download.pingcap.org/tidb-latest-linux-amd64.tar.gz

[root@foundation81 kiosk]# wget http://download.pingcap.org/tidb-latest-linux-amd64.sha256

# 检查文件完整性,返回 ok 则正确

[root@zabbix-server ~]# sha256sum -c tidb-latest-linux-amd64.sha256

解开压缩包(在所有tidb主机中都要有二进制包)

[root@zabbix-server ~]# tar zxf tidb-latest-linux-amd64.tar.gz

[root@zabbix-server ~]# cd tidb-latest-linux-amd64

按如下步骤依次启动 PD 集群,TiKV 集群以及 TiDB:

<1>启动 PD:

[root@zabbix-server tidb-latest-linux-amd64]# cd bin/

 

[root@zabbix-server bin]# ./pd-server --data-dir=/data/pd --log-file=/data/logs/pd.log &

<2>启动 TiKV:

[root@zabbix-server bin]# ./tikv-server --pd="127.0.0.1:2379" --data-dir=/data/tikv --log-file=/data/logs/tikv.log &

<3>启动 TiDB:

[root@zabbix-server bin]# ./tidb-server --store=tikv --path="127.0.0.1:2379" --log-file=/data/logs/tidb.log &

对于各服务的启动状态和数据库端口可以使用以下命令检查:

[root@zabbix-server ~]# ps -aux | grep server

[root@zabbix-server ~]# netstat -antlp | grep 4000

配置数据库

<1>创建用户并授权

[root@zabbix-server web]# mysql -h 127.0.0.1 -P 4000 -uroot

MySQL [(none)]> CREATE USER zabbix@localhost identified by 'redhat';

MySQL [(none)]>  create database zabbix character set utf8 collate utf8_bin;  

MySQL [(none)]>  GRANT all ON zabbix.* TO zabbix@localhost;

MySQL [(none)]> flush privileges;

<2>将数据导入zabbix数据库

[root@zabbix-server web]# cd /usr/share/doc/zabbix-server-mysql-3.4.6/

[root@zabbix-server zabbix-server-mysql-3.4.6]# zcat create.sql.gz | mysql -h 127.0.0.1 -P4000 -uzabbix -p zabbix

<3>修改zabbix配置文件

[root@zabbix-server zabbix-server-mysql-3.4.6]# vim /etc/zabbix/zabbix_server.conf

DBName=zabbix

DBUser=zabbix

DBPassword=redhat

 DBSocket=/var/lib/mysql/mysql.sock

DBPort=4000

[root@zabbix-server zabbix-server-mysql-3.4.6]# systemctl restart zabbix-server

 

由于该台机子之前安装并配置过zabbix,所以在web端访问172.25.81.11/zabbix会直接登录到之前的数据库,这时可以删除zabbix在web端生成的.php配置文件,或者改掉该文件的后缀名,重新访问网页即可。

<4>访问http://172.25.81.11/zabbix,进行监控项配置即可

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值