宿主机为172.16.25.1
zabbix服务器 --》 zabbix agent(被监控端)
172.16.25.2 172.16.25.3
基本准备(系统平台为centos7.3)
1,主机名
# hostnamectl set-hostname --static zabbixserver.cluster.com
# vim /etc/hosts
172.16.25.2 zabbixserver.cluster.com
2,时间同步
3,iptables,selinux关闭
4,配置yum(本地镜像yum源和163源.可以不用epel源)
5, 配置zabbix官方yum源
# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
因为这样需要连接公网,并且它的版本也可能会更新,我的宿主机也下载了zabbix3.2.7版本的所有软件包
配置如下一段yum就可以了
[zabbix]
name=zabbix
baseurl=http://172.16.25.1/zabbix
enabled=1
gpgcheck=0
总结:一个三个yum仓库(本地iso,163,zabbix官方)
第一步:
安装zabbix和mariadb数据库
# yum install zabbix-server-mysql zabbix-web-mysql mariadb-server
第二步:
在mysql里建立存放数据的库并授权,然后导入zabbix所需要用的表和数据
# systemctl restart mariadb.service
# systemctl status mariadb.service
# systemctl enable mariadb.service
# mysql
MariaDB [(none)]> create database zabbix default charset utf8;
MariaDB [(none)]> grant all on zabbix.* to zabbix@'localhost' identified by '123';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit
第三步:
导入表数据
# zcat /usr/share/doc/zabbix-server-mysql-3.2.7/create.sql.gz |mysql -u zabbix -p123 zabbix
第四步:
配置zabbix主配置文件,并启动服务
# vim /etc/zabbix/zabbix_server.conf --找到并确认如下参数(默认值正确的可以打开注释也可以不打开.默认值不对的,要修改正确并打开注释)
ListenPort=10051
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123 --这里要对应上面的授权进行修改
DBSocket=/var/lib/mysql/mysql.sock --这里默认的socket路径不对,改成我这个路径
ListenIP=0.0.0.0
# systemctl restart zabbix-server.service
# systemctl status zabbix-server.service
# systemctl enable zabbix-server.service
# lsof -i:10051
第五步:
配置zabbix的httpd子配置文件,并启动httpd
# vim /etc/httpd/conf.d/zabbix.conf --打开时区注释,并修改成你的时区
php_value date.timezone Asia/Shanghai
# systemctl restart httpd.service
# systemctl status httpd.service
# systemctl enable httpd.service
第六步:
然后使用firefox访问,并进行安装
http://IP(zabbix服务器的IP)/zabbix
按照图示过程安装
1,welcome
2,Check of pre-requisites
3,Configure DB connection
数据库用户名填zabbix,密码填123(前面授权过的)
4,Zabbix server details
在name选项填上你zabbix服务器的IP或者主机名
5,Pre-Installation summary
6,install
完成后
登陆用户名为:admin
登陆密码为:zabbix
=========================================================================
例一,转换成中文界面(用英文的花这一步可以省略)
右上角点一个类似小人的图标--》 语言选 中文zh-cn --》 点 update
例二,使用zabbix-agent方式来监控本机
# yum install zabbix-agent --本机安装agent包
# vim /etc/zabbix/zabbix_agentd.conf --下面几个常见选项都为默认值,不用配置
Server=127.0.0.1 --zabbix服务器的IP,这里是本机
ServerActive=127.0.0.1 --zabbix服务器active check相关
ListenPort=10050 --监控服务器连接被监控客户端的端口(默认是注释的,可以打开或者不打开注释)
Hostname=Zabbix server --设定被监控客户端的名称标识
# systemctl restart zabbix-agent
# systemctl status zabbix-agent
# systemctl enable zabbix-agent
# lsof -i:10050
回到web管理界面--》点配置--》点主机--》默认看到叫Zabbix server的本机,但状态是停用的--》点击并启用
然后可以通过点图形--》选图后点预览--》看到图上有乱码
解决方法:
把原来的图形字符换成ukai字体
软件包为
ttf-arphic-ukai_0.2.20080216.1.orig.tar.gz
# tar xf ttf-arphic-ukai_0.2.20080216.1.orig.tar.gz -C /usr/share/zabbix/fonts/
# mv /usr/share/zabbix/fonts/ukai.ttc /usr/share/zabbix/fonts/ukai.ttf
# vim /usr/share/zabbix/include/defines.inc.php
45 define('ZBX_GRAPH_FONT_NAME', 'ukai'); --修改原来的graphfont字体改成ukai
做完后,不用重启服务,回到zabbix的web界面刷新查看图形就会发现没有乱码了
例三,监控远程linux
zabbix服务器 --》 zabbix agent(被监控端)
172.16.25.2 172.16.25.3
在被监控客户端上172.16.25.3安装zabbix-agent
1,配置主机名
# hostnamectl set-hostname --static agent1.cluster.com
# vim /etc/hosts
172.16.25.3 agent1.cluster.com
2,关闭iptables,selinux
3,时间同步
4,配置yum(需要zabbix官方yum源)
5,安装zabbix-agent
# yum install zabbix-agent
# vim /etc/zabbix/zabbix_agentd.conf
Server=172.16.25.2 --写上zabbix监控服务器的IP
ServerActive=172.16.25.2 --也是写上zabbix监控服务器的IP
Hostname=agent1.cluster.com --写上你的被监控客户端的主机名
# systemctl restart zabbix-agent
# systemctl status zabbix-agent
# systemctl enable zabbix-agent
# lsof -i:10050
回到web管理界面--》点配置--》点主机 --》 点创建主机
主机名称: agent1.cluster.com
可见的名称:agent1 --这个名是优先显示在监控web页面的host页面
群组: Linux servers --或者自己新建一个群组名都可以
IP地址: 172.16.25.3
--见图zabbix01.png
点模版,点选择,把 Template OS Linux 前面打勾(其它模版随意加) --》点选择 --》点添加 --最后点右下角的添加
OK之后,就能看到一共监控了两台机器了
================================================================================
--
基本概念解析:
概念一:
用户(user)
用户群组(group)
管理->用户
管理->用户群组
题目:添加一个用户群组叫usergroup1,再添加一个用户叫张三,加入usergroup1组和Zabbix administrators组
概念二:
主机和主机组
主机(hosts)代表被监控的一台机器
主机组(hostgroups)代表被监控的一组机器(主要在特别多的机器情况,方便分组区分)
操作路径:
配置->主机群组
配置->主机
概念三:
监控项(items)和应用集(applications)
监控项(items)代表搜集数据或监控的一个最小单位
应用集(applications)代表多个监控项目合成的组
例:自定义自己的监控项
zabbix服务器 --》 zabbix agent(被监控端)
172.16.25.2 172.16.25.3
zabbix server agent1
自定义监控agent1(172.16.25.3)上的用户登录数(默认有一个键值叫system.users.num可以实现监控登录用户数,但我这里实验使用的是自己定义的键值)
1,在被监控端agent1上,随意多打开几个终端
# who |wc -l
14
2,在被监控端agent1上,定义用户参数
# vim /etc/zabbix/zabbix_agentd.conf --加上下面这名定义的参数
UserParameter=loginusers,who | wc -l --loginusers是我自定义的一个键值名称(会在创建监控项时用到),后面的who |wc -l就要被监控的命令
# systemctl restart zabbix-agent --重启服务让其生效
3,在监控服务器上(172.16.25.2)先测试是否能得到被监控端的结果
# yum install zabbix-get --需要zabbix官方yum源
# zabbix_get -s 172.16.25.3 -k loginusers --使用此命令就可以得到被监控端的结果,则测试ok
14
4,web界面创建这个监控项
配置->主机->监控项(选远程agent1的监控项)->右上角点创建监控项
创建时主要要注意的是键值要写上面定义的loginusers
创建完后,在agent1的监控项列表里就能看到创建好的监控项
然后会这个监控项创建图形
配置->主机->图形(还是选的agent1的主机的图形)->右上角点创建图形->选择图形名称,并在下面添加刚才定义好的监控项--添加后,预览图形
例:
自定义监控系统(agent1)所有进程数量
UserParameter=procs,ps -ef | awk 'NR>1 {print $0}' |wc -l
自定义监控系统(agent1)mariadb的登录用户数
# yum install mariadb\*
# systemctl restart mariadb
# systemctl enable mariadb
UserParameter=mariadb_loginusers,echo $[`mysqladmin -u root processlist |wc -l`-5]
概念四:
可视化图形 Visualisation
指图形和图形里的定义(高,宽,坐标,X,Y的单位,颜色)的综合
我们使用监控项已经创建过相关的图形
概念五:
触发器trigger
定义监控项到达一个临界值或者满足一个条件,就会发现状态变化
列:把上面做的远程agent1的监控登录用户数做一个触发器(大于20个登录用户就警告)
配置->主机->触发器(选远程agent1的触发器)->右上角点创建触发器->填触发器名称->在表达式的右边点添加
选择上面做的监控agent1的登录用户数的监控项,并设置当前T值> N (N设为20)
添加完表达式后,就可以添加这个触发器了
最后可以把agent1的用户数调整大于20后,去web界面->监控中->触发器 界面可以查看到触发了
练习:
监控系统(agent1)所有进程数量,当大于250就警告,当大于400就一般严重
--
基本概念解析:
概念一:
用户(user)
用户群组(group)
管理->用户
管理->用户群组
题目:添加一个用户群组叫usergroup1,再添加一个用户叫张三,加入usergroup1组和Zabbix administrators组
概念二:
主机和主机组
主机(hosts)代表被监控的一台机器
主机组(hostgroups)代表被监控的一组机器(主要在特别多的机器情况,方便分组区分)
操作路径:
配置->主机群组
配置->主机
题目:把前面做的agent1这个被监控端换一个新的组,组名为hostgroup1,再把linux servers组删除
概念三:
监控项(items)和应用集(applications)
监控项(items)代表搜集数据或监控的一个最小单位
应用集(applications)代表多个监控项目合成的组
配置->主机->监控项(这里我选的是远程叫agent1的主机的监控项)->右上角点创建监控项
然后先随意创建一个监控项(我这里是创建一个监控free内存的监控项)
创建完成后,在这个主机的监控项列表里就可以找到你创建的监控项
配置->主机->图形(还是选的agent1的主机的图形)->右上解点创建图形
选择图形名称,并在下面添加刚才定义好的监控项
例:自定义自己的监控项
zabbix服务器 --》 zabbix agent(被监控端)
172.16.25.2 172.16.25.3
zabbix server agent1
自定义监控agent1(172.16.25.3)上的用户登录数(默认有一个键值叫system.users.num可以实现监控登录用户数,但我这里实验使用的是自己定义的键值)
1,在被监控端agent1上,随意多打开几个终端
# who |wc -l
14
2,在被监控端agent1上,定义用户参数
# vim /etc/zabbix/zabbix_agentd.conf --加上下面这名定义的参数
UserParameter=loginusers,who | wc -l --loginusers是我自定义的一个键值名称(会在创建监控项时用到),后面的who |wc -l就要被监控的命令
# systemctl restart zabbix-agent --重启服务让其生效
3,在监控服务器上(172.16.25.2)先测试是否能得到被监控端的结果
# yum install zabbix-get --需要zabbix官方yum源
# zabbix_get -s 172.16.25.3 -k loginusers --使用此命令就可以得到被监控端的结果,则测试ok
14
4,web界面创建这个监控项
配置->主机->监控项(选远程agent1的监控项)->右上角点创建监控项
创建时主要要注意的是键值要写上面定义的loginusers
创建完后,在agent1的监控项列表里就能看到创建好的监控项
然后会这个监控项创建图形
配置->主机->图形(还是选的agent1的主机的图形)->右上角点创建图形->选择图形名称,并在下面添加刚才定义好的监控项--添加后,预览图形
练习:
自定义监控系统(agent1)所有进程数量
UserParameter=procs,ps -ef | awk 'NR>1 {print $0}' |wc -l
自定义监控系统(agent1)mariadb的登录用户数
# yum install mariadb\*
# systemctl restart mariadb
# systemctl enable mariadb
UserParameter=mariadb_loginusers,echo $[`mysqladmin -u root processlist |wc -l`-4]
概念四:
可视化图形 Visualisation
指图形和图形里的定义(高,宽,坐标,X,Y的单位,颜色)的综合
我们使用监控项已经创建过相关的图形
概念五:
触发器trigger
定义监控项到达一个临界值或者满足一个条件,就会发现状态变化
列:把上面做的远程agent1的监控登录用户数做一个触发器(大于20个登录用户就警告)
配置->主机->触发器(选远程agent1的触发器)->右上角点创建触发器->填触发器名称->在表达式的右边点添加
选择上面做的监控agent1的登录用户数的监控项,并设置当前T值> N (N设为20)
添加完表达式后,就可以添加这个触发器了
最后可以把agent1的用户数调整大于20后,去web界面->监控中->触发器 界面可以查看到触发了
练习:
监控系统(agent1)所有进程数量,当大于250就警告,当大于400就一般严重
监控系统(agent1)mariadb的登录用户数,当大于50个就警告,当大于100就一般严重
概念六:
web监测(类似一个监控项)
可以对一个url页面进行监测
例:监测agent1的主页
配置->主机->web监测(选远程agent1的web监测)->右上角点创建web场景->填写名称和加入一个应用集
点步骤,然后填写名称,URL(监控的页面的路径),要求的状态码(我这里写的200,表示http协议的200状态码)
点添加后,就能看到agent1这台机器的这个web监测场景
监测中->web监测,会看到此监测有问题(原因是agent1没有安装httpd)
在agent1上安装并启动httpd服务,做好主页,再回到监测中->web监测查看,监测就ok了,说明此监测有效
扩展:为此web监测配置触发器
概念七:
事件events
各种需要管理员知悉或处理的事情(触发器事件,discovery事件,网络事件)
概念八:
自动发现(discovery)
动作(action)
例:再加一台agent2远程被监控端,通过discovery+action发现它并加上相应的监控模版
zabbix server
172.16.25.2
agent1 agent2
172.16.25.3 172.16.25.4
在agent2机器上做如下相关的准备工作
1,配置主机名,并互相都要绑定主机名
# hostnamectl set-hostname --static agent2.cluster.com
# vim /etc/hosts
172.16.25.4 agent2.cluster.com
2,关闭iptables,selinux
3,时间同步
4,配置yum(需要zabbix官方yum源)
5,安装zabbix-agent
# yum install zabbix-agent
# vim /etc/zabbix/zabbix_agentd.conf
Server=172.16.25.2 --写上zabbix监控服务器的IP
ServerActive=172.16.25.2 --也是写上zabbix监控服务器的IP
Hostname=agent2.cluster.com --写上你的被监控客户端的主机名
# systemctl restart zabbix-agent
# systemctl status zabbix-agent
# systemctl enable zabbix-agent
# lsof -i:10050
准备好agent2后,回到zabbix server的web界面进行操作
配置->自动发现
默认有一个叫Local network的发现规则,这次就不创建新的规则了,直接修改这个Local network规则就好
主要修改了我们的试验网段为172.16.0.0/16
开把 已启用 打勾
--见图zabbix22.png
修改完后点更新
然后在监测中->自动发现 里查找已经发现的设备(我这里使用172.16.0.0/16的网段,范围大,测试的速度很慢)
--见图zabbix23.png
继续配置动作action
配置->动作->右上角事件源选自动发现
然后会发现一个默认的叫Auto discovery. Linux servers的动作,直接启用就好
--见图zabbix24.png
最后过段时间去配置->主机 里查看,会发现把discovery的主机自动加到了配置里了
--见图zabbix25.png
概念九:
宏,巨集(macros)
类似于传参数的变量
概念十:
通知(notification)
出现报警事件或者触发器触发,进行通知
通知类型默认有:email,jabber,短信(sms).其它方式比如微信,需要自行开发接口;还可以定义shell脚本报警
例:定义脚本报警类型,并分配给admin用户使用
# vim /usr/lib/zabbix/alertscripts/notification.sh --写一个简单的通知脚本,路径要放在此目录下(由主配置文件里的AlertScriptsPath参数决定)
#!/bin/bash
to=$1
subject=$2
body=$3
cat <<EOF | mail -s "$subject" "$to"
$body
EOF
# chmod 755 /usr/lib/zabbix/alertscripts/notification.sh
管理->报警媒介类型->创建媒体类型 (名称写脚本报警,类型选脚本,脚本名称写notification.sh,加三个参数分别写上三个宏变量,见图),最后点添加
加好后,结果如下
分配这个报警类型给用户admin
管理->用户-> admin->报警媒介->添加
概念十一:
模版(templates)
代表监控项,应用集,触发器,图形,自动发现规则,web监测等的组合
用于在监控时直接应用到一台被监控的主机
配置->模版
概念十二:
批量更新
配置->主机->选取要批量更新的主机(前面打勾)->选择下面的批量更新选项->执行相应的更新动作
导入导出
配置->主机->选取要导出的主机(前面打勾)->下面选择导出->默认会导出到你使用浏览器的机器的/root/Downloads/
配置->模版->选取要导出的模版(前面打勾)->下面选择导出->默认会导出到你使用浏览器的机器的/root/Downloads/
练习:把本机的一个模版删除,然后从同桌的zabbix服务器那导出成xml文件,并拷贝过来导入
概念十三:
虚拟机监控
概念十四:
通过代理实现分布式监控
zabbix server ------ zabbix proxy ---- 被代理和被监控的机器(agent)
zabbix更改中文字体编码
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
有趣的CSS - 故障字体效果
用 css 实现一个404故障字体效果。
css 动效 故障效果 404动画 ux -
[ubuntu] 中文字体
安装软件:sudo apt-get install fontmatrix然后把windows上的ttc文件复制到ubuntu
Ubuntu Windows 文件复制 ubuntu 安装软件 -
中文字体安装
中文字体安装首先在windows的”控制面板”->”字体”中,将自己要的字体复制出来。上传通过 xftp 工具上传到 linux 服务器接下来
linux 服务器 bash 原力计划 java -
ItextAsian中文字体
ItextAsian中文字体使用iTextAsian.jar中的字体 BaseFont.createFont("STSong-Light", "
java c# 中文字体 Windows jar -
onlyoffice6.1.1导入中文字体显示中文字体名称
熟悉的朋友都知道,OO对中文字体的支持就是不支持中文字体名称。
onlyoffice 文档协作 javascript 中文字体 打开文件 -
CSS 中文字体
轉自:http://www.lbsfans.cn/article.asp?id=283今天在对原创草根
css 中文字体 microsoft 百度 字体设置