Centos7.0 64位搭建zabbix3.0监控

一、      Zabbix简介

Zabbix是一个机遇WEB界面的提供分布式监控以及网络监控功能的企业级的开源解决方案。Zabbix server可以通过snmp、zabbix agent、ping及自定义脚本的方式收集监控数据并展示。

二、      安装zabbix server3.0

1、 系统:centos7.0 64位

2、 根据zabbix server3.0的官方要求,目前zabbix server3.0无法在centos6.x系统上进行yum安装。如果要在centos6上面安装zabbix server3.0,建议通过源码方式进行编译安装,同时需要注意php的版本,但是zabbix-agent3.0在centos6系统上可以通过yum安装。

1.1搭建lamp环境

#wget -P /etc/yum.repos.d http://mirrors.aliyun.com/repo/Centos-7.repo

zabbix:zabbix3.0安装部署及邮件告警_第1张图片

centos7自带的MySQL为mariadb,可通过如下命令查看:

#yum search mysql | tac

zabbix:zabbix3.0安装部署及邮件告警_第2张图片

开始yum安装lamp环境

#yum install –y mariadb mariadb-server php php-mysql httpd

image.png

可以看出centos7默认安装php5.4、http2.4、mariadb5.5

Lamp安装完成后,首先配置MySQL

#systemctl enable mariadb

#systemctl start mariadb

zabbix:zabbix3.0安装部署及邮件告警_第3张图片

初始化数据库:

# mysql_secure_installation

zabbix:zabbix3.0安装部署及邮件告警_第4张图片

zabbix:zabbix3.0安装部署及邮件告警_第5张图片

注:centos7上面的MySQL密码默认为空

查看数据库已正常启用

#netstat –antlp

zabbix:zabbix3.0安装部署及邮件告警_第6张图片

接下来创建zabbix数据库及用户并授权

# mysql -uroot -p -e "create database zabbix default character set utf8 collate utf8_bin;"

# mysql -uroot -p -e "grant all on zabbix.* to 'zabbix'@'%' identified by 'zabbix';"

zabbix:zabbix3.0安装部署及邮件告警_第7张图片

测试新建zabbix用户是否可以正常连接MySQL数据库

#mysql –uzabbix –pzabbix

#show databases;

zabbix:zabbix3.0安装部署及邮件告警_第8张图片

可以看出zabbix用户可以正常连接MySQL

启动Apache并开放80端口

#systemctl enable httpd

#systemctl start httpd

#netstat –tunl

#firewall-amd --zone=public --add-port=80/tcp --permanent

#firewall-cmd --reload

zabbix:zabbix3.0安装部署及邮件告警_第9张图片

以上就完成了lamp环境的搭建。

    1.2、安装zabbix server3.0

     更新zabbix3.0所需的epel源和zabbix的yum源

 rpm -ivh http://mirrors.aliyun.com/epel/7/x86_64/e/epel-release-7-9.noarch.rpm

 rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

zabbix:zabbix3.0安装部署及邮件告警_第10张图片

更新完yum源,开始正式安装zabbix3.0

#yum install –y zabbix-server-mysql zabbix-web-mysql zabbix-get zabbix-agent

zabbix:zabbix3.0安装部署及邮件告警_第11张图片

导入zabbix数据库结构

#cd /usr/share/doc/zabbix-server-mysql-3.0.7/

# zcat create.sql.gz |mysql -uroot -pwestos zabbix

image.png

数据导入完成,开始配置zabbix server

# vim /etc/zabbix/zabbix_server.conf

修改#DBHost=localhost为DBHost=localhost

修改DBUser=zabbix

修改DBName=zabbix

修改DBPassword=zabbix

以上三项配置为zabbix server连接MySQL所用

接下来修改zabbix.conf

#vim /etc/httpd/conf.d/zabbix.conf

zabbix:zabbix3.0安装部署及邮件告警_第12张图片

其中php_value date.timezone Asia/Shanghai用来定义php时区。

接下来将zabbix-server加入开机启动,关闭selinux,启动zabbix-server

#systemctl enable zabbix-server

#setenforce 0

#systemctl start zabbix-server 

