Zabbix-Server的安装

最后更新于 2022-05-13 1028 次阅读


工作原理

一个监控系统运行的大概的流程是这样的:

zabbix agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agent收集数据分为主动和被动两种模式:

主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy

被动:server向agent请求获取监控项的数据,agent返回数据。

Zabbix组件

zabbix由以下几个组件部分构成:

1、Zabbix Server(核心):负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行;

2、Database Storage(数据库):专用于存储所有配置信息,以及由zabbix收集的数据;

3、Web interface:zabbix的GUI接口,通常与Server运行在同一台主机上;

4、Proxy:可选组件,常用于分布监控环境中,代理Server收集部分被监控端的监控数据并统一发往Server端;

5、Agent:部署在被监控主机上,负责收集本地数据并发往Server端或Proxy端;

zabbix-server安装步骤

1、配置yum源:

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

2、下载repo文件:

wget http://mirrors.aliyun.com/repo/Centos-7.repo

备份并替换系统的repo文件:

cp Centos-7.repo /etc/yum.repos.d/;cd /etc/yum.repos.d/;mv CentOS-Base.repo CentOS-Base.repo.bak;mv Centos-7.repo CentOS-Base.repo

3、关闭selinux

编辑内核配置文件:
vi /etc/selinux/config
修改:SELINUX=enforcing改为SELINUX=disabled
注释:#SELINUXTYPE=targeted
重启虚拟机:reboot
启动后查看: /usr/sbin/sestatus -v
检查状态是否为无效,是则表示关闭,显示如下情况则正常:SELinux status:disabled
打开80端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
防火墙重新载入,是端口生效firewall-cmd --reload

4、执行yum源更新命令

yum clean all

5、更换zabbix国内源

vim /etc/yum.repos.d/zabbix.repo

更换成以下内容:

[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/\$basearch/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=0

 

 

 

6、添加gpgkey

curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX

7、更新源:

yum makecache -y

8、安装相关软件:

yum install zabbix-server zabbix-web zabbix-server-mysql zabbix-web-mysql mariadb-server mariadb zabbix-agent zabbix-get -y

9、修改PHP的时区设置

进入vi /etc/httpd/conf.d/zabbix.conf
<IfModule mod_php5.c>中的 php_value date.timezone块的注释打开并且修改时区为Asia/Shanghai, 如下:php_value date.timezone Asia/Shanghai

10、启动zabbix-server

systemctl start zabbix-server
systemctl enable zabbix-server

11、启动mysql数据库

systemctl start mariadb
systemctl enable mariadb

12、启动apache

systemctl restart httpd
systemctl enable httpd

13、数据库初始化:

mysql_secure_installation

说明: 这一步 会有多次交互,请适当选择,怎么选择请自行解决。

交互步骤:

   Enter currentr password for root (enter for none):   #直接回车
   Set root password? 【y/n】 y                         #输入y 
   New password:                                         #输入zabbix
   Re-enter new password:                                #输入zabbix
   Remove anonymous users?【y/n】y                      #输入y
   Disallow root login remotely? [y/n] n                 #输入n     
   Remove test database and access to it?[y/n] y         #输入y
   Reload privilege tables now ? [y/n] y                 #输入y

14、利用root用户创建zabbix数据库:

mysql -uroot -pzabbix -e "create database zabbix default character set utf8 collate utf8_bin;"

15、给zabbix赋所有权限:

mysql -uroot -pzabbix -e "grant all on zabbix.* to 'zabbix'@'%'  identified by 'zabbix';"
mysql -uroot -pzabbix -e "grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';"

16、导入zabbix数据

cd /usr/share/doc/zabbix-server-mysql-3.0.32
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p'zabbix' zabbix

17、修改zabbix配置文件

vim /etc/zabbix/zabbix_server.conf

DBHost=localhost #数据库所在主机
DBName=zabbix #数据库名
DBUser=zabbix #数据库用户
DBPassword=zabbix #数据库密码

18、启动zabbix及httpd

systemctl restart httpd.service
systemctl restart zabbix-server.service
systemctl restart zabbix-agent.service

19、修改vi /etc/httpd/conf.d/zabbix.conf

将以下三行注释掉:

#AllowOverride None
#Order allow,deny
#Allow from all

上面的位置下增加:

AllowOverride All
Require all granted

重启httpd
systemctl restart httpd.service

20、测试zabbix web

在物理机器浏览器上输入下面的地址:http://192.168.1.23/zabbix/setup.php --此IP为安装的服务器IP
注意:进入页面后,会需要输入一些配置信息,请按之前的配置数据库配置信息进行。
数据库账号 页面中:zabbix/zabbix
Zabbix server details 页面中name: zabbix
zabbix默认登录账户和密码:Admin/zabbix
zabbix-server同样需要配置zabbix_agent

21、配置zabbix-agentd.conf

vi /etc/zabbix/zabbix_agentd.conf
Server=                #本机IP
ServerActive=          #本机IP
Hostname=zabbix-server #主机名

重启agent:

systemctl restart zabbix-agent
systemctl enable zabbix-agent

22、配置防火墙 agent和server的通讯端口 agent:10050 server:10051

firewall-cmd --zone=public --add-port=10050/tcp --permanent
firewall-cmd --zone=public --add-port=10051/tcp --permanent
firewall-cmd --reload

验证

服务端可以使用zabbix_get命令获得客户机的项目信息,有时也用这些命令验证与客户机的联通性
1.获得客户机的版本信息:
zabbix_get -s 192.168.1.1 -k system.uname--这里的IP是客户机的IP。
2.获得客户机的cpu load信息
zabbix_get -s 192.168.1.1 -p 10050 -k "system.cpu.load[all,avg1]"--这里的IP是客户机的IP。