CentOS7安装部署Zabbix监控服务

  • A+
所属分类:linux技术
摘要

Zabbix Server通过Agent传来的数据写入数据库(MySQL),最终通过PHP+Apache在Web界面进行前端展示
所以在启动Zabbix之前需要搭建LAMP环境

Zabbix Server通过Agent传来的数据写入数据库(MySQL),最终通过PHP+Apache在Web界面进行前端展示
所以在启动Zabbix之前需要搭建LAMP环境

1、环境搭建

 

  1. 关闭SELinux和防火墙
    临时关闭
    setenforce 0  #关闭SELinux systemctl stop firewalld.service #关闭防火墙

    永久关闭

    vim /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: #     enforcing - SELinux security policy is enforced. #     permissive - SELinux prints warnings instead of enforcing. #     disabled - No SELinux policy is loaded. SELINUX=disabled #关闭SELinux # SELINUXTYPE= can take one of three values: #     targeted - Targeted processes are protected, #     minimum - Modification of targeted policy. Only selected processes are protected.  #     mls - Multi Level Security protection. SELINUXTYPE=targeted 
    systemctl disable firewalld.service  #开机不启动  
  2. 安装httpd、Mysql(Mariadb)服务和PHP环境

    [root@master ~]# yum -y install httpd mariadb mariadb-server php php-mysql  
    [root@master ~]# rpm -qa httpd php mariadb  #查看安装版本
    mariadb-5.5.68-1.el7.x86_64
    php-5.4.16-48.el7.x86_64
    httpd-2.4.6-97.el7.centos.4.x86_64

    [root@master ~]# systemctl start mariadb httpd  #启动服务
    [root@master ~]# systemctl enable mariadb httpd  #开机启动 

  3. 安装Zabbix依赖软件及组件

    [root@master ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm  #下载Zabbix软件源

    [root@master ~]# yum install -y zabbix-server-mysql zabbix-get zabbix-web zabbix-web-mysql zabbix-agent zabbix-sender  #安装zabbix需要的组件

     

  4. 创建zabbix需要的数据库

    mysql #进入数据库 create database zabbix character set utf8 collate utf8_bin;  #创建zabbix数据库,字符集为utf8,校准为utf8_bin grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; #创建zabbix用户,密码为zabbix,可对zabbix数据所有表进行所有操作权限 flush privileges; #在不退出的情况下刷新配置

    CentOS7安装部署Zabbix监控服务

     

  5. 导入zabbix初始表

    zcat /usr/share/doc/zabbix-server-mysql-3.4.15/create.sql.gz | mysql -uzabbix -p zabbix  #将create.sql文件导入zabbix数据库 

    CentOS7安装部署Zabbix监控服务

     

  6. 修改/etc/zabbix_server.conf配置文件

    DBHost=localhost  DBName=zabbix DBUser=zabbix DBPassword=zabbix

     

  7. 修改/etc/httpd/conf.d/zabbix.conf配置文件,增加时区
    CentOS7安装部署Zabbix监控服务

    启动服务 systemctl start zabbix-server zabbix-agent  systemctl restart httpd systemctl enable zabbix-server zabbix-agent httpd

     

  8. 登录zabbix,打开浏览器输入http://localhost/zabbixCentOS7安装部署Zabbix监控服务

     

  9. zabbix会依次检测依赖组件,如果出现错误必须解决后才能进行下一步CentOS7安装部署Zabbix监控服务

     

  10. 接着出现数据库信息填写界面,填写zabbix账户的密码即可CentOS7安装部署Zabbix监控服务

     

  11. 进入Zabbix server配置界面,自定义zabbix的名称(zabbix server)

    CentOS7安装部署Zabbix监控服务

  12. 之后一直点击next,部署成功
     CentOS7安装部署Zabbix监控服务
  13. 登录zabbix,默认账户为Admin,密码为zabbix
    CentOS7安装部署Zabbix监控服务
  14. 切换中文
    CentOS7安装部署Zabbix监控服务CentOS7安装部署Zabbix监控服务CentOS7安装部署Zabbix监控服务

 

 

 

 

2、部署Agent端
2.1 修改/etc/zabbix/zabbix_agentd.conf配置文件

Server=192.168.22.254 #允许哪个服务端连接到agent,被动模式 ServerActive=192.168.22.254 #主动模式,向哪台服务器传送数据 Hostname=master #客户端主机名,唯一,需与添加主机时‘主机名称’保持一致

 

systemctl restart zabbix-agent.service #重启服务

2.2 添加被监控的主机

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

启动本地agent监控

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

 

 

绘制图形展示

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

 

编辑聚合图形,单击名称"master"->"编辑聚合图形"->"更改"

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

 

 

配置邮件警报通知

rpm -qa | grep mailx #检查系统是否已经安装邮件发送工具 #如果没有则安装 yum -y install mailx

CentOS7安装部署Zabbix监控服务

在配置zabbix服务端外部邮箱时,需要验证登录客户端邮箱的客户端授权码,这里使用的是QQ邮箱请自行前往邮箱配置,其他类型邮箱亦如此

CentOS7安装部署Zabbix监控服务

编辑/etc/mail.rc配置文件,添加下列4行

set from=邮箱地址@qq.com  #邮件服务器配置 set smtp=smtp.qq.com #邮件服务器配置 set smtp-auth-user=邮箱账户@qq.com set smtp-auth-password=**** #客户端授权码 set smtp-auth=login #登录后发送邮件

测试发送邮件

echo "zabbix test" | mail -s test 邮箱地址@qq.com

登录邮箱查看是否受到测试邮件

CentOS7安装部署Zabbix监控服务

创建媒介类型,选择“管理”->“报警媒介类型”->“创建媒介类型”

CentOS7安装部署Zabbix监控服务

配置用户的邮箱地址,选择“管理”->“用户”->“Admin”->“报警媒介”->“添加”

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

 

配置报警触发动作,选择“配置”->“动作”->“创建动作”

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

 

 

 

编写报警脚本

[root@master ~]# cd /usr/lib/zabbix/alertscripts/

 

vim sendmail.sh #!/bin/sh echo "$3" | mail -s "$2" $1

 

[root@master alertscripts]# chmod +x sendmail.sh
[root@master alertscripts]# chown zabbix:zabbix ./sendmail.sh

测试故障报警,模拟被监控服务器故障

systemctl stop zabbix-agent.service

登录邮箱发现报警信息内容编程了附件格式

解决方案:
安装dos2unix转换工具
yum -y install dos2unix
修改脚本内容
vim sendmail.sh
#!/bin/sh
export LANG=en_US.UTF-8
FILE=/usr/lib/zabbix/alertscripts/mail.txt
echo "$3" >${FILE}
dos2unix -k ${FILE}
/bin/mail -s "$2" "$1" <${FILE}
touch mail.txt
chown zabbix:zabbix ./mail.txt
重新测试
systemctl start zabbix-agent.service
也可以选择“报表”->“动作日志”查看动作日志信息