Zabbix+TiDB 单机快速部署

一.TiDB简介

TiDB是国内PingCAP团队的一个分布式SQL数据库。它的灵感来自于Google的F1和Google spanner,TiDB支持包括传统RDBMS和NoSQL的特性。TiDB 兼容 MySQL 的系统变量,同时定义了一些特有的系统变量用于调整数据库行为。它支持水平弹性扩展、ACID 事务、标准 SQL、MySQL 语法和 MySQL 协议,具备如下TiDB特性:

  • 高度兼容 MySQL
    大多数情况下,无需修改代码即可从 MySQL 轻松迁移至 TiDB,分库分表后的 MySQL 集群亦可通过 TiDB 工具进行实时迁移。

  • 水平弹性扩展
    通过简单地增加新节点即可实现 TiDB 的水平扩展,按需扩展吞吐或存储,轻松应对高并发、海量数据场景。

  • 分布式事务
    TiDB 100% 支持标准的 ACID 事务。

  • 故障自恢复的高可用
    相比于传统主从 (M-S) 复制方案,基于 Raft 的多数派选举协议可以提供金融级的 100% 数据强一致性保证,且在不丢失大多数副本的前提下,可以实现故障的自动恢复 (auto-failover),无需人工介入。

  • 一站式 HTAP 解决方案

    TiDB 作为典型的 OLTP 行存数据库,同时兼具强大的 OLAP 性能,配合 TiSpark,可提供一站式 HTAP 解决方案,一份存储同时处理 OLTP & OLAP,无需传统繁琐的 ETL 过程。

  • 云原生 SQL 数据库
    TiDB 是为云而设计的数据库,同 Kubernetes 深度耦合,支持公有云、私有云和混合云,使部署、配置和维护变得十分简单。
    TiDB 的设计目标是 100% 的 OLTP 场景和 80% 的 OLAP 场景,更复杂的 OLAP 分析可以通过 TiSpark 项目来完成。
    TiDB 对业务没有任何侵入性,能优雅的替换传统的数据库中间件、数据库分库分表等 Sharding 方案。同时它也让开发运维人员不用关注数据库 Scale 的细节问题,专注于业务开发,极大的提升研发的生产力。

TiDB 整体架构

要深入了解 TiDB 的水平扩展和高可用特点,首先需要了解 TiDB 的整体架构。
y

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

DB 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安装

实验环境:

系统hostnameipselinux火墙
rhel7.6vm8172.25.8.8disabled关闭

1.下载安装yum源

使用zabbix官网源进行安装
中文站地址:https://www.zabbix.com/cn/download
在这里插入图片描述

# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# yum clean all 

2.安装zabbix

yum install zabbix-server-mysql zabbix-agent -y

3.安装centos-release-scl软件集

首先配置centos的epel源,本次实验使用阿里云源进行安装

 curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

编辑Centos源,删除图中两url,并将全文$releasever替换为7
在这里插入图片描述安装centos-scl软件集

 yum install centos-release-scl 

4.编辑配置文件 zabbix.repo,启用zabbix-frontd模块

[zabbix-frontend]
...
enabled=1
... 

安装zabbix前端所需依赖包

yum install zabbix-web-mysql-scl zabbix-apache-conf-scl

5.安装tidb数据库

a.安装mysql

是为了连接和登陆tidb ,

 systemctl start mysqld
  cat /var/log/mysqld.log  ##查看初始密码
   mysql_secure_installation  ##修改密码

b.从官网下载tidb包

官网地址:http://www.pingcap.com

 wget http://download.pingcap.org/tidb-latest-linux-amd64.tar.gz
 wget http://download.pingcap.org/tidb-latest-linux-amd64.sha256
 sha256sum -c tidb-latest-linux-amd64.sha256

验证ok代表安装包安全

c.开启PD打入后台

tar zxf tidb-latest-linux-amd64.tar.gz
cd tidb-latest-linux-amd64
./bin/pd-server --name=pd1 --data-dir=pd1 --client-urls="http://172.25.8.8:2379" --peer-urls="http://172.25.8.8:2380" --initial-cluster="pd1=http://172.25.8.8:2380" --log-file=pd.log &

开启tidb打入后台,端口查是否开启2379和2380

./bin/tidb-server &
 netstat -ntlp | grep 4000

在这里插入图片描述

d.数据库连接tidb

mysql -h 172.25.8.8 -P 4000 -uroot ##数据库通过4000端口连接tidb,连接成功
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> CREATE USER 'zabbix'@'172.25.8.8' IDENTIFIED BY 'erqian'; ##此处要注意用户的授权登陆方式
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit; 

在这里插入图片描述

e. TiDB数据库导入初始架构和数据

因为语句很多,这里要等很久很久,要有耐心,可以去吃个饭。

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -h 172.25.8.8 -P 4000 -uroot  zabbix

f. 为Zabbix server配置数据库

编辑配置文件 /etc/zabbix/zabbix_server.conf

DBPassword=erqian ##数据库授权用户的密码

g. 为Zabbix前端配置PHP

编辑配置文件 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

php_value[date.timezone] = Asia/Shanghai

三 .启动zabbix

启动Zabbix server和agent进程,并为它们设置开机自启:

 systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
 systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm 

从浏览器访问
记得第一页的host 要改成本地IP,密码填写数据库授权用户的密码,点击下一步,给监控名字命名为zabbix server
在这里插入图片描述
用户名为Admin 密码为zabbix
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值