Zabbix 4.0 安装
参考: https://www.cnblogs.com/yaoyaojcy/p/9884130.html
1.1 Centos 准备
1.1.1 升级系统组件到最新的版本
yum update -y 更新Linux
1.1.2 关闭selinux
setenforce 0 #临时关闭命令
vi /etc/selinux/config #将SELINUX=enforcing改为SELINUX=disabled
设置后需要重启才能生效
getenforce #检测selinux是否关闭,Disabled 为关闭
1.1.3 关闭防火墙
systemctl stop firewalld.service #临时关闭firewall
systemctl disable firewalld.service #禁止firewall开机启动
1.2 搭建LAMP环境
1.2.1 安装所需所有软体仓库
Zabbix是建立在LAMP或者LNMP环境之上,在此为了方便就使用yum安装LAMP环境。
yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash
rpm -qa httpd php mariadb #安装完成后检查应用版本
1.2.2 编辑httpd
vi /etc/httpd/conf/httpd.conf
ServerName www.zabbix.com #修改为主机名
DirectoryIndex index.html index.php # 添加首页支持格式
1.2.3 编辑配置php,配置中国时区
vi /etc/php.ini
date.timezone = PRC # 配置时区
1.2.4 启动httpd,mysqld
systemctl start httpd #启动并加入开机自启动httpd
systemctl enable httpd
systemctl start mariadb #启动并加入开机自启动mysqld
systemctl enable mariadb
ss -anplt | grep httpd #查看httpd启动情况,80端口监控表示httpd已启动
ss -naplt | grep mysqld #查看mysqld启动情况,3306端口监控表示mysqld已启动
1.2.5 创建一个测试页,测试LAMP是否搭建成功
vi /var/www/html/index.php #创建一个测试页,并编辑
<?php
phpinfo()
?>
本地测试:curl http://127.0.0.1 -I #本地测试
1.2.6 初始化mysql数据库,并配置root用户密码
mysqladmin -u root password ykadmin123 #设置数据库root密码
mysql -u root -p #root用户登陆数据库
CREATE DATABASE zabbix character set utf8 collate utf8_bin; #创建zabbix数据库(中文编码格式)
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'ykadmin123'; #授予zabbix用户zabbix数据库的所有权限,密码ykadmin123
flush privileges; #刷新权限
quit #退出数据库
vi /var/www/html/index.php #修改测试页内容,测试zabbix用户是否能够登陆数据库,这个环节很重要
<?php
$link=mysql_connect('172.18.20.224','zabbix','ykadmin123');
if($link) echo "<h1>Success!!</h1>"; #显示Success表示连接数据库成功
else echo "Fail!!";
mysql_close();
?>
在浏览器中打开'172.18.20.224,验证更改生效
2. 安装zabbix
2.1 安装依赖包 + 组件
yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
yum install php-bcmath php-mbstring -y #安装php支持zabbix组件
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #会自动生成yum源文件,保证系统可以上网
yum install zabbix-server-mysql zabbix-web-mysql -y #安装zabbix组件
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p -h 172.18.20.224 zabbix #导入数据到数据库zabbix中(最后一个zabbix是数据库zabbix),且因为用户zabbix是%(任意主机),所以登录时需要加上当前主机ip(-h 172.18.20.224),密码是用户zabbix登陆密码ykadmin123
vi /etc/zabbix/zabbix_server.conf #配置数据库用户及密码
grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf #确认数据库用户及密码
vi /etc/httpd/conf.d/zabbix.conf //修改时区
将# php_value date.timezone Europe/Riga 变更成php_value date.timezone Asia/Shanghai
systemctl enable zabbix-server # #启动并加入开机自启动zabbix-server
systemctl start zabbix-server
netstat -anpt | grep zabbix //监听在10051端口上,如果没监听成功,可重启zabbix-server服务试试
建议重启服务器,再继续。
2.2 web界面安装zabbix
如果以上步骤无误,现在可以使用web打开
http://172.18.20.224/zabbix //注意这里IE浏览器打不开,本次测试使用chrome浏览器
2.3 更换语言
2.4 解决图例中文乱码的问题
从C:\Windows\Fonts 中复制字体到zabbix server服务器"/usr/share/zabbix/fonts"目录中
修改php页面指定的字体文件:vi /usr/share/zabbix/include/defines.inc.php define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans');
修改为 define('ZBX_GRAPH_FONT_NAME', 'simkai');
保存,重启web,刷新zabbix web页面
参考 http://blog.51cto.com/wsw26/2068082
3 配置网络设备打开snmp
交换机全局配置:
Config ter
snmp-server community private rw
snmp-server community public ro
Do Show snmp community | include public
参考 http://blog.sina.com.cn/s/blog_698b66a40101ey1r.html
4 在zabbix 关联网络设备
参考 http://blog.51cto.com/tryrus/1772271
需要用到getif这个软件,请自行下载。
4.1 打开软件,连接交换机
Interfaces->Start,将端口号与前面的端口ID编号记录下来。这里只需要知道交换机端口的ID编号即可
具体步骤是①建立主机群组(Host groups),②建立模板(Templates),③建立项目(Items),④建立主机(Hosts)。
按照同样的方法为Templates创建一个群组,取名为Switch Templates。
创建Template
同时我还创建了其它交换机型号的Templates,注意后面的Items,是马上将要创建的,这些创建好的Items会在后面新创建的Host上自动建立。
创建Item,创建端口Item
⑧在 processing 中队 收到的数据进行预处理
Use custom multiplier # 打上勾,并设置数值为8,如果不设置,Units的单位就是Bps。
同一个端口有In的流量也会有Out的流量,将这个型号的交换机所有端口新建成Item后,结果如下。
④Monitored by proxy 选择no proxy,并激活此主机。
Zabbix流量图表可以通过左边Zoom列表中所列的时间段来分段查看端口流量情况,可以是以1小时为区间,也可是以7天为区间,拖动⑥这横向的滚动条,可以查看前一个时间区间或后一个时间区间的流量图表。