本文配置测试环境为rhel7.2 x86_64bit,且已经安装过zabbix并且配置过mariadb数据库
文件系统 TiDB 部署环境推荐使用 ext4 文件系统
Swap 空间 TiDB 部署推荐关闭 Swap 空间
Disk Block Size 设置系统磁盘 Block 大小为 4096
selinux处于disabled状态
防火墙关闭:请查看 TiDB 所需端口在各个节点之间是否能正常访问
解开压缩包(在所有tidb主机中都要有二进制包)
tar -xzf tidb-latest-linux-amd64.tar.gz
cd tidb-latest-linux-amd64
3. 功能性测试部署
这里我将使用四个节点,部署一个 PD,三个 TiKV,以及一个 TiDB,各个节点以及所运行服务信息如下:
hostname | IP | 安装的系统服务 |
---|---|---|
lockey41 | 192.168.0.41 | PD1, TiDB,zabbix-server,web |
lockey151 | 192.168.0.151 | TiKV1 |
lockey152 | 192.168.0.152 | TiKV2 |
lockey153 | 192.168.0.153 | TiKV3 |
按如下步骤依次启动 PD 集群,TiKV 集群以及 TiDB:
注意:以下启动各个应用程序组件实例的时候,请选择后台启动,避免前台失效后程序自动退出。
cd tidb-latest-linux-amd64
步骤一. 在lockey41 启动 PD:
./bin/pd-server --name=pd1 --data-dir=pd1 --client-urls="http://192.168.0.41:2379" --peer-urls="http://192.168.0.41:2380" --initial-cluster="pd1=http://192.168.0.41:2380" --log-file=pd.log &
步骤二. 在 lockey151,lockey152,lockey153 启动 TiKV:
lockey151
./bin/tikv-server --pd="192.168.0.41:2379" --addr="192.168.0.151:20160" --data-dir=tikv1 --log-file=tikv.log &
lockey152
./bin/tikv-server --pd="192.168.0.41:2379" --addr="192.168.0.152:20160" --data-dir=tikv1 --log-file=tikv.log &
lockey153
./bin/tikv-server --pd="192.168.0.41:2379" --addr="192.168.0.151:20160" --data-dir=tikv1 --log-file=tikv.log &
步骤三. 在 lockey41 启动 TiDB:
./bin/tidb-server
对于各服务的启动状态和数据库端口可以使用以下命令检查:
ps -aux | grep server
netstat -antlp | grep 4000
步骤四. 使用 MySQL 客户端连接 TiDB:
这一步如果OK的话基本的数据库配置就成功了,接下来需要往zabbix应用中进行集成;如果这一步出现问题请先检查防火墙(systemctl status firewalld)是否关闭以及各服务是否正常启动
[root@lockey41 zabbix-server-mysql-3.4.2]# mysql -h 127.0.0.1 -P 4000 -ulockey -plockey23
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.1-TiDB-0.9.0 MySQL Community Server (Apache License 2.0)
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [test]> CREATE DATABASE zabbix CHARSET 'utf8';
Query OK, 0 rows affected (0.07 sec)
MySQL [test]> GRANT ALL ON zabbix.* TO 'lockey'@'192.168.%.%' IDENTIFIED BY 'lockey23';
Query OK, 1 row affected (0.01 sec)
MySQL [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| INFORMATION_SCHEMA |
| zabbix |
+--------------------+
2 rows in set (0.00 sec)
记得往数据库中导入数据
[root@lockey41 ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.2/
[root@lockey41 zabbix-server-mysql-3.4.2]# tar -zxvf create.sql.gz
[root@lockey41 zabbix-server-mysql-3.4.2]# mysql -h 192.168.0.41 -P 4000 -ulockey -plockey23 zabbix
4. 将TiDB集成到zabbix中去
修改之前的zabbix-server配置文件
vim /etc/zabbix/zabbix_server.conf
DBPort=4000##特别注意这一行
修改zabbix的web(php)配置
[root@lockey41 web]# pwd
/etc/zabbix/web
[root@lockey41 web]# vim zabbix.conf.php
Database error Error connecting to database: Can't connect to local MySQL server through socket