首页 > 技术文章 > 二、Zabbix监控基础架构

studyhub 2021-09-09 23:59 原文

Zabbix-agent(数据采集)--->Zabbix-server(数据分析、报警)--->数据库(数据存储)<---Zabbix web(数据显示)

1.Zabbix架构之拆分数据库

1. 准备一台数据库主机,安装MySQL版本要一致

# 安装数据库,启动并加入开机自启
[root@dba-01 ~]# yum install -y mariadb-server
[root@dba-01 ~]# systemctl start mariadb 
[root@dba-01 ~]# systemctl enable mariadb 
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

2. 创建Zabbix数据库,授权(需要网络授权)

[root@dba-01 ~]# mysql         # 进入数据库
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;  # 创建一个数据库
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';
Query OK, 0 rows affected (0.01 sec)

3. 在旧数据库上备份库,然后恢复到新的数据库

# 在zabbix-server主机上创建数据库备份
[root@zabbix-server ~]# mysqldump -uroot --databases zabbix --single-transaction > `date +%F%H`-zabbix.sql

# 查看备份数据
[root@zabbix-server ~]# vi 2021-09-0921-zabbix.sql 

-- MySQL dump 10.14  Distrib 5.5.68-MariaDB, for Linux (x86_64)
--
-- Host: localhost    Database: zabbix
-- ------------------------------------------------------
-- Server version       5.5.68-MariaDB

...................省略部分..............................

# 上传至数据库主机
[root@zabbix-server ~]# cat 2021-09-0921-zabbix.sql | mysql -h192.168.10.146 -uzabbix  -predhat zabbix 
ERROR 1045 (28000): Access denied for user 'zabbix'@'192.168.10.134' (using password: YES)

4. 修改Zabbix-server配置文件指向新的数据库的ip

[root@zabbix-server ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=192.168.10.146  # 修改为新数据库的ip地址即可

# 重启zabbix-server服务
[root@zabbix-server ~]# systemctl restart zabbix-server

5. 修改Zabbix-web配置文件指向新的数据库的ip

# 修改zabbix-web配置文件
[root@zabbix-server ~]# vim /etc/zabbix/web/zabbix.conf.php
$DB['SERVER']   = '192.168.10.146';   # 只要修改这一个位置就可以

# 重启httpd服务
[root@zabbix-server ~]# systemctl restart httpd

注意:这种数据库的迁移,会造成数据的丢失,在生产环境中不适用

推荐阅读