|
思路:主备机通过inotify+rsync实现文件同步,通过mysql主主复制实现数据同步,同一时刻只有一台服务器能对外提供zabbix服务,web端登陆虚ip访问,被监控主机通过配置虚ip来完成监控。
配置:
主机
| ip
| 操作系统
| zabbix版本
| mysql版本
| inotify版本
| rsync版本
| 备注
| zabbix-server01 | 172.27.9.80
| Centos7.3.1611 | zabbix_server (Zabbix) 3.4.10
| 5.7.22 | 3.14 | 3.1.2 | 关闭防火墙和selinux
| zabbix-server02 | 172.27.9.81
| Centos7.3.1611 | zabbix_server (Zabbix) 3.4.10
| 5.7.22 | 3.14 | 3.1.2 | 关闭防火墙和selinux | Part 1 基础环境安装
zabbix安装
1.安装源码库配置部署包
这个部署包包含了yum配置文件:
[root@zabbix-server01 ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm 2.安装Zabbix-server部署包
[root@zabbix-server01 ~]# yum -y install zabbix-server-mysql zabbix-web-mysql
3.安装初始化数据库
3.1下载并安装MySQL官方的 Yum Repository
[root@zabbix-server01 ~]# rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 3.2查看当前可用的Mysql安装源
[root@zabbix-server01 ~]# yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64 MySQL Connectors Community 51
mysql-tools-community/x86_64 MySQL Tools Community 63
mysql57-community/x86_64 MySQL 5.7 Community Server 267 3.3安装MySQL数据库
[root@zabbix-server01 ~]# yum -y install mysql-community-server 总下载量:205M,请耐心等待。
安装完成,系统自带的mariadb被覆盖。
3.4启动mysql服务并设置开机启动
[root@zabbix-server01 ~]# systemctl start mysqld.service
[root@zabbix-server01 ~]# systemctl enable mysqld.service 3.5登陆mysql
安装好后,会在my.cnf文件中自动生成一个密码
[root@zabbix-server01 ~]# cat /var/log/mysqld.log | grep password
2018-06-20T09:40:53.666115Z 1 [Note] A temporary password is generated for root@localhost: )>b5dXb+sLei
[root@zabbix-server01 ~]# mysql -uroot -p 输入密码“)>b5dXb+sLei”
3.6修改密码规则(默认密码规则太复杂不容易记忆)
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.01 sec)
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec) 3.7重置密码(登录数据库后需首先重置密码才能进行后续操作)
mysql> set password = password('mysql123');
Query OK, 0 rows affected, 1 warning (0.00 sec) 3.8创建数据库和zabbix用户并授权
mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix123';
Query OK, 0 rows affected, 1 warning (0.00 sec) 3.9导入初始架构(Schema)和数据
[root@zabbix-server01 ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.10/
[root@zabbix-server01 zabbix-server-mysql-3.4.10]# zcat create.sql.gz | mysql -uzabbix -pzabbix123 -D zabbix
mysql: [Warning] Using a password on the command line interface can be insecure. 执行过程中会有一个关于密码的告警,忽略。
查看执行结果:
mysql> show tables from zabbix;
mysql> select count(*) tables,table_schema from information_schema.tables where table_schema = 'zabbix';
一共有140张表
4.启动Zabbix Server进程
4.1在zabbix_server.conf中编辑数据库配置
解注释DBHost:
[root@zabbix-server01 zabbix]# sed -i 's/^ *# *DBHost=.*/DBHost=localhost/g' /etc/zabbix/zabbix_server.conf 修改zabbix密码:
[root@zabbix-server01 zabbix]# sed -i 's/^ *# *DBPassword=.*/DBPassword=zabbix123/g' /etc/zabbix/zabbix_server.conf 4.2修改zabbix安装目录属主和权限
[root@zabbix-server01 zabbix]# chown -R zabbix:zabbix /etc/zabbix/
[root@zabbix-server01 zabbix]# chmod -R 755 /etc/zabbix/ 4.3启动zabbix-server服务,并设置开机自启
[root@zabbix-server01 ~]# systemctl restart zabbix-server
[root@zabbix-server01 ~]# systemctl enable zabbix-server 5.编辑Zabbix前端的PHP配置
5.1设置时区为Asia/Shanghai:
[root@zabbix-server01 ~]# sed -i.bak 's/^ *# *php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Shanghai/g' /etc/httpd/conf.d/zabbix.conf 5.2启动apache服务,并设置开机自启
[root@zabbix-server01 conf.d]# systemctl restart httpd
[root@zabbix-server01 conf.d]# systemctl enable httpd 6.登陆zabbix
访问地址:http://localhost/zabbix
下一步:
下一步:
输入密码“zabbix123”,下一步:
name填写为‘myzabbix81’和zabbix-server02的‘myzabbix82’区分,host和port默认,下一步:
信息汇总确认,下一步:
下载配置文件并另存为‘/etc/zabbix/web/zabbix.conf.php’,注意属主为zabbix:zabbix,权限为755:
[root@zabbix-server02 ~]# cd /etc/zabbix/web/
[root@zabbix-server02 web]# ll
总用量 8
-rwxr-xr-x. 1 zabbix zabbix 1036 6月 4 19:40 maintenance.inc.php
-rwxr-xr-x 1 zabbix zabbix 427 6月 20 22:38 zabbix.conf.php
[root@zabbix-server02 web]# more zabbix.conf.php |
|
|