Bootstrap

Zabbix监控系统介绍及部署Zabbix5.0(1)

目录

一款合格监控服务应具备的功能:

Zabbix功能介绍

Zabbix作用:

zabbix是我们运维人员的第三只眼,作为一个运维,需要会使用监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果和网站的健康状态

Zabbix版本介绍

Zabbix组件介绍

实验环境:

1.准备阶段(两台主机都操作):

(1)测试是否联接外网

(2)下载yum公网仓库

(3)确保两台服务器均已关闭防火墙和selinux

(4)同步阿里服务器的时间

2.安装zabbix5.0(server服务端配置)

(1)配置zabbix公网yum仓库

(2)安装zabbix软件包

(3)下载centos-release-scl仓库(提供zabbix前端所需的一些软件包)

(4)启用zabbix前端仓库

(5)安装Zabbix前端软件包(两个软件中内置PHP与Apache)

2.部署数据库---实现LAMP环境

(1)安装mariadb

(2)设置数据库密码

(3)登录数据库

(4)导入数据库脚本

3.检查和编辑配置文件

编辑zabbix文件之前先备份文件

4.安装zabbix web接口

(2)备份配置文件

(3)更改地区

(4)启动所有服务并设置服务开机自启

5浏览器登录http://192.168.100.101/zabbix

(3)来到登录界面:

6.WEB界面概览及简单优化

(1)成功进入zabbix

7.添加被监控主机(agent102配置)

(1)保证已联接外网

(2)下载Zabbix5.0存储库(二进制安装方式)

(3)更换源

(4)安装zabbix agent

(5)修改zabbix-agent配置文件,定义zabbix server监控端地址

(6)启动服务并设置服务开机自启

(7)来到Zabbix WEB界面

8.测试监控效果


介绍:

一款合格监控服务应具备的功能:

指标采集、指标可视化、指标存储、故障告警

Zabbix功能介绍

Zabbix 是C语言编写的企业级开源免费的分布式监控解决方案,可监控网络的众多参数以及服务器、虚拟机、应用程序、数据库、网站、云等的健康状况和完整性。

Zabbix 使用灵活的报警通知机制,允许用户为几乎任何事件配置电子邮件的警报。这允许对服务器问题做出快速反应。

Zabbix 可通过存储的数据提供出色的报告和数据可视化功能。

Zabbix作用:

zabbix是我们运维人员的第三只眼,作为一个运维,需要会使用监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果和网站的健康状态

如果有懂C语言的朋友可以去它的版本库看一下源代码

版本库:https://github.com/zabbix

官网地址:Zabbix :: The Enterprise-Class Open Source Network Monitoring Solution

常用的监控软件:Cacti、Nagios、Ganglia、Open-Falcon、zabbix、prometheus

Zabbix版本介绍

Zabbix稳定版:LTS代表稳定版,官方提供技术支持时间长达5年时间

Zabbix标准版:不带LTS标签,官方提供技术支持时间7个月

Zabbix组件介绍

zabbix agent:指标采集器,在被监控主机上采集指标数据,并将采集到的数据发送给zabbix server

zabbix server:负责提供监控功能,负责接收agent发送的数据,统计数据、管理数据

zabbix database:用于存储所有zabbix的配置信息以及监控数据

zabbix web:管理员通过web界面管理、配置以及查看相关监控信息

zabbix proxy:分布式监控,用来分担zabbix server的压力(不是必须)

实验环境:

主机名

IP地址

操作系统

所需软件

内存

zbx-server(监控端)

192.168.100.101

Contos 7.4 x86_64

Zabbix-server-mysql、zabbix-agent

2+

agent(被监控端)

192.168.100.102

Contos 7.4 x86_64

Zabbix-agent

1+

1.准备阶段(两台主机都操作):

(1)测试是否联接外网
ping -c3 baidu.com

(2)下载yum公网仓库
​mkdir /etc/yum.repos.d/bak/

mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
(3)确保两台服务器均已关闭防火墙和selinux
systemctl disable firewalld --now

sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/sysconfig/selinux

setenforce 0

(4)同步阿里服务器的时间
yum -y install ntpdate
ntpdate ntp1.aliyun.com
echo "ntpdate ntp1.aliyun.com" >>/etc/rc.local 
chmod +x /etc/rc.local

2.安装zabbix5.0(server服务端配置)

(1)配置zabbix公网yum仓库

[root@zbx-server ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

(2)安装zabbix软件包

[root@zbx-server ~]# yum install zabbix-server-mysql zabbix-agent -y

(3)下载centos-release-scl仓库(提供zabbix前端所需的一些软件包)

[root@zbx-server ~]# yum install centos-release-scl -y

(4)启用zabbix前端仓库

[root@zbx-server ~]# vim /etc/yum.repos.d/zabbix.repo

(5)安装Zabbix前端软件包(两个软件中内置PHP与Apache)

[root@zbx-server ~]# yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y

2.部署数据库---实现LAMP环境

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

安装MySQL数据库来存储监控指标实现持久化,但mysql安装相对较慢可以用mariadb代替

(1)安装mariadb

[root@zbx-server ~]# yum -y install mariadb-server mariadb

启用数据库并设置开机自启

[root@zbx-server ~]# systemctl enable mariadb --now

[root@zbx-server ~]# netstat -anpt|grep mysqld

(2)设置数据库密码

[root@zbx-server ~]# mysqladmin -u root password 123

(3)登录数据库

[root@zbx-server ~]# mysql -uroot -p123

创建一个名为 zabbix 的数据库用于存储监控指标,并支持中文

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

创建一个名为 zabbix 的用户用于连接数据库,并设置密码'admin123'

MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'admin123';

MariaDB [(none)]> exit

(4)导入数据库脚本

[root@zbx-server ~]# zcat /usr/share/doc/zabbix-server-mysql-5.0.42/create.sql.gz |mysql -uzabbix -padmin123 zabbix

3.检查和编辑配置文件

##server配置文件 /etc/zabbix/zabbix_server.conf

##指定数据库名称、用户、密码

编辑zabbix文件之前先备份文件

[root@zbx-server ~]# cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak

[root@zbx-server ~]# cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak

[root@zbx-server ~]# vim /etc/zabbix/zabbix_server.conf

91 DBHost=localhost

101 DBName=zabbix #数据库名称

117 DBUser=zabbix #连接数据库的用户名

125 DBPassword=admin123 #登录数据库密码

4.安装zabbix web接口

1)编辑apache服务针对zabbix的前端配置为/etc/httpd/conf.d/zabbix.conf 设置时区与当前系统时区一致

为PHP配置正确时区

(2)备份配置文件

[root@zbx-server ~]# cp /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf.bak

(3)更改地区

[root@zbx-server ~]# vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

#...

php_value[date.timezone] = Asia/Shanghai

(4)启动所有服务并设置服务开机自启

[root@zbx-server ~]# systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

[root@zbx-server ~]# systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm

5浏览器登录http://192.168.100.101/zabbix

* 系统环境检测:确保软件都符合要求

* 数据库连接界面:数据库名称、用户、密码(admin123)

请确保这里的 Check of pre-requisites 全部OK后点击下一步

数据库密码为:admin123

这些是对我们刚才配置信息的一个总结检测是否有误,如果没错的话点击下一步

前端安装完成

(3)来到登录界面:

默认用户名:Admin

默认密码:zabbix

6.WEB界面概览及简单优化

(1)成功进入zabbix

成功进入zabbix之修改登录密码为‘123’并设置WEB界面语言为简体中文

(2)解决中文乱码

[root@zbx-server ~]# yum install -y wqy-microhei-fonts

[root@zbx-server ~]# \cp -f /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

##中文乱码消失

7.添加被监控主机(agent102配置)

(1)保证已联接外网

[root@agent ~]# ping -c3 www.baidu.com

(2)下载Zabbix5.0存储库(二进制安装方式)

[root@agent ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

(3)更换源

[root@agent ~]# sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

(4)安装zabbix agent

[root@agent ~]# yum install zabbix-agent -y

(5)修改zabbix-agent配置文件,定义zabbix server监控端地址

[root@agent ~]# vim /etc/zabbix/zabbix_agentd.conf

#...

Server=192.168.100.101

(6)启动服务并设置服务机自启

[root@agent ~]# systemctl enable zabbix-agent --now

#agent默认监听端口为10050

(7)到Zabbix WEB界面

通过配置 → 主机 → 创建主机 添加被控主机

添加模版

下滑找到‘Template OS Linux by Zabbix agent

发现监控项从原来默认的一个变为了两个

8.测试监控效果

为了更直观的测试监控效果,来到被监控端执行此命令增大CPU使用率,此命令执行5-7秒ctrl+c终止即可,注意此命令不可执行太长时间不然会占用CPU大量资源导致不可逆的后果

[root@agent ~]# dd if=/dev/zero of=/dev/null

来到zabbix web界面,点击刷新

;