###centos6安装zabbix-2.4版##
#官方zabbix2.4安装手册:https://www.zabbix.com/documentation/2.4/manual
#官方zabbix3.2安装手册:https://www.zabbix.com/documentation/3.2/manual
#Zabbix网络拓扑
Server主控端:192.168.10.1
agent被控端:192.168.10.25,192.168.10.26
agent被控端:192.168.20.11,192.168.20.12
说明:1、zabbix2.4和zabbix3.x版的安装不同之处主要在于导入*.sql数据库的方法不同,其他配置完全相同。
2、如果在安装zabbix3.2的版本,只需要把zabbix软件网络yum源中的2.4替换成3.2即可。
3、如果在centos7中安装部署,只需要把软件包的网址中的6换成7即可下载软件包。
====准备篇=Zabbix简介====
第1章Zabbix 基本使用
1-1课程大纲
1-2常见监控系统介绍
1-3zabbix 组件介绍
1-4zabbix 架构详解
1-5Zabbix安装(一)
1-6Zabbix安装(二)
1-7zabbix 监控自己本身
1-8zabbix监控第一台主机
1-9zabbix汉化
1-10zabbix 监控项详解
1-11zabbix 触发器详解
1-12zabbix 触发器确认
1-13zabbix 报警配置
1-14zabbix 报警配置脚本
第2章Zabbix高级使用
2-1zabbix 自定义key
2-2zabbix自定义图形
2-3zabbix自定义模板
第3章Zabbix项目实战
3-1zabbix 监控Nginx
3-2zabbix 监控PHP-fpm
====第1篇=Zabbix基本使用====
#说明:本案例完全参照官网进行安装,测试全部OK。下面正式开始。
实施思路:
具体实施步骤:
第1步,安装zabbix2.4的yum源。
官方参考:https://www.zabbix.com/documentation/2.4/manual/installation/install_from_packages
必装:rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
选装:rpm -ivh http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm
第2步,安装zabbix相关软件。
官方参考:https://www.zabbix.com/documentation/2.4/manual/installation/install_from_packages/server_installation_with_MysqL
说明:centos6和7都缺少PHP-bcmath、PHP-mbstring这两个软件包,需要到网上下载。https://share.weiyun.com/c065b147c5cc1b5ba0bb7810e19a63da。如果无法下载,请联系QQ:2559721591的用户重新分享。
yum install -y PHP-bcmath PHP-mbstring createrepo
yum install -y zabbix-server zabbix-agent zabbix-server-MysqL zabbix-web-MysqL
yum install -y curl elinks lynx mlocate #安装http的客户端软件
updatedb
说明:1、在安装zabbix这两个软件包时,自动会安装依赖包zabbix主程序、httpd和PHP软件。
2、zabbix-server是服务器端的软件包(管理端,主控端)。
3、zabbix-agent是客户端的软件包(被管理端,被控端)。
3、zabbix-server-MysqL是服务器端的数据库软件包。
4、zabbix-web-MysqL是zabbix的web管理平台数据库。
技巧:下载zabbix软件包到本地主机的/zabbix目录。
yum -y install -downloadonly -downloaddir=/zabbix/ zabbix-server zabbix-agent zabbix-server-MysqL zabbix-web-MysqL
createrepo /zabbix/
第3步,安装MysqL-server,并启动服务。创建数据库管理员账号。
yum install -y MysqL-server MysqL
service MysqLd restart
chkconfig MysqLd on
MysqL -e "grant all on *.* to admin@'%' identified by 'admin' with grant option;"
MysqL -e "grant all on *.* to zabbix@'%' identified by 'zabbix';"
MysqL -e "grant all on *.* to zabbix@'localhost' identified by 'zabbix';"
MysqL -e "grant all on *.* to zabbix@'127.0.0.1' identified by 'zabbix';"
MysqL -e "select user,host,password from MysqL.user;flush privileges;"
echo 'ServerName zabbix' > /etc/httpd/conf.d/srv.conf
echo '<?PHP PHPinfo() ?>' >/var/www/html/p.PHP
cat > /etc/httpd/conf.d/zb_PHP.conf <<-EOF
<IfModule mod_PHP5.c>
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
PHP_value date.timezone Asia/Shanghai
</IfModule>
EOF
service httpd restart
chkconfig httpd on
elinks 127.0.0.1/p.PHP 测试LAMP环境是否正常
首先,建zabbix库,建zabbix账号。
rpm -q zabbix-server-MysqL
id zabbix || useradd -r zabbix
MysqL -uroot -e "create database zabbix character set utf8 collate utf8_bin;"
MysqL -uroot -e "grant all privileges on *.* to zabbix@localhost identified by 'zabbix';"
MysqL -e "select user,password from MysqL.user;flush privileges;"
然后,导入zabbix数据库,并查看zabbix库中的表。
updatedb
cd $(dirname $(locate images.sql))
MysqL -uroot -e "create database zabbix character set utf8 collate utf8_bin;show databases;"
MysqL -uroot zabbix < schema.sql
MysqL -uroot zabbix < images.sql
MysqL -uroot zabbix < data.sql
MysqL -uroot -e "show databases;use zabbix;show tables;"
附加说明:此方法是zabbix3.x版导入数据库文件的方法。
updatedb
cd $(dirname $(locate create.sql.gz))
MysqL -uroot -e "create database zabbix character set utf8 collate utf8_bin;show databases;"
zcat /usr/share/doc/zabbix-server-MysqL-3.2.*/create.sql.gz | MysqL -uroot zabbix
MysqL -uroot -e "show databases;use zabbix;show tables;"
vi /etc/zabbix/zabbix_server.conf 修改并启用如下内容
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix 与数据库中zabbix账号的密码一致
说明:A、数据库密码一定要正确,否则不能正常启动zabbix-server服务。
B、配置文件中只需要修改DB相关的配置就能正常使用了。(金测OK)
检验配置文件:grep -Env '^#|^$' /etc/zabbix/zabbix_server.conf 内容如下
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
81: DBHost=localhost
91:DBName=zabbix
107:DBUser=zabbix
115: DBPassword=zabbix
287:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
413:Timeout=4
455:AlertScriptsPath=/usr/lib/zabbix/alertscripts
465:ExternalScripts=/usr/lib/zabbix/externalscripts
501:LogSlowQueries=3000
第7步,启动zabbix的相关服务。
service zabbix-server restart
service zabbix-agent restart
chkconfig zabbix-server on
chkconfig zabbix-agent on
netstat -atunlp|grep zabbix
查zabbix进程:
netstat -atunlp|grep zabbix 结果如下(说明OK了)
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 11715/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 11641/zabbix_server
tcp6 0 0 :::10050 :::* LISTEN 11715/zabbix_agentd
tcp6 0 0 :::10051 :::* LISTEN 11641/zabbix_server
第8步,配置zabbix的web管理平台。
首先,在浏览器中输入127.0.0.1/zabbix进入初始化配置向导界面。
然后,点击next下一步,只要看到全部是ok,继续点下一步。
然后,在数据库账号、密码界面输入账号zabbix,密码zabbix。
最后,继续点next下一步,直到初始化配置完成。
第9步,登录zabbix的web管理平台。
首先,首先,在浏览器中输入127.0.0.1/zabbix进入登录界面。
然后,输入账号Admin,密码zabbix,点登录进入。
最后,在zabbix的web管理平台中进行监控管理。
第10步,熟悉zabbix的web监控平台的各项管理功能。
首先,web界面汉化设置:点右上角的"prfile(基本资料)"图标,改语言为chinese(zh_CN),点update更新即可。
然后,上传"中文字体",从windows中上传一个"楷体或宋体"到zabbix服务器上。
从win7系统的c:\windows\fonts文件夹中复制"楷体或宋体"字体到本机,然后用scp到zabbix的server主机。
scp /root/SIMKAI.TTF root@192.168.10.25:/usr/share/zabbix/fonts/simkai.ttf
注意:区分SIMKAI.TTF大小写,上传后的文件名为小写字母,否则部分中文无法正常显示。
然后,修改/usr/share/zabbix/include/defines.inc.PHP网页字体定义文件。
sed -ri 's@graphfont@simkai@' /usr/share/zabbix/include/defines.inc.PHP
最后,在firefox或IE浏览器中访问zabbix服务器的web管理页面,点"监测中/图形",然后选如下分支。
群组:zabbix server 主机:zabbix server 图形:cpu jumps或cpu load
注意:如果没有被监控的主机,请执行下一个项目任务,添加server本机的监控
================================
项目二、监控zabbix-server本机
第1步,(不用做)在zabbix-server端安装zabbix-agent客户端,并启动agent服务。
yum install -y zabbix-agent
service zabbix-agent restart
chkconfig zabbix-agent on
注意:为什么可以不用做?因为我们在前面已经安装并启动过zabbix-agent客户端服务了。
第2步,(不用做)修改zabbix_agentd.conf配置文件,请核对修改后的全文内容。grep -Env '^#|^$' /etc/zabbix/zabbix_agentd.conf
注意:为什么可以不用做?因为zabbix-agent客户端默认配置文件就是这个内容。务必查看来核实配置文件内容。
13:PidFile=/var/run/zabbix/zabbix_agentd.pid 进程pid文件
32:LogFile=/var/log/zabbix/zabbix_agentd.log 日志文件
43:LogFileSize=0 日志文件大小,0为不限制
95:Server=127.0.0.1 手动添加时的主控端IP地址
136:ServerActive=127.0.0.1 自动发现的主控端IP地址
147:Hostname=Zabbix server 主机名
265:Include=/etc/zabbix/zabbix_agentd.d/*.conf 包含分支配置文件
第3步,重启服务(必做)。
service zabbix-agent restart
第4步,在zabbix的web管理界面中查看本机是否被监控(必做)。
zabbix管理主界面,点"组态/主机",在下端列表中选"Zabbix server"点"状态/已停用",状态变成"已启用"即可。
第5步,查看监控信息。在主界面最顶部依次点"监测中/图形",然后选要查看的分支参数。
群组:zabbix server 主机:zabbix server 图形:cpu jumps或cpu load
================================
项目三、监控第1台主机
目标:1、安装agent被控主机。
2、将agent添加到主控端的web管理平台。
第1步,安装zabbix2.4的yum源。
官方参考:https://www.zabbix.com/documentation/2.4/manual/installation/install_from_packages
必装:rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
选装:rpm -ivh http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm
第2步,安装zabbix相关软件。
官方参考:https://www.zabbix.com/documentation/2.4/manual/installation/install_from_packages/agent_installation
yum install -y zabbix-agent
yum install -y curl elinks lynx mlocate #安装http的客户端软件
updatedb
第3步,启动zabbix-agent客户端程序。
service zabbix-agent restart
chkconfig zabbix-agent on
vi /etc/zabbix/zabbix_agentd.conf 修改内容如下
Server=192.168.10.25 主控端的IP地址(手动添加到server监控列表中)
ServerActive=192.168.10.35 被动控制模式的监控服务器(自动发现并添加到server监控列表中)
Hostname=testpc 本机主机名(在监控列表中的主机名)
第5步,在agent被监控端重启服务,并在主控端添加要监控的主机。
service zabbix-agent restart
firefox 192.168.10.25/zabbix
==============
项目四、在zabbix服务端添加要监控的主机。
第1步,在浏览器中输入127.0.0.1/zabbix进入管理界面。
第2步,在主界面的"组态/主机/创建主机"。
第3步,在创建主机界面依次填入以下内容:
主机名:testpc
群组:Linux servers
agent代理程序接口:IP 192.168.10.11
第4步,点击添加即可。
第5步,给testpc主机添加监控项模板。
首先,在"组态/主机"的主界面中点testpc主机。
然后,在testpc主机设置界面中点"模板",再点"选择模板",这里选"Template OS Linux"这个模板。
然后,点"添加"按钮,再点"更新",检验设置是否更新。
最后,查看testpc的监控信息。在管理主界面中点"监测中",点"图形",然后选要查看的分支参数。
群组:zabbix server 主机:zabbix server 图形:cpu jumps或cpu load
================================
项目、zabbix监控项详解
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
问题:监控项的作用是什么?
案例目标:创建80端口的监控项。
实战步骤:
第1步,在zabbix的主管理界面的"组态/主机",在下方主机列表中执行相关操作。
第2步,在列表中点某台主机的"监控项(39)"。会显示Zabbix自带的监控项。
第3步,在右上角点"创建监控项"。依次输入如下信息。
名称:httpd_status
类型:zabbix客户端
键值:根据需要选择,本例选net.tcp.service[service,<ip>,<port>]
主机接口:192.168.10.25:10050
....
应用集:依次选cpu、Memory、OS、Processes选项
填入主机资产纪录:软件
描述:web服务器监控
已启用:勾选
点"添加"按钮,完成操作。
第4步,验证监控项是否添加成功。
点监控项,查看"监控项"列表中是否有"http_status".
================================
项目:zabbix 触发器详解
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
问题:触发器的作用是什么?
案例目标:创建http服务状态的触发器。
实战步骤:
第1步,在zabbix的主管理界面的"组态/主机",在下方主机列表中执行相关操作。
第2步,在列表中点某台主机的"触发器(19)"。会显示Zabbix自带的触发器。
第3步,在右上角点"创建触发器"。依次输入如下信息。
名称:http port 80
严重性:一般严重
表达式:点添加,依次选择设置参数,确定后的结果{192.168.10.25:net.tcp.service[service,<port>].last()}=0
事件成功迭代:表达式
问题事件生成模式:单个
事件成功关闭:所有问题
允许手动关闭:勾选
描述:可不填
已启用:勾选
点"添加"即可。
第4步,在触发器列表中查看是否有"http port 80"触发器名称。
第5步,在监测中查看状态。
后面的只列出了大纲标题未写完,待续....
================================
项目:zabbix 触发器确认
================================
项目:zabbix 报警配置
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
问题:报警的作用是什么?
================================
项目:zabbix 报警配置脚本
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
====第2篇=Zabbix高级使用====
项目、zabbix自定义key
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
================================
项目、zabbix自定义图形
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
================================
项目、zabbix自定义模板
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html
================================
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html项目、zabbix自动发现(批量添加主机)。
====第3篇=Zabbix项目实战====
项目、zabbix监控Nginx状态
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html项目、zabbix自动发现(批量添加主机)。
================================
项目、zabbix监控PHP-fpm状态
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html项目、zabbix自动发现(批量添加主机)。
================================
官方文档:https://www.zabbix.com/documentation/2.4/manual/config/items/item
中文博客:http://tshare365.com/archives/2000.html项目、zabbix自动发现(批量添加主机)。