热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

zabbix监控系统介绍及安装部署

目录1,常见的几类监控介绍(1)、Cacti(2)、Nagios(3)、Ganglia(4)、Prometheus(5)、Zabbix(6)、国内2,监控区别3,zabbix监控介

目录

    • 1,常见的几类监控介绍
        • (1)、Cacti
        • (2)、Nagios
        • (3)、Ganglia
        • (4)、Prometheus
        • (5)、Zabbix
        • (6)、 国内
    • 2,监控区别
    • 3,zabbix监控介绍
        • (1),zabbix监控架构
        • (2),zabbix优点
        • (3),Zabbix缺点
    • 4,zabbix监控系统监控对象
    • 5,zabbix监控方式
        • 5,1 被动模式
        • 5,2 主动模式
    • 6,zabbix架构
        • (1)、Zabbix Server
        • (2)、Zabbix数据库存储
        • (3)、Zabbix Web界面
        • (4)、Zabbix Proxy 代理服务器
        • (5)、Zabbix Agent监控代理
        • (6)、Zabbix数据流
    • 7,zabbix常用术语的含义
        • 1、主机(host)
        • 2、主机组(host group)
        • 3、监控项(item)
        • 4、触发器(trigger)
        • 5、事件(event)
        • 6、异常(problem)
        • 7、动作(action)
        • 8、升级(escalation)
        • 9、媒介(media)
        • 10、通知(notification)
        • 11、远程命令(remote command)
        • 12、模版(template)
        • 13、应用(application).
        • 14、web场景(web scenario)
        • 15、前端(frontend)
        • 16、Zabbix API
        • 17、Zabbix server
        • 18、zabbix agent
        • 19、被动(passive)和主动(active)检查
        • 20、Zabbix proxy
    • 8,zabbix 监控系统部署
        • 1,实验准备
          • 1.1,所有机器关闭防火墙和selinux
          • 1.2,实验服务器配置
        • 2,zabbix安装
          • 2.1,下载Yum仓库(三台)
          • 2,2安装zabbix
        • 3,安装设置数据库
          • 3.1 创建mariadb.repo
          • 3.2 yum安装最新版mariadb
          • 3.3启动数据库服务
          • 3.4 创建数据库并授权账号
          • 3.5 导入zabbix服务表
        • 4,配置server端
          • 4.1、Zabbix日志
          • 4.2、日志的滚动
          • 4.3、日志的级别
          • 4.4 数据库相关设置
          • 4.5 启动服务
          • 4.6确认服务端口开启
        • 5,配置web GUI
          • 5.1,查找web GUI的配置文件
        • 6,配置agent端
          • 6.1 安装zabbix安装源
          • 6.2 修改配置文件
        • 7 ,监控过程详解

1,常见的几类监控介绍

(1)、Cacti

cacti是一套基于PHP、MySQL、SNMP 及 RRD Tool开发的监测图形分析工具,Cacti是使用轮询的方式由主服务器向设备发送数据请求来获取设备上状态数据信息的,如果设备不断增多,这个轮询的过程就非常的耗时,轮询的结果就不能即时的反应设备的状态了。Cacti监控关注的是对数据的展示,却不关注数据异常后的反馈。如果凌晨3点的时候设备的某个数据出现异常,除非监控人员在屏幕前发现这个异常变化,否则是没有任何报警机制能够让我们道出现了异常。

(2)、Nagios

Nagios是一款开源的免费网络监控报警服务,能有效监控Windows、Linux和Unix的主机状态,交换机、路由器和防火墙等网络设置,打印机、网络投影、网络摄像等设备。在系统或服务状态异常时发出邮件或短信报警第一时间通知运维人员,在状态恢复后发出正常的邮件或短信通知。Nagios有完善的插件功能,可以方便的根据应用服务扩展功能。
.Nagios已经可以支持由数万台服务器或上千台网络设备组成的云技术平台的监控,它可以充分发挥自动化运维技术特点在设备和人力资源减少成本。只是Nagios无法将多个相同应用集群的数据集合起来,也不能监控到集群中特殊节点的迁移和恢复。

用户群,适合复杂IT环境的企业

优点:

  • 出错的服务器,应用和设备会自动重启,自动日志滚动
  • 配置灵活,可以自动以shell脚本,通过分布式监控模式
  • 支持以冗余的方式进行主机监控,报警设置多样
  • 命令重新加载配置文件无需打扰nagioos的运行

缺点

  • 配置复杂,初学者投入的时间,精力和成本比较大
  • 看不到历史数据,只能看到报警事件,很难追溯故障原因
  • 对性能,流量等指标的处理不是很给力
  • 事件控制台功能很弱,插件易用性差

(3)、Ganglia

Ganglia是 uC Berkeley ‘发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、 gmetad 以及一个Web前端。
·主要是用来监控系统性能,如:CPU、内存、硬盘利用率, l/o负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用,目前是监控HADOOP 的官方推荐服务。

(4)、Prometheus

prometheus由go语言开发,是一套开源的监控,报警,时间序列数据库的组合,适合监控docker容器,其中kubernetes的流行带动了prometheus的发展。

(5)、Zabbix

  • Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
  • Zabbix是由Alexei vladishev创建,目前由Zabbix SlA在持续开发和支持。
  • zabbix是—个企业级的分布式开源监控方案。
  • Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。
    Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。
  • zabbix支持主动轮询和被动捕获。
  • Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。
  • Zabbix是免费的。Zabbix是根据GPL通用公共许可证第2版编写和发行的。这意味着它的源代码都是免费发行的,可供公众任意使用,商业支持由Zabbix公司提供。

(6)、 国内

小米的open falcon (中小型完全没必要,入手比较难,中心思想比较好 )入门成本比较高,

优点:支持自动发现,支持用户主动push,用户自定义插件支持,性能非常高单击支撑200万metric的上报,归档,存储

缺点:发布时间比较短,支持度比较低,很多基础的服务监控插件(tomcat,apache)还不支持,很多功能还在不断完善中,另外由于缺少专门的支持,虽然有开放社区,但是解决问题的效率相对较低。

360监控,百度云监控,阿里云监控,小蜜蜂网站监测,都是付费的。

2,监控区别

  • nagios 图形不是特别好,也可以安装图形插件,但是不怎么好看
  • nagios一般情况下如果需要图形可以和cacti配合使用
  • cacti的监控是轮询监控,效率低,图形相对nagios比较好看
  • zabbix和nagios因为是并发监控,对cpu的要求更高
  • zabbix在性能和功能上强大很多
  • zabbix的图形相当漂亮
  • 支持多种监控方式zabbix-agent snmp等等
  • 支持分布式监控,能监控的agent非常多
  • zabbix有自动发现功能
  • zabbix的web图形界面非常漂亮,

3,zabbix监控介绍

(1),zabbix监控架构

《zabbix监控系统介绍及安装部署》

(2),zabbix优点

  • 开源,无软件成本投入.
  • Server对设备性能要求低·
  • 支持设备多,自带多种监控模板
  • 支持分布式集中管理有自动发现功能,可以实现自动化监控·
  • 开放式接口,扩展性强,插件编写容易
  • 当监控的item比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server端去下载需要监控的item然后取数据上传到server端。这种方式对服务器的负载比较小。
  • Api的支持,方便与其他系统结合

(3),Zabbix缺点

  • 需在被监控主机上安装agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库。
  • 项目批量修改不方便
  • 社区虽然成熟,但是中文资料相对较少,服务支持有限;
  • 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发难度较大
  • 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐;
  • 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;

4,zabbix监控系统监控对象

  • 数据库:MYSQL. MariaDB,Oracle,SQL Server

  • 应用软件;Nginx,Apache,PHP,Tomcat

  • 集群 :LVS,keepalived,haproxy,rhcs,FS

  • 虚拟化 ; vmware,kvm,xfn,docker.k8s

  • 操作系统 :linux,unix,windows性能参数

  • 硬件 :服务器,存储,网络设备

  • 网络 :网络环境(内网环境,外网环境) SNMP

5,zabbix监控方式

5,1 被动模式

被动检测,相对于agent而言,agent,server向agent请求获取配置的各监控项相关的数据,agent接收请求,获取数据并相应给server

5,2 主动模式

主动监测:相对于agent而言,agent(active),agent向server请求与自己相关的监控配置,主动的将server配置的监控项相关的数据发送给server

主动监控能极大节约server资源

6,zabbix架构

zabbix由几个主要的软件组件构成,功能如下:

《zabbix监控系统介绍及安装部署》

(1)、Zabbix Server

Zabbix server是agent程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器。

(2)、Zabbix数据库存储

·所有配置信息和Zabbix收集到的数据都被存储在数据库中。

(3)、Zabbix Web界面

·为了从任何地方和任何平台都可以轻松的访问Zabbix,我们提供基于Web的Zabbix界面。该界面是ZabbixServer的一部分,通常(但不一定)跟Zabbix Server运行在同一台物理机器上。
·如果使用SQLite,Zabbix web 界面必须要跟Zabbix Server运行在同一台物理机器上。

(4)、Zabbix Proxy 代理服务器

Zabbix proxy可以替Zabbix Server收集性能和可用性数据。Proxy代理服务器是Zabbixc软件可选择部署的一部分;当然,Proxy代理服务器可以帮助单台Zabbix Server分担负载压力,

(5)、Zabbix Agent监控代理

Zabbix agents监控代理部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给zabbix Server.

(6)、Zabbix数据流

  • 监控方面,为了创建—个监控项(item)用于采集数据,必须先创建一个主机(host) .
  • 告警方面,在监控项里创建触发器(trigger),通过触发器(trigger)来触发告警动作(action),因此,如果你想收到server XCPU负载过高的警告,必须满足
    • 为server创建一个host并关联一个用于对cpu进行监控的监控项
    • 创建一个tigger,设置成当cpu负载过高时会触发
    • tigger被触发,发送告警邮件

7,zabbix常用术语的含义

1、主机(host)

·一台你想监控的网络没备。用P或域名表示

2、主机组(host group)

·主机的逻辑组;它包含主机和模板。一个主机组里的主机和模板之间并没有任何直接的关联。通常在给不同用户组的主机分配权限时候使用主机组。

3、监控项(item)

·你想要接收的主机的特定数据,一个度量数据。
I

4、触发器(trigger)

。一个被用于定义问题阈值和评估”监控项接收到的数据的逻辑表达式
当接收到的数据高于阈值时,触发器从”OK”变成Problem”状态。当接收到的数据低于阈值时,触发器保留/返回一个-“OK”的状态。

5、事件(event)

·单次发生的需要注意的事情,例如触发器状态改变或发现有监控代理白动注册

6、异常(problem)

·一个处在”异常””状态的触发器

7、动作(action)

。—个对事件做出反应的侦定义的操作。
。一个动作由操作(例如发出通知)和条件(当时操作正在发生组&

8、升级(escalation)

。一个在动作内执行操作的自定义场景;发送通知/执行远程命令的序列

9、媒介(media)

发送告警通知的手段;告警通知的途径

10、通知(notification)

·利用已选择的媒体途径把跟事件相笑的信息发送给用户

11、远程命令(remote command)

一个预定义好的,满足一些条件的情况下,可以在被监控主机上自动执行的命令

12、模版(template)

一组可以被应用到一个或多个主机上的实体(监控项,触发器,图形,聚合图形,应用,LLD,Web场景)的集合
·模版的任务就是加快对主机监控任务的实施;也可以使监控任务的批量修改更简单。模版是直接关联到每台单独的主机上。

13、应用(application).

—组监控项组成的逻辑分组

14、web场景(web scenario)

·利用一个或多个HTTP请求来检查网站的可用性

15、前端(frontend)

Zabbix提供的we美界面

16、Zabbix API

Zabbix APlI允许你使用[SON RPC协议(是一个无状态且轻量级的远程过程调用(RPC)传送协议,其传递内容透过JSON为主)来创建、更新和获取Zabbix对象(如主机、监控项、图形和其他)信息或者执行任何其他的自定义的任务

17、Zabbix server

Zabbix软件实现监控的核心程序,主要功能是与Zabbix proxies和Agents进行交互、触发器计算、发送告警通知;并将数据集中保存等

18、zabbix agent

·一个部署在监控对象上的,能够主动监控本地资源和应用的程序
· Zabbix agent 部署在蓝控的目标上,主动监测本地的资源和应用(硬件驱动,内存,处理器统计等).
Zabbix agent收集本地的操作信息并将数据报告给Zabbix server用于进一步处理。一旦出现异常(比如硬盘空间已满或者有崩溃的服务进程),Zabbix server会主动警告管理员指定机器上的异常。.Zabbix agents 的极端高效缘于它可以利用本地系统调用来完成统计数据的收集。

19、被动(passive)和主动(active)检查

zabbix agents 可以执行被动和主动两种检查方式

  • 1、被动检查(passive check)模式中 agent 应答数据请求,Zabbix server(或者proxy)询问agent数据如CPU的负载情况。然后Zabbiox agent回送结果,

  • 2、主动检查(Active checks)处理过程将相对复杂。Agent必须首先从Zabbix sever索取监控项列表以进行独立处理,然后周期性地发送新的值给server.
    执行被动或主动检查是通过选择相应的监测项目类型来配置的。item type.Zabbix agent处理监控项类型有Zabbix agent和Zabbix agent (active).

    20、Zabbix proxy

    • 一个帮助zabbix Server收集数据,分担zabbix Server的负载的程序
    • Zabbix Proxy是一个可以从一个或多个受监控设备收集监控数据,并将信息发送到Zabbix sever的进程,基本上是代表sever工作的。所有收集的数据都在本地进行缓存,然后传送到proxy所属的Zabbix sever,
    • ·部署Proxy是可选的,但是可能非常有益于分散单个Zabbix sever的负载。如果只有proxy 收集数据,sever上的进程就会减少CPU消耗和磁盘l/○负载。
    • Zabbix proxy是完成远程区域、分支机构、没有本地管理员的网络的集中监控的理想解决方案。

8,zabbix 监控系统部署

1,实验准备

centos 7.5系统服务器3台,一台作为监控服务器,两台作为被监控节点,配置好yum源,防火墙关闭,各节点时钟服务同步,各节点之间可以通过主机名互相通信

1.1,所有机器关闭防火墙和selinux

[root@server1 ~]# systemctl stop firewalld
[root@server1 ~]# setenforce 0
setenforce: SELinux is disabled
[root@server1 ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

1.2,实验服务器配置
机器名称ip配置服务角色备注
node120.0.0.20zabbix-agent开启
node220…0.030zabbix-agent开启
server20.0.0.10zabbix-server开启监控功能

2,zabbix安装

2.1,下载Yum仓库(三台)

[root@zabibx ~]# yum -y install wget
[root@zabibx ~]# wget https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm //去阿里云镜像站复制镜像源包地址
[root@zabibx ~]# ls zabbix-release-4.4-1.el7.noarch.rpm // 下载到本地
[root@zabibx ~]# rpm -ivh zabbix-release-4.4-1.el7.noarch.rpm //安装yum仓库
[root@zabibx ~]# yum repolist
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base:
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base 10,072
zabbix/x86_64 Zabbix Official Repository - x86_64 179
zabbix-non-supported/x86_64 Zabbix Official Repository non-supported - x86_64 4
repolist: 10,255

2,2安装zabbix

[root@zabibx ~]# yum -y install zabbix-agent zabbix-get zabbix-sender zabbix-server-mysql zabbix-web zabbix-web-mysql

3,安装设置数据库

3.1 创建mariadb.repo

[root@zabibx ~]# vim /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.4/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
~

3.2 yum安装最新版mariadb

[root@zabibx ~]# yum -y install MariaDB-server MariaDB-client
[root@zabibx ~]# vim /etc/my.cnf.d/server.cnf
[mysqld]
skip_name_resolve = ON 跳过主机名解析
innodb_file_per_table = ON 开启独立表空间
innodb_buffer_pool_size = 256M 缓存池大小
max_cOnnections= 2000 最大连接数
log-bin = master-log 开启二进制日志

3.3启动数据库服务

[root@zabibx ~]# systemctl restart mariadb
[root@zabibx ~]# mysql_secure_installation 初始化mariadb

3.4 创建数据库并授权账号

mysql
create database zabbix character set 'utf8'; create database zabbix character set utf8 collate utf8_bin;
注意:此处是报错点,4.4.5之前的字符集是第一个,之后的版本都是第二个
grant all on zabbix.* to 'zbxuser'@'20.0.0.%' identified by 'zabbix';
grant all on zabbix.* to 'zbxuser'@'localhost' identified by 'zabbix';
flush privileges;
注意:记住账号是zbxuser 密码是zabbix

3.5 导入zabbix服务表

查看zabbix-server-mysql这个包提供了什么

[root@zabibx ~]# rpm -ql zabbix-server-mysql
/etc/logrotate.d/zabbix-server
/etc/zabbix/zabbix_server.conf
/usr/lib/systemd/system/zabbix-server.service
/usr/lib/tmpfiles.d/zabbix-server.conf
/usr/lib/zabbix/alertscripts
/usr/lib/zabbix/externalscripts
/usr/sbin/zabbix_server_mysql
/usr/share/doc/zabbix-server-mysql-4.4.10
/usr/share/doc/zabbix-server-mysql-4.4.10/AUTHORS
/usr/share/doc/zabbix-server-mysql-4.4.10/COPYING
/usr/share/doc/zabbix-server-mysql-4.4.10/ChangeLog
/usr/share/doc/zabbix-server-mysql-4.4.10/NEWS
/usr/share/doc/zabbix-server-mysql-4.4.10/README
/usr/share/doc/zabbix-server-mysql-4.4.10/create.sql.gz # 生成表的各种脚本
/usr/share/man/man8/zabbix_server.8.gz
/var/log/zabbix
/var/run/zabbix

使用create.sql.gz生成所需要的表

[root@zabibx ~]# gzip -d /usr/share/doc/zabbix-server-mysql-4.4.10/create.sql.gz
[root@zabibx doc]# cd /usr/share/doc/zabbix-server-mysql-4.4.10/
[root@zabibx zabbix-server-mysql-4.4.10]# ls
AUTHORS ChangeLog COPYING create.sql NEWS README
[root@zabibx zabbix-server-mysql-4.4.10]# head create.sql # 查看一下表头
CREATE TABLE `users` (
`userid` bigint unsigned NOT NULL,
`alias` varchar(100) DEFAULT '' NOT NULL,
`name` varchar(100) DEFAULT '' NOT NULL,
`surname` varchar(100) DEFAULT '' NOT NULL,
`passwd` varchar(32) DEFAULT '' NOT NULL,
`url` varchar(255) DEFAULT '' NOT NULL,
`autologin` integer DEFAULT '0' NOT NULL,
`autologout` varchar(32) DEFAULT '15m' NOT NULL,
`lang` varchar(5) DEFAULT 'en_GB'

查看表头发现没有创建数据库命令,这正是手动创建数据库的原因,把所需表导入数据库即可

[root@zabibx zabbix-server-mysql-4.4.10]# vim create.sql
USE zabbix; # 在配置文件最上面加上此行
[root@zabibx zabbix-server-mysql-4.4.10]# mysql -uzbxuser -p zabbix Enter password:
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| zabbix |
+--------------------+
4 rows in set (0.001 sec)
MariaDB [zabbix]> use zabbix;
MariaDB [zabbix]> show tables; # 查看有多少张表
+----------------------------+
| Tables_in_zabbix |
+----------------------------+
| acknowledges |
| actions |
.......
| valuemaps |
| widget |
| widget_field |
+----------------------------+
MariaDB [zabbix]> select * from users; # 查看user表是否有

可以看出来,我们的数据已经导入成功了

4,配置server端

数据库配置好了之后我们要去修改server端的配置文件

[root@zabibx ~]# cd /etc/zabbix/
[root@zabibx zabbix]# ls
web zabbix_agentd.conf zabbix_agentd.d zabbix_server.conf
[root@zabibx zabbix]# cp zabbix_server.conf{,.bak} # 为了方便以后的恢复,先把配置文件备份一份
[root@zabibx zabbix]# vim zabbix_server.conf
ListenPort=10051 默认监听端口
SourceIP=20.0.0.10 采样数据请求的ip

4.1、Zabbix日志

·默认用文件记录,也可以发送给我们的rsyslog日志记录系统,如果我们选择默认,则日志存放在LogFile=/var/log/zabbix/zabbix_server.log中,也可以自己设置。
《zabbix监控系统介绍及安装部署》

4.2、日志的滚动

·默认值为1,表示滚动。我们设为O则表示不滚动。当数据特别多的时候,.我们也可以设置成为1,然后在Maximum size of log file in MB设置当数据文件最大到多少时会自动滚劫。

《zabbix监控系统介绍及安装部署》

4.3、日志的级别

·一共有6个级别。我们可以根据自己的需要来设置级别。其中0表示输出最少的信息,5表示输出最详细的信息,默认值为3,设置为3的话就表示,0、1、2、3四个级别都显示。考虑到生产系统中的压力时,这里的信息,如果没有必要的话,越简单越好,只要在出错的时候,我们可以依据其进行排错即可。

《zabbix监控系统介绍及安装部署》

4.4 数据库相关设置

DBHost=20.0.0.10 数据库对外的主机
DBName=zabbix 数据库名称
DBUser=zbxuser 数据库用户
DBPassword=zabbix 数据库密码
DBPort=3306 数据库启动端口
[root@zabibx zabbix]# cat zabbix_server.conf | grep -v '#' | grep -v '^$'

补充:
1、使用grep -i “^辞排吉#”“zabbix_server.conf 来查看配置文件中有哪些大段
2、使用grep -i “^#拼#” zabbix_server.conf来查看配置文件中每一段中的配置项有哪些

4.5 启动服务

[root@zabibx zabbix]# systemctl start zabbix-server.service
[root@zabibx zabbix]# systemctl status zabbix-server.service

4.6确认服务端口开启

[root@zabibx zabbix]# ss -nutl | grep 10051
tcp LISTEN 0 128 *:10051 *:*
tcp LISTEN 0 128 :::10051 :::*

5,配置web GUI

5.1,查找web GUI的配置文件

/etc/httpd/conf.d/zabbix.conf 此文件就是做映射的文件

[root@zabibx zabbix]# rpm -ql zabbix-web | less
[root@zabibx zabbix]# vim /etc/httpd/conf.d/zabbix.conf
Alias /zabbix /usr/share/zabbix # 访问的时候要在主机后加上/zabbix来访问服务

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 max_input_vars 10000
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga 设置时区
php_value date.timezone Asia/Shanghai 此行添加上海时区

注意:时区是一定要设置的,这里被注释掉是因为在php中的配置文件中设置时区,如果在php配置文件中设置时区,则对所有的php服务均有效,如果在zabbix,conf中设置时区,则仅对zabbix服务有效,所以,在php配置文件中设置时区。
[root@zabibx zabbix]# vim /etc/php.ini
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezOne=
date.timezOne= Asia/Shanghai
重启服务并查看端口状态
[root@zabibx zabbix]# systemctl enable httpd
[root@zabibx zabbix]# systemctl restart httpd
[root@zabibx zabbix]# ss -tun | grep 80
tcp ESTAB 0 0 20.0.0.10:56280 20.0.0.10:3306
tcp ESTAB 0 0 ::ffff:20.0.0.10:3306 ::ffff:20.0.0.10:56280
[root@zabibx zabbix]# netstat -tunlp | grep 80
tcp6 0 0 :::80 :::* LISTEN 59718/httpd

《zabbix监控系统介绍及安装部署》

检查依赖关系都是对的,OK状态点下一步

配置数据库文件

《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》
《zabbix监控系统介绍及安装部署》

6,配置agent端

6.1 安装zabbix安装源

小建议:可以先把包都提前下好,用的时候直接拿来用

[root@fw ~]# wget https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
[root@fw ~]# rpm -ivh zabbix-release-4.4-1.el7.noarch.rpm
[root@fw ~]# wget https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm
[root@fw ~]# yum -y install epel-release.norach
[root@fw ~]# yum -y install zabbix-agent zabbix-sender
[root@fw ~]# rpm -q zabbix-agent
zabbix-agent-4.4.10-1.el7.x86_64
[root@fw ~]# rpm -q zabbix-sender
zabbix-sender-4.4.10-1.el7.x86_64

6.2 修改配置文件
  • 1,确认配置文件

    [root@fw ~]# rpm -ql zabbix-agent
    /etc/logrotate.d/zabbix-agent
    /etc/zabbix/zabbix_agentd.conf
    /etc/zabbix/zabbix_agentd.d
    /usr/lib/systemd/system/zabbix-agent.service
    /usr/lib/tmpfiles.d/zabbix-agent.conf
    /usr/sbin/zabbix_agentd
    /usr/share/doc/zabbix-agent-4.4.10
    /usr/share/doc/zabbix-agent-4.4.10/AUTHORS
    /usr/share/doc/zabbix-agent-4.4.10/COPYING
    /usr/share/doc/zabbix-agent-4.4.10/ChangeLog
    /usr/share/doc/zabbix-agent-4.4.10/NEWS
    /usr/share/doc/zabbix-agent-4.4.10/README
    /usr/share/doc/zabbix-agent-4.4.10/userparameter_mysql.conf
    /usr/share/man/man8/zabbix_agentd.8.gz
    /var/log/zabbix
    /var/run/zabbix

  • 2,编辑配置文件

    [root@zabibx ~]# cd /etc/zabbix/
    [root@zabibx zabbix]# ls
    web zabbix_agentd.d zabbix_server.conf.bak
    zabbix_agentd.conf zabbix_server.conf
    [root@zabibx zabbix]# cp zabbix_agentd.conf{,.bak}
    [root@zabibx zabbix]# ls
    web zabbix_agentd.conf.bak zabbix_server.conf
    zabbix_agentd.conf zabbix_agentd.d zabbix_server.conf.bak
    [root@zabibx zabbix]# vim zabbix_agentd.conf
    Server=20.0.0.10 # 指明服务器是谁的
    ListenPort=10050 # 自己监听的端口
    ListenIP=0.0.0.0 # 自己的监听的地址,0.0.0.0表示本机所有地址
    StartAgents=3 # 优化时使用的
    ServerActive=20.0.0.10 #主动监控时的服务器
    Hostname=zabbix # 自己能被server端识别的名称

  • 启动服务查看状态

    [root@zabibx zabbix]# systemctl status zabbix-agent
    [root@zabibx zabbix]# ss -ntul | grep 10050
    tcp LISTEN 0 128 *:10050 *:*

    已经开启成功就可以去server端添加主机了,其他主机进行同样的操作,唯一不同的是配置文件中的Hostanme要设为对应主机名

7 ,监控过程详解

  • 1,修改密码及中文版

《zabbix监控系统介绍及安装部署》

  • 2,创建主机及主机群组

    • 定义一个主机群组

    《zabbix监控系统介绍及安装部署》

    • 添加主机
      《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》

注意:这一步如果没有变成绿色,可先行配置下面添加应用集等等

添加应用集

《zabbix监控系统介绍及安装部署》

添加监控项

《zabbix监控系统介绍及安装部署》

关于key值,可以直接在网页上设置(服务器自动执行),也可以使用命令行(手动执行了)来获取:

[root@zabibx ~]# zabbix_get -s 20.0.0.10 -p 10050 -k "system.cpu.intr"
10828903

在agent端,也可以使用命令来查看intr的变化速率

《zabbix监控系统介绍及安装部署》

继续配置监控项

如要修改,双击
《zabbix监控系统介绍及安装部署》

《zabbix监控系统介绍及安装部署》

点检测,点击仪表盘

《zabbix监控系统介绍及安装部署》


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 这篇文章主要讲解了“openPNE怎么创建项目”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“open ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
author-avatar
处男是你_909
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有