zabbix默认的 服务端监听端口为10051,而被监控端即Zabbix——agents代理程序监控10050端口。
更新yum源:
yum clean all
yum makecache
需要配置网络yum源,我这配置的是阿里的
CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装阿里的yum源后:
安装数据库,apahce,php和php-mysql
yum install httpd php php-mysql mariadb mariadb-server -y
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
yum -y install zabbix-server-mysql zabbix-web-mysql
三、安装LAMP服务:
1、安装mysql
从最新版本的Linux系统开始,默认的数据库是Mariadb,不是mysql
在此使用系统自带的 Mariadb数据,使用repos安装,比较简单
(1)使用yum源安装Mariadb数据库:
yum install -y mariadb mariadb-server
(2)启动mariadb,以前的服务管理命令还可以用,(例如:service mariadb start)
systemctl start mariadb
ps -ef | grep mariadb
(3)设置开机自启动
systemctl enable mariad
(4)安全初始化,设置root密码等:
mysql_secure_installation
(5)测试登录数据库:
mysql -uroot -p123456
(6)配置MariaDB的字符集
vim /etc/my.cnf
在[mysqld]标签下添加:
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
vim /etc/my.cnf.d/client.cnf
在[client]中添加
default-character-set=utf8
vim /etc/my.cnf.d/mysql-clients.cnf
在[mysql]中添加
default-character-set=utf8
全部配置完成,重启Mariadb
systemctl restart mariadb
2、安装Apache软件:
(1)使用yum源安装Apache软件:
yum -y install httpd
(2)启动httpd服务
systemctl start httpd.service
(3)添加开机自启动服务
systemctl enable httpd
(4)查看服务状态:
systemctl status httpd.service
3、安装PHP服务
(1)yum源安装PHP服务
yum -y install php
(2)安装php-mysql:
php-mysql是一个用于让PHP程序使用MYSQL数据库的模块。需要安装改模块,使用命令:
yum -y install php-mysql
(3)重启httpd服务
systemctl restart httpd
ps aux | grep httpd
(4)测试Apache能够调用PHP
安装完成后,PHP会生成配置文件/etc/httpd/conf.d/php.conf,因为该配置文件在/etc/httpd/conf.d目录下,所以它会被Apache所读取。PHP还会生成配置文件/etc/httpd/conf.modules.d/10-php.conf,该配置文件也会被Apache所读取,它的设定让Apache可以加载PHP模块。不过,PHP软件本身的配置文件其实是/etc/php.ini。
可以测试: 为了测试Apache能不能正常调用PHP,在/var/www/html目录下新建一个phpinfo.php文档,内容如下所示:
<?php phpinfo (); ?> //其中的<?php ?>是PHP程序的语法,phpinfo ();则是PHP程序提供的一个函式库
cd /etc/www/html
vim phpinfo.php
浏览器访问:
四、安装Zabbix
1、zabbix 安装包下载地址:
https://www.zabbix.com/download_sources
2、官方文档说明:
https://www.zabbix.com/documentation/3.4/manual/installation/install_from_package
3、导入软件安装源:
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
4、安装zabbix包:
yum -y install zabbix-server-mysql zabbix-web-mysql
5、给zabbix服务端安装上客服端服务 # #如果代理服务器不是本机的话,这步不用做,后续还有安装agent教程
yum -y install zabbix-agent
6、初始化数据库
#创建数据库;
mysql -uroot -p123456
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
7、数据库配置
进入到这个目录:
cd /usr/share/doc/zabbix-server-mysql-4.0.0/
运行命令:
zcat create.sql.gz | mysql -uroot -p zabbix (输入数据库的密码) 如果-u后面是root就输入root的密码,如果是zabbix的话,就输入zabbix的密码
8、启动zabbix server服务
编辑 /etc/zabbix/zabbix_server.conf 修改server的配置文件
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
82:SocketDir=/var/run/zabbix
101:DBName=zabbix //访问数据库名称
117:DBUser=zabbix //zabbix访问数据库用户
125:DBPassword=admin123 //配置文件中只需修改本行,zabbix访问数据库密码
347:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
465:Timeout=4
507:AlertScriptsPath=/usr/lib/zabbix/alertscripts
517:ExternalScripts=/usr/lib/zabbix/externalscripts
553:LogSlowQueries=3000
启动zabbix服务,设置开机自启动
systemctl start zabbix-server
systemctl enable zabbix-server
9、编辑zabbix前端的PHP配置
vi /etc/httpd/conf.d/zabbix.conf
上面的时区是注释的,需要取消注释
10、设置时钟同步
安装ntpdate服务:
yum -y install ntp
配置ntp配置文件
vim /etc/ntp.conf
ntpdate cn.pool.ntp.org
11、启动Apache服务
systemctl start httpd
systemctl enable httpd
为防止web界面中文乱码现象,需要将相应字体文件复制,使zabbix识别
cp STKAITI.TTF /usr/share/zabbix/fonts/
使zabbix系统识别字体
vim /usr/share/zabbix/include/defines.inc.php
:%s /graphfont/kaiti/g //采用全局替换模式
zabbix基本配置完成,启动服务,实现web界面安装
systemctl enable zabbix-server
systemctl start zabbix-server
netstat -anpt | grep zabbix //监听在10051端口上
systemctl restart httpd.service
五、网页登录zabbix进行配置
1、使用浏览器,输入IP地址,登录zabbix
http://192.168.40.134/zabbix/setup.php 如果没有反应,重新zabbix,http,再次输入网址尝试
2、点击下一步,然后检测配置是否正确:
这里如果显示时区问题,去vi /etc/httpd/conf.d/zabbix.conf修改
3、然后点击下一步,配置数据库连接:
用户名:zabbix 密码:zabbix
4、然后点击下一步,设置zabbix-server地址和端口:
5、查看已配置的信息:
6、zabbix服务安装成功,点击完成:
7、 显示登录界面(默认用户名:Admin 默认密码:zabbix):
六、zabbix语言设置
1、将语言改为中文
vim /usr/share/zabbix/include/locales.inc.php
找到第56行,将false改为true,zabbix 3.4版本以后的 默认支持中文的
Win+R打开运行窗口,输入fonts,回车进入window系统的字体目录,然后找到 微软雅黑-常规字体,复制出来将其文件名修改为msyh.ttf,然后上传到/usr/share/zabbix/fonts
cd /usr/share/zabbix/fonts/
ls
上传成功后,编辑文件
vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME', 'graphfont'); 改为:define('ZBX_GRAPH_FONT_NAME', 'msyh');
define('ZBX_FONT_NAME', 'graphfont'); 改为:define('ZBX_FONT_NAME', 'msyh');
编辑完成后,保存退出,然后刷新网页。
七、zabbix基本设置
1、页面设置成中文:
点击usr按钮,然后设置为中文界面:
更改背景为黑色;
设置完成后,zabbix3.4版本后,显示能够显示整个屏幕
2、新版本的zabbix,能够对仪表盘进行编辑,对各个模块进行编辑:
zabbix-agent操作:
1.安装agent
centos7:
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
centos6:
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/6/x86_64/zabbix-release-3.5-1.el6.noarch.rpm
下载完执行
yum clean all
yum makecache
2.编辑代理配置文件
vim /etc/zabbix/zabbix_agentd.conf
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
98:Server=192.168.144.113 //zabbix服务器地址
139:ServerActive=192.168.144.113 //活跃服务器地址
150:Hostname=test
268:Include=/etc/zabbix/zabbix_agentd.d/*.conf
编写/etc/hosts文件,将zabbix的主机和主机名写入到hosts文件中
3.web管理界面添加被管理主机
配置邮箱报警功能
1、配置自动邮箱发送
yum install mailx -y
vim /etc/mail.rc 编辑mailx配置文件
set from=377909726@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=377909726@qq.com
set smtp-auth-password=邮箱密码
set smtp-auth=login
测试邮箱软件是否可用
echo "hello world" | mail -s "testmail" 377909726@qq.com //测试发信正常
2、编写邮件发送脚本
邮件发送触发脚本一定要写在zabbix指定的alterscripts目录下,后面直接指定脚本名称即可触发。
vim /usr/lib/zabbix/alertscripts
#!/bin/bash#send mail
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1
touch /tmp/mailx.log
chown -R zabbix.zabbix /tmp/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
chown -R zabbix.zabbix /usr/lib/zabbix/
测试发邮件脚本是否可以正常工作
./mailx.sh 377909726@qq.com "主题" "内容"
3、配置服务监控自动触发邮件发送脚本
告警主机:{HOST.NAME}
告警IP:{HOST.IP}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}:{ITEM.VALUE}
时间_ID:{EVENT_ID}
4、在被监控主机模拟故障
关闭被监控主机的httpd服务,验证邮箱接收情况。
这篇文章总结了几位大牛的文章,但是网页被我关掉了,如果有大牛看到的话,请及时联系我,我在文末加上批注来源。多谢大牛分享经验