(注意:起zabbix-server 服务时有时会起不来,查看启动状态,发现libpthread-2.17.so有报错,和这个关联的包是gnutls-3.38-12.el7.x86_64,需进行降级处理

下载并安装,下载地址:http://rpm.pbone.net/gnutls-3.1.18-8.el7.x86_64 即可。

    rpm -e gnutls-3.38-12.el7.x86_64 --nodeps

    rpm -ivh gnutls-3.1.18-8.el7.x86_64)

    zabbix:zabbix3.0安装部署及邮件告警_第13张图片

最后重启Apache

Systemctl restart httpd

然后访问http://192.168.98.25/zabbix

zabbix:zabbix3.0安装部署及邮件告警_第14张图片

确保以上状态全处于ok状态,否则无法进行下一步安装!

zabbix:zabbix3.0安装部署及邮件告警_第15张图片

Database name:zabbix    User:zabbix     Password:zabbix

zabbix:zabbix3.0安装部署及邮件告警_第16张图片

Username:Admin

Password:zabbix

zabbix:zabbix3.0安装部署及邮件告警_第17张图片

以上就完成了zabbix server端的安装配置。

    1.3配置zabbix agent

zabbix agent的配置很简单,只需要修改zabbix agent配置文件中的Server、ServerActive和Hostname这三项即可。

#vim /etc/zabbix/zabbix_agentd.conf

  Server=192.168.98.25

  ServerActive=192.168.98.25

  Hostname=192.168.98.25

由于是监控本机,所以配置Hostname=192.168.98.25

启动zabbix agent

  #systemctl enable zabbix-agent

  #systemctl start zabbix-agent

  防火墙放行10050端口

zabbix:zabbix3.0安装部署及邮件告警_第18张图片

三、      添加监控主机配置邮件告警及微信告警

3.1 创建监控主机(Host)

点击“配置à主机à创建主机”

添加主机IP、主机描述、所在群组

zabbix:zabbix3.0安装部署及邮件告警_第19张图片

配置主机模板(Templates)

zabbix:zabbix3.0安装部署及邮件告警_第20张图片

3.2 配置告警

3.2.1 邮件告警

点击“配置à动作à创建动作”

zabbix:zabbix3.0安装部署及邮件告警_第21张图片

名称:自定义  见名知意即可(mail)

默认收件人:

主机告警!{TRIGGER.STATUS}: {TRIGGER.NAME}

默认信息:

[主机告警!]

告警主机:{HOSTNAME1}

主机IP:{HOST.IP}

告警时间 :{EVENT.DATE} {EVENT.TIME}

触发器名称: {TRIGGER.NAME}

当前状态: {TRIGGER.STATUS}

告警项目:{TRIGGER.KEY1}

告警级别 :{TRIGGER.SEVERITY}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

事件ID :{EVENT.ID}

URL:http://192.168.98.15/zabbix/

By :李恒- ZABBIX3.0

恢复主题:

恢复通知!{TRIGGER.STATUS}: {TRIGGER.NAME}

恢复信息:

[恢复通知!]

告警主机:{HOSTNAME1}

主机IP:{HOST.IP}

告警时间:{EVENT.DATE} {EVENT.TIME}

恢复时间:{EVENT.RECOVERY.TIME}

告警级别:{TRIGGER.SEVERITY}

触发器名称: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

URL:http://192.168.98.15/zabbix/

By :李恒-ZABBIX3.0

 3.2.2:配置操作

    zabbix:zabbix3.0安装部署及邮件告警_第22张图片

四、      配置报警媒介及用户

4.1 定义报警媒介

点击“管理à报警媒介类型à创建媒体类型”

名称自定义,见名知意即可,类型选择脚本,脚本名称:mail.sh。

脚本参数:

    {ALERT.SENDTO}       定义收件人

    {ALERT.SUBJECT}      定义标题

    {ALERT.MESSAGE}      告警内容

zabbix:zabbix3.0安装部署及邮件告警_第23张图片

4.2 配置用户报警媒介

zabbix:zabbix3.0安装部署及邮件告警_第24张图片

4.3 服务器中配置

#yum install –y mailx dos2unix

#vim /etc/mail.rc

添加以下三行

set [email protected] smtp=43.$.$.180

set smtp-auth-user=AC_monitor [email protected]

set smtp-auth=login

#cd /usr/lib/zabbix/alertscripts/

#vim mail.sh

#!/bin/bash

FILE=/tmp/mailtmp.txt

echo "$3" >$FILE

dos2unix -k $FILE

/bin/mail -s "$2" $1 < $FILE

#chown zabbix.zabbix mail.sh