zabbix 安装和添加监控配置

zabbix 术语
zabbix 是一款开源免费的监控软件,目前广泛用于企业监控中,可以监控主机、交换机、路由器、UPS等等。
zabbix 可以采用以下方式进行监控
agent:通过专用的代理程序进行监控,与常见的master/agent模型类似,如果被监控对象支持对应的agent,推荐首选这种方式。
ssh/telnet:通过远程控制协议进行通讯,比如ssh或者telnet。
SNMP:通过SNMP协议与被监控对象进行通讯,一般监控网络设备例如交换机路由器防火墙等会采用这种协议。
IPMI:通过IPMI接口进行监控,我们可以通过标准的IPMI硬件接口,监控被监控对象的物理特征,比如电压,温度,风扇状态,电源状态等。
JMX:通过JMX进行监控,JMX(Java Management Extensions,即Java管理扩展),用这个来监控JVM虚拟机。
zabbix 组件: 
zabbix agent:部署在被监控主机上,负责被监控主机的数据,并将数据发送给zabbix server。
zabbix server:负责接收agent发送的报告信息,并且负责组织配置信息、统计信息、操作数据等。
zabbix database:用于存储所有zabbix的配置信息、监控数据的数据库。
zabbix web:zabbix的web界面,管理员通过web界面管理zabbix配置以及查看zabbix相关监控信息,可以单独部署在独立的服务器上。

zabbix proxy:可选组件,用于分布式监控环境中,zabbix proxy代表server端,完成局部区域内的信息收集,最终统一发往server端。


 


zabbix 安装
以centos 7 为例:
zabbix 官方软件包安装地址:http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/
在zabbix server 端:yum install zabbix-server-mysql (server-mysql 是用来连接数据库用的,web 和web-mysql是用来图形化操作用的)
zabbix 被监控端:yum install zabbix-agent  zabbix-sender (sender 是用来主动发送给server端的)
管理zabbix server的客户端:yum install http php zabbix-web zabbix-web-mysql (这个也可以和zabbix server在同一台机器上,需要安装http是因为
要通过http 访问和修改zabbix server 配置,安装php 是因为zabbix 的网页呈现是通过php 写的)
远端的数据库192.168.10.33要对zabbix 进行授权:
MariaDB [(none)]> create database zbxdb character set 'utf8';  
MariaDB [(none)]> grant all on zbxdb.* to zbxuser@'192.168.%' identified by 'centos'; 


在zabbix server端 [root@localhost ~]# rpm -ql zabbix-server-mysql 会发现 生成 /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz
文件,需要把该文件解压缩并导入到数据库中,操作如下:
uzip /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz  
mysql -uzbxuser -pcentos -h192.168.10.33 -Dzbxdb <create.sql   把解压后的文件导入到远端数据库中。
至此 zabbix 的server 和agent 安装已经完成了,注意zabbix server一定要能够访问数据库,否则zabbix 会不能正常启动的!


zabbix 启动
在zabbix server 端 vim /etc/zabbix/zabbix_server.conf 
ListenPort=10051  不需要改默认就是这个端口
SourceIP=         指定源ip 也可以不写
DBHost=192.168.10.33   mysql 服务器ip,如果在同一台机器上就写localhost
DBName=zbxdb  通过DBName指定zabbix数据库对应的名称
DBUser=zbxuser 通过DBUser指定zabbix数据库用户名
DBPassword=centos 
DBPort=3306


配置http ,这里采用虚拟主机

vim /etc/httpd/conf.d/zabbix.conf 
#
# Zabbix monitoring system php web frontend
#
<virtualhost 192.168.10.34:80>
documentroot /usr/share/zabbix
Alias /zabbix /usr/share/zabbix


 <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 Asia/Shanghai   #修改时区
        
........此处省略一万字


</virtualhost>




配置完成后重启zabbix-server  和httpd  服务 就可以了。确保zabbix-server 10051 存在的 如果没有的话请检查zabbix server 和mysql的连接情况。 

在电脑上输入: http://192.168.10.34/zabbix/setup,会看到如下界面:  



添加zabbix 监控项

1. 点击 配置 -----> 主机-----> 创建主机


2.  如下图所示:  主机名称要和zabbix-agent 配置文件中hostname 保持一致,否则在zabbix agent 主动发送的时候server端无法识别。可见的名称 填你想用来的标识的名称,配置完成后点击最下面的update。


3 。添加监控项,这里以添加接口的带宽为例,键值的选项很多,很复杂,参考 https://www.zabbix.com/documentation/3.4/zh/manual 


4 添加触发器



触发器的语法也较为复杂,这里列举一些触发器的写法。

触发器表达式:
{<server>:<key>.<function>(<parameter>)}<operator><constant>
示例1
{www.zabbix.com:system.cpu.load[all,avg1].last()}>5
它指定了服务器是“www.zabbix.com”,监控项的键值是“system.cpu.load[all,avg1]”。通过使用函数“last()”获取最近一次获取的值。最后,“>5”表示来自主机www.zabbix.com的最后一次获取的负载值大于5时触发器就会进入PROBLEM状态。
示例 2
{www.zabbix.com:system.cpu.load[all,avg1].last()}>5 or {www.zabbix.com:system.cpu.load[all,avg1].min(10m)}>2 
当负载大于5或者最近10分钟内负载大于2,表达式为“TURE”,就会使触发器进入PROBLEM状态。

示例 3
{www.zabbix.com:vfs.file.cksum[/etc/passwd].diff()}=1
当文件/etc/passwd检查的checksum值与最近的值不同时,表达式为“TURE”,就会使触发器进入PROBLEM状态。 同样的表达式还可以用于监控重要的文件,比如文件/etc/passwd、/etc/inetd.conf、/kernel等等。
示例 4

{www.zabbix.com:net.if.in[eth0,bytes].min(5m)}>100K
当网络适配器“eth0”在5分钟内接收的字节大于100KB,表达式为“TURE”,就会使触发器进入PROBLEM状态。

示例 5

{smtp1.zabbix.com:net.tcp.service[smtp].last()}=0 and {smtp2.zabbix.com:net.tcp.service[smtp].last()}=0
当SMTP服务器“smtp1.zabbix.com”和“smtp2.zabbix.com”都停止,表达式为“TURE”,就会使触发器进入PROBLEM状态。

关于触发器更多的语法和说明请参考官方文档:https://www.zabbix.com/documentation/3.4/zh/manual/config/triggers/expression

5 查看告警

点击 检查中  ------>  问题 ----> 会看到有问题的告警



6 告警媒介


选择  管理------> 报警媒介类型  这里以电子邮件为例,填上你想发送的电子邮件信箱,只要邮箱服务器允许接受你的邮件的话 ,发生告警后你的邮箱就会收到告警信息啦!






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值