CentOS7安装部署Zabbix监控服务

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  #开机不启动

  1. 安装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 #开机启动

  2. 安装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需要的组件

  3. 创建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
DBSocket=/var/lib/mysql/mysql.sock
  1. 修改/etc/httpd/conf.d/zabbix.conf配置文件,增加时区
    CentOS7安装部署Zabbix监控服务
启动服务
systemctl start zabbix-server zabbix-agent
systemctl restart httpd
systemctl enable zabbix-server zabbix-agent httpd

CentOS7安装部署Zabbix监控服务
CentOS7安装部署Zabbix监控服务
CentOS7安装部署Zabbix监控服务
11. 进入Zabbix server配置界面,自定义zabbix的名称(zabbix server)CentOS7安装部署Zabbix监控服务
12. 之后一直点击next,部署成功
CentOS7安装部署Zabbix监控服务
  1. 登录zabbix,默认账户为Admin,密码为zabbix

    CentOS7安装部署Zabbix监控服务
  2. 切换中文

    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配置文件使用外部SMTP服务器,添加下列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

登录邮箱查看是否已测试。

[En]

Log in to the mailbox to see if it has been tested.

CentOS7安装部署Zabbix监控服务

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

CentOS7安装部署Zabbix监控服务

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

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

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

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

CentOS7安装部署Zabbix监控服务

zabbix动作参数对应名称

故障{TRIGGER.STATUS} 服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢复主旨:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

编写报警脚本

[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

登录邮箱查找报警信息内容,并对附件格式进行编程。

[En]

Log in to the mailbox to find the alarm message content and program the attachment format.

CentOS7安装部署Zabbix监控服务

解决方案:
安装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}< code></${file}<>

CentOS7安装部署Zabbix监控服务

重新测试
systemctl start zabbix-agent.service

也可以选择”报表”->”动作日志”查看动作日志信息

CentOS7安装部署Zabbix监控服务

Original: https://www.cnblogs.com/nnijia/p/15971239.html
Author: 派大星和他的朋友
Title: CentOS7安装部署Zabbix监控服务

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524036/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Shell alias命令详解:给命令设置别名

    给命令设置别名,你可以把它当作命令的”小名”,但是这样做有什么意义呢? 比如笔者刚接触 Linux 时,使用的编辑器是 Vi,但是现在 Vim 的功能明显比…

    Linux 2023年5月28日
    063
  • 【转】 一条 SQL 的执行过程详解

    MySQL 体系架构 – 连接池组件 1、负责与客户端的通信,是半双工模式,这就意味着某一固定时刻只能由客户端向服务器请求或者服务器向客户端发送数据,而不能同时进行。 …

    Linux 2023年6月13日
    0128
  • 如何搭建android源代码repo仓库

    .版本: v0.3作者:河东西望日期:2022-7-5. 如果你的开发是基于AOSP源码来建仓,那么搭建repo服务器和部署自己的repo仓库就是非常必要的工作了。 现实中很多公司…

    Linux 2023年6月7日
    077
  • Docker简介与安装

    Docker简介与安装 Docker overview | Docker Documentation 官方文档 1.Docker简介 Docker是一个用于开发、发布和运行应用程序…

    Linux 2023年6月13日
    085
  • 如何在 pyqt 中自定义工具提示 ToolTip

    前言 Qt 自带的工具提示样式不太好看,就算加了样式表也时不时会失效,同时工具提示没有阴影,看起来就更难受了。所以本篇博客将会介绍自定义工具提示的方法,效果如下图所示: 实现过程 …

    Linux 2023年6月7日
    0104
  • Centos 7 升级内核

    【背景说明】 在公司进行部署产品时,发公司内部的服务内核资源并不能满足于产品部署条件,于是我和内核就进行了一场风花雪月般的交互,在操作前,本人小白一枚,就在浩瀚的互联网海洋中搜索升…

    Linux 2023年5月27日
    0107
  • Java基础系列–02_运算符和程序的语句

    运算符:(1)算术运算符:+,-,*,/,%,++,–(加、减、乘、除、取余、自增,自减)++和–的注意事项:a:他们的作用是自增或者自减b:使用1.单独使…

    Linux 2023年6月7日
    093
  • 软件危机复习

    没有银弹的含义 软件危机:由于软件规模越来越大,软件复杂性越来越高,可靠性问题也越来越突出,传统的个人设计,个人实现的方式不再满足要求,迫切需要改变软件生产方式,提高软件开发效率,…

    Linux 2023年6月8日
    091
  • SQL实战——04. 查找所有已经分配部门的员工的last_name和first_name以及dept_no (一个逗号引发的血案)

    查找所有已经分配部门的员工的last_name和first_name以及dept_noCREATE TABLE dept_emp (emp_no int(11) NOT NULL,…

    Linux 2023年6月14日
    083
  • C语言练习:hackerrank十五关

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月11日
    090
  • 搭建Redis三主三从集群

    Redis三主三从集群规划 10.0.128.19 使用端口 7000 700110.0.128.22 使用端口 7002 700310.0.128.23 使用端口 7004 70…

    Linux 2023年6月8日
    0107
  • Java多线程volatile、ThreadLocal、线程池、atomic

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月11日
    093
  • Spring事务(二)-事务传播行为

    在Spring里,一个事务方法被另外一个事务方法调用时,两个方法的事务应该如何进行,说白话一点,就是说当出现异常需要回滚时,各个方法的数据操作是否要全部回滚,事务传播行为就是决定了…

    Linux 2023年6月6日
    081
  • Linux vim退出命令

    :w – 保存文件,不退出 vim:w file -将修改另外保存到 file 中,不退出 vim:w! -强制保存,不退出 vim:wq -保存文件,退出 vim:w…

    Linux 2023年6月13日
    092
  • bash获取机器IP后缀

    1.先获取部分数据 ip_0=ip a | grep inet | grep -v inet6 | grep ens | awk ‘NR==1{print $2}’ | cut -…

    Linux 2023年6月7日
    092
  • linux磁盘配额管理

    磁盘配额是一种磁盘空间的管理机制,使用磁盘配额可限制用户或组在某个特定文件系统中能使用的最大空间 1、查看内核是否支持磁盘配额 grep “CONFIG_QUOTA&#…

    Linux 2023年5月27日
    098
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球