手把手教你在CentOS 7.4下搭建Zabbix监控(转)

Posted hftian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手把手教你在CentOS 7.4下搭建Zabbix监控(转)相关的知识,希望对你有一定的参考价值。

Linux系统版本:CentOS 7.4

技术图片

1、安装前需要先关闭selinux和firewall.

1.1

[[email protected] ~]# vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled

设置后需要重启才能生效

[[email protected] ~]# setenforce 0       #临时关闭

[[email protected] ~]# getenforce         #检测selinux是否关闭,Disabled 为关闭

技术图片

1.2

[[email protected] ~]# firewall-cmd --state    #查看默认防火墙状态

not running          #关闭后显示not running,开启后显示running

[[email protected] ~]# systemctl stop firewalld.service    #临时关闭firewall

[[email protected] ~]# systemctl disable firewalld.service       #禁止firewall开机启动

技术图片

2、配置zabbix 程序安装

2.1配置zabbix 的yum源

[[email protected] ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

技术图片

 

2.2安装zabbix程序包,安装mysql、zabbix-agent

[[email protected] ~]# yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server

技术图片

 

2.3 启动mariadb(数据库)并设置开机启动,创建数据库实例,授权

[[email protected] ~]# systemctl start mariadb         #启动mariadb

[[email protected] ~]# systemctl enable mariadb        #开机时启动mariadb

[[email protected] ~]# mysql                         #登入数据库

MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;

#创建数据库实例

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to [email protected]‘%‘ identified by ‘zabbix‘;

#授权所有主机访问数据库实例zabbix,用户名/密码:zabbix/zabbix

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;

#授权localhost主机名访问数据库实例zabbix,用户名/密码:zabbix/zabbix

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;

#授权localhost.localdomain主机访问数据库实例zabbix,用户名/密码:zabbix/zabbix

Query OK, 0 rows affected (0.00 sec)

技术图片

 

导入初始模式和数据

[[email protected] ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.5/  #进入create.sql.gz所在目录

[[email protected] zabbix-server-mysql-3.4.5]# zcat create.sql.gz |mysql -uroot zabbix  #导入出事模式

注:这里的数据库没有设置密码的

2.4、启动zabbix-server

2.4.1 配置zabbix-server r 配置文件zabbix-server.conf

[[email protected] zabbix-server-mysql-3.4.5]# vi /etc/zabbix/zabbix_server.conf

DBHost=localhost          # 数据主机名

DBName=zabbix            # 数据库实例

DBUser=zabbix              # 用户名

DBPassword=zabbix      # 密码

修改配置文件

2.4.2 启动zabbix-server服务

[[email protected] ~]# systemctl start zabbix-server   #启动zabbix-server服务

[[email protected] ~]# systemctl enable zabbix-server   #开机启动zabbix-server服务。

2.5编辑Apache的配置文件,消注释设置正确的时区

[[email protected] ~]# vi /etc/httpd/conf.d/zabbix.conf

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

修改配置文件

启动httpd服务,设置开机启动httpd服务

[[email protected] ~]# systemctl start httpd     #启动httpd服务

[[email protected] ~]# systemctl enable httpd    #设置开机启动httpd服务

3、启动zabbix-agent并设置开机自启动

[[email protected] ~]# systemctl start zabbix-agent  #启动zabbix-agent服务

[[email protected] ~]# systemctl enable zabbix-agent   #设置zabbix-agent服务开机自动启动

4、zabbix web 网页安装

4.1.在浏览器输入地址http://服务器ip/zabbix/setup.php,出现欢迎界面,点击下一步;

技术图片

 

4.2.出现必要条件检测界面,正常都是OK,点击下一步

技术图片

 

4.3.配置DB连接,与zabbix_server.conf文件中主机、数据库名称、用户名、密码保持一致,点击下一步

技术图片

 

4.4.zabbix服务器详细信息,点击下一步

技术图片

4.5.安装前汇总,检查信息无误,点击下一步安装

技术图片

 

4.6.安装成功

 

 

Congratulations! You have successfully installed Zabbix frontend.

配置文件目录

Configuration file "/etc/zabbix/web/zabbix.conf.php" created.

技术图片

 

5、zabbix网页登录

在浏览器输入http://zabbix服务器ip/zabbix/index.php,输入管理员用户名Admin(区分大小写),默认密码zabbix,点击登入即可。

技术图片

6、设置zabbix 中文

技术图片

 

7、解决中文在图形界面上的乱码

7.1 一般情况下还是会出现中文乱码的情况

技术图片

7.2 因为zabbix自身对中文简体的支持不完善,需要我们手动的去上传新的字体进行替换:

在C:\Windows\Fonts中复制想要的字体,后缀为ttf,把文件复制到桌面。

技术图片

上传至zabbix服务器的/usr/share/zabbix/fonts 目录中,把文件上传在linux系统中我们可以使用winSCP 这个软件。在这里我直接使用 rz -y 这个命令上传。

[[email protected] fonts]# yum install lrzsz -y   #安装命令

[[email protected] fonts]# rz -y

技术图片

 

[[email protected] fonts]# mv graphfont.ttf  graphfont.ttf.bak   #把graphfont.ttf备份

[[email protected] fonts]# mv simkai.ttf graphfont.ttf           #把simkai.ttf 改名为graphfont.ttf

然后刷新下网页就可以了。

8、zabbix-agent 客户端安装与配置(windows操作系统)

目前已安装好了zabbix-server 服务端,接下来我们需要添加客户端的操作。

现在添加监控的对象是server 2012操作系统 64位。

8.1下载zabbix-agent 监控客户端软件安装包(windows操作系统)

官方下载地址:http://www.zabbix.com/download

技术图片

8.2 关闭监控主机windows server 2008防火墙或防火墙入放行zabbix_agentd客户端口号  10050 (TPC/UDP)。

 

8.3 下载后解压zabbix_agents_3.4.0.win.zip压缩包。里面有两个文件夹,一个是bin文件夹,另一个是conf文件夹。

Bin文件夹里面有两个文件夹,一个是win32文件夹里存放zabbix_agentd安装程序应用于windows 32位操作系统,一个是win64文件夹里存放zabbix_agentd安装程序应用于windows 64位操作系统。

Conf文件夹里存放是配置文件zabbix_agentd.win.conf

 

8.4在windows server 2012 操作系统下, C盘目录下创建一个zabbix文件夹,把刚下载的zabbix_agentd压缩包里的win64位文件夹复制到zabbix文件夹里。把conf文件夹zabbix_agentd.win.conf复制到新创的zabbix目录下。

 

技术图片

 

8.5 右键以文本格式编辑zabbix_agentd.win.conf 配置文件,使用Notrpad++编辑。

技术图片

修改下面几项

 

EnableRemoteCommands=1          #允许在本地执行远程命令

LogRemoteCommands=1              #执行远程命令是否保存操作日志

Server=192.168.3.50                      #填写zabbix-server服务器IP地址

ServerActive=192.168.3.50             #填写zabbix-server服务器IP地址

Hostname=server2012                    #zabbix_agent客户端计算机名 (被监控主机)

 

8.6 打开DOS命令窗口---- 输入以下两条命令进行zabbix客户端安装。(必须要以管理员身份运行打开DOS命令窗口)

 

C:\zabbix\zabbix_agentd.exe -i -c C:\zabbix\zabbix_agentd.win.conf

#安装zabbix客户端

C:\zabbix\zabbix_agentd.exe -s -c C:\zabbix\zabbix_agentd.win.conf

#启动zabbix服务

技术图片

8.7  在zabbix服务端操作

8.7.1  选择配置 ---- 主机 ---- 创建主机。

8.7.2  输入客户端计算机名 --- 可见名称自定义 ---- 群组自行选择 ---- 输入客户端计算IP地址 ---- 勾选已启用 ---- 选择添加。

技术图片

8.7.3 添加 zabbix_agentd 客户端监控模版。

技术图片 

技术图片

8.7.3 检查zabbix-agent服务是否开启或直接重启zabbix-agent 服务。

技术图片

技术图片

9、zabbix 邮件告警提示

9.1 创建自定义媒介,和邮件脚本

[[email protected] ~]# vi /etc/zabbix/zabbix_server.conf

AlertScriptsPath=/usr/lib/zabbix/alertscripts   #修改配置文件

技术图片

[[email protected] ~]# cd /usr/lib/zabbix/alertscripts/

[[email protected] alertscripts]# vi zabbix-email.py

#!/usr/bin/Python

#coding:utf-8

import smtplib

from email.mime.text import MIMEText

import sys

mail_host = ‘smtp.163.com‘

mail_user = ‘15626866674‘

mail_pass = ‘15626866674.‘

mail_postfix = ‘163.com‘

def send_mail(to_list,subject,content):

    me = "zabbix3.4监控告警平台"+"<"+mail_user+"@"+mail_postfix+">"

    msg = MIMEText(content, ‘plain‘, ‘utf-8‘)

    msg[‘Subject‘] = subject

    msg[‘From‘] = me

    msg[‘to‘] = to_list

    try:

        s = smtplib.SMTP()

        s.connect(mail_host)

        s.login(mail_user,mail_pass)

        s.sendmail(me,to_list,msg.as_string())

        s.close()

        return True

    except Exception,e:

        print str(e)

        return False

if __name__ == "__main__":

send_mail(sys.argv[1], sys.argv[2], sys.argv[3])

#添加上面内容,并修改邮箱。

[[email protected] alertscripts]# chmod +x zabbix-email.py  #修改权限

9.2 管理---报警媒介类型---创建媒体类型

技术图片

名称:zabbix-email

类型:脚本

脚本名称:zabbix-email.py

脚本参数:{ALERT.SENDTO}

          {ALERT.SUBJECT}

          {ALERT.MESSAGE}

{ALERT.URL}

9.3 管理---用户,点击admin,选择报警媒介并添加

技术图片

技术图片

9.4 < style="font-size: 16px; font-family: Arial; background: #ffffff; color: #333333; letter-spacing: 0px;">配置—动作,编辑< style="font-size: 16px; font-family: Arial; background: #ffffff; color: #333333; letter-spacing: 0px;">动作,然后添加操作,添加恢复操作。

 技术图片

技术图片

技术图片

操作

时间:60s

接收人:问题警告: {TRIGGER.NAME}

默认信息:问题警告 started at {EVENT.TIME} on {EVENT.DATE}

问题警告对象: {TRIGGER.NAME}

Host: {HOST.NAME}:{HOST.CONN}

Severity: {TRIGGER.SEVERITY}

Original problem ID: {EVENT.ID}

{TRIGGER.URL}

注:记得添加发送到用户

恢复操作

接收人:告警已恢复: {TRIGGER.NAME}

默认信息:

告警已恢复 at {EVENT.RECOVERY.TIME} on {EVENT.RECOVERY.DATE}

告警恢复对象: {TRIGGER.NAME}

Host: {HOST.NAME}:{HOST.CONN}

Severity: HEALTH

Original problem ID: {EVENT.ID}

{TRIGGER.URL}

注:记得添加发送到用户

9.4 测试

技术图片

技术图片

##①记得客户端Server-IP要指向服务器的IP

vim /usr/local/zabbix/etc/zabbix_agentd.conf

Server=10.0.0.137

##②往往邮箱收不到邮件的原因是没打开邮箱设置里面的POP3服务

更多Zabbix相关教程集合: 

Ubuntu 16.04服务器上安装Zabbix 3.2  https://www.linuxidc.com/Linux/2017-07/145519.htm
CentOS 7 LNMP环境搭建Zabbix3.0  https://www.linuxidc.com/Linux/2017-02/140134.htm
Ubuntu 16.04安装部署监控系统Zabbix2.4  https://www.linuxidc.com/Linux/2017-03/141436.htm
Zabbix监控安装部署及警报配置  https://www.linuxidc.com/Linux/2017-03/141611.htm
Zabbix触发器表达式详解 https://www.linuxidc.com/Linux/2017-03/141921.htm
Ubuntu 16.04下安装部署Zabbix3.0  https://www.linuxidc.com/Linux/2017-02/140395.htm
CentOS 7 下 Zabbix 3.0安装详解 https://www.linuxidc.com/Linux/2017-03/141716.htm
Zabbix 3.2.6 通过Orabbix监控Oracle数据库  https://www.linuxidc.com/Linux/2017-10/147224.htm
Zabbix3.4添加Web监测功能 https://www.linuxidc.com/Linux/2018-06/152769.htm
Zabbix告警发送邮件时附带性能图 https://www.linuxidc.com/Linux/2018-05/152194.htm
Zabbix3.0编译升级过程记录 https://www.linuxidc.com/Linux/2018-05/152193.htm
Debian 9.2安装Zabbix 3.4.2 https://www.linuxidc.com/Linux/2018-03/151338.htm

ZABBIX 的详细介绍请点这里
ZABBIX 的下载地址请点这里

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-08/153668.htm

以上是关于手把手教你在CentOS 7.4下搭建Zabbix监控(转)的主要内容,如果未能解决你的问题,请参考以下文章

手把手教你在centos 7.4上搭建NTP服务器

手把手教你在Centos7上安装zabbix server 3.0

手把手教你在centos8操作系统上部署zabbix6.0

centos7手把手教你搭建zabbix监控

centos7手把手教你搭建zabbix监控

手把手教你在CentOS上搭建Kubernetes集群