第一章中简单讲述了zabbix的工作流程、工作模式,zabbix的几大核心组件,想要学习zabbix,首先需要安装一套zabbix环境。
这章重点讲述zabbix的简单安装
一、zabbix的安装方式主要有以下几种:
使用yum方式安装
使用源码方式进行安装
使用容器方式进行安装
鉴于使用yum安装方式简单,此文章使用yum方式安装
二、检查环境,由于系统防火墙与selinux后期会影响使用zabbix,如果想要不影响,就需要设置特定的规则,这里两台主机就直接关闭# systemctl disable firewalld && systemctl stop firewalld
/关闭防火墙并设置开机不自启/1. # systemctl status firewalld
/查看服务状态/2. ● firewalld.service - firewalld - dynamic firewall daemon
3. Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
4. Active: inactive (dead)
#未激活状态5. Docs: man:firewalld(1)
7. Dec 25 21:31:39 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
8. Dec 25 21:31:40 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
9. Dec 26 13:31:08 master systemd[1]: Stopping firewalld - dynamic firewall daemon...
10. Dec 26 13:31:09 master systemd[1]: Stopped firewalld - dynamic firewall daemon.
11. Dec 26 13:40:31 master systemd[1]: Starting firewalld - dynamic firewall daemon...
12. Dec 26 13:40:31 master systemd[1]: Started firewalld - dynamic firewall daemon.
13. Dec 26 13:40:33 master systemd[1]: Stopping firewalld - dynamic firewall daemon...
14. Dec 26 13:40:34 master systemd[1]: Stopped firewalld - dynamic firewall daemon.
# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
/替换selinux文本/
1. [root@master ~]# cat /etc/selinux/config
3. # This file controls the state of SELinux on the system.
4. # SELINUX= can take one of these three values:
5. # enforcing - SELinux security policy is enforced.
6. # permissive - SELinux prints warnings instead of enforcing.
7. # disabled - No SELinux policy is loaded.
8. SELINUX=disabled
/关闭状态/
9. # SELINUXTYPE= can take one of three values:
10. # targeted - Targeted processes are protected,
11. # minimum - Modification of targeted policy. Only selected processes are protected.
12. #mls - Multi Level Security protection.
13. SELINUXTYPE=targeted
三、安装zabbix服务
01.
由于centos7.x系统中并没有zabbix相关源,所以我们首先安装官方zabbix源,以便后续安装zabbix相关组件,在这里我们安装zabbix-3.4版本
zabbix源地址:http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
1. [root@master ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
2. Retrieving http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
3. warning: /var/tmp/rpm-tmp.Ehmx3n: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
4. Preparing... ################################# [100%]
5. Updating / installing...
6. 1:zabbix-release-3.4-2.el7 ################################# [100%]
02.
在master端安装zabbix-server-mysql zabbix-web-mysql zabbix-get等组件,在zabbix3.x版本中,并没有单独的zabbix-server包,安装好zabbix-server-mysql即为安装好zabbix-server
[root@master ~]# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-get
03.
启动zabbix-server服务[root@master ~]# systemctl start zabbix-server
/启动服务/[root@master ~]# systemctl status zabbix-server
/查看状态/
● zabbix-server.service - Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; disabled; vendor preset: disabled)
- Active:
active (running)
since Sat 2020-12-26 16:02:49 CST; 17s ago Process: 10043 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 10045 (zabbix_server)
CGroup: /system.slice/zabbix-server.service
└─10045 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
Dec 26 16:02:49 master systemd[1]: Starting Zabbix Server...
*Dec 26 16:02:49 master systemd[1]: Started Zabbix Server.
04.
agent端安装zabbix-agent zabbix-sender
[root@agent ~]# yum -y install zabbix-agent zabbix-sender
05.
由于zabbix监控是基于LAMP或LNMP架构,并且zabbix服务的工作流程也需要数据库的管理,由于zabbix包中在我们下载的时候已经包含啦httpd与PHP服务,所以在这里我们就只需要安装配置数据库
由于mariadb与mysql大同小异,所以我们使用mariadb服务来作为zabbix连接的数据库
[root@master ~]# yum -y install mariadb mariadb-server
/安装数据库/
[root@master ~]# systemctl start mariadb
/开启服务/
[root@master ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
/设置开机自启/
[root@master ~]# mysql_secure_installation
/根据需求初始化数据库/
06.
安装完zabbix包后,默认含有zabbix相关的数据表,后续需要导入表到数据库中,所以在这里解压出来
默认在/usr/share/doc/zabbix-server-mysql-3.4.15路径下有一个create.sql.gz压缩包
解压后成以下状态
进入数据库,创建用户,分配用户权限,导入数据表MariaDB [(none)]> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
/创建用户分配权限/Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
/刷新/Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
/创建数据库/Query OK, 1 row affected (0.01 sec)
MariaDB [(none)]> use zabbix;
/进入数据库/Database changed
MariaDB [zabbix]> source create.sql
/导入表/
/可看到已经存在表/
07.
在zabbix_server.conf中编辑数据库配置
[root@master ~]# vim /etc/zabbix/zabbix_server.conf
常常修改参数如下,更据实际需求进行修改
1.DBHost=localhost
/zabbix数据库所在主机IP,由于此处数据库与zabbix安装在一起,所以填写为localhost/2. DBName=zabbix
/通过DBName指定zabbix数据库对应名称/3. DBUser=zabbix
/通过DBUser指定zabbix数据库对应用户/4. DBPassword=zabbix
/指定zabbix数据库对应密码/5. ListenPort=10051
/指定zabbix模式监听端口/6. SourceIP=10.192.113.70
/指定服务端的源IP,当服务端有多个IP时,可以使用此方法设置服务端与agent端通讯的IP/7. LogType=file
/通过LogType参数,可以指定通过哪种方式记录日志,此参数可以设置为三种值,system、file、console,system表示将日志发往syslog,file表示使用指定的文件作为日志文件,console表示将日志发往控制台,默认为file。/8. LogFileSize=0
/指明日志文件达到多大时自动滚动,单位为MB,如果设置LogFileSize为50,表示日志大小达到50MB滚动一次,设置为0表示日志文件不会滚动,所有日志保存在一个文件中。/9. DebugLevel=3
/义日志的详细程度,即为日志级别。/10.DBPort=3306
/定义数据库监听端口/11.DBSocket=/var/lib/mysql/mysql.sock
/通过DBSocket指定数据库本地套接字文件位置/
08.
重启zabbix服务并且查看10051端口已经监听到
[root@master ~]# systemctl restart zabbix-server
09.
由于zabbix-web管理需要PHP页面,配置PHP
Zabbix前端的Apache配置文件位于 /etc/httpd/conf.d/zabbix.conf 。一些PHP设置已经完成了配置
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
#php_value date.timezone Europe/Riga
依据所在时区,你可以取消 “date.timezone” 设置的注释,并正确配置它。在配置文件更改后,需要重启Apache Web服务器。
[root@master ~]# systemctl restart httpd
10.
初始化zabbix配置
浏览器访问: http://server-IP/zabbix
进行zabbix初始化操作
完成以上步骤后,可以进入到zabbix安装步骤,点击下一步
之后会进入zabbix自动检查安装环境是否满足要求,如果出现不满足要求的情况,需要进一步处理,若没问题,点击下一步
进入到zabbix配置数据库连接,配置数据库相关信息,端口填写0表示使用默认端口(3306端口),填写完成后,点击下一步
填写zabbix server的详细信息,包括IP地址,端口号,以及server名称等,填写完成后点击下一步。
检查配置无错误后,点击下一步
初始化配置已经完成,而且配置信息都被保存到了"/etc/zabbix/web/zabbix.conf.php" 配置文件中,如果想要更改配置,可以通过修改此文件完成,初始化已经完成,点击结束即可。
点击完成按钮后,可以看到zabbix的登录页面,默认的管理员用户为Admin,密码为zabbix,输入用户名密码后登录
登录完成后,可以看到zabbix的仪表盘
zabbix前端支持中文切换,点击下图红标
在出现的画面中,语言选择中文,点击更新即可
以上操作完成后就能正确看到中文界面啦
后续学习持续
持续学习中,在一点一点中成长!