Zabbix监控系统配置
1、Zabbix是一个基于WEB界面的提供分布式系统监控的企业级的开源解决方案 Zabbix能监视各种网络参数,保证服务器系统的安全稳定的运行,并提供灵活的通知机制以让SA快速定位并解决存在的各种问题 。有点有如下:
q 支持自动发现服务器和网络设备;
q 支持底层自动发现;
q 分布式的监控体系和集中式的WEB管理;
q 支持主动监控和被动监控模式
q 服务器端支持多种操作系统:Linux, Solaris, HP-UX, AIX, FreeBSD, OpenBSD, MAC等;
q Agent客户端支持多种操作系统:Linux, Solaris, HP-UX, AIX, FreeBSD,Windows等;
q 基于SNMP、IPMI接口方式也可以监控Agent;
q 安全的用户认证及权限配置;
q 基于WEB的管理方法,支持自由的自定义事件和邮件发送;
q 高水平的业务视图监控资源,支持日志审计,资产管理等功能;
支持高水平API二次开发、脚本监控、自Key定义、自动化运维整合调用
2、Zabbix三大组件:Zabbix server Zabbix Proxy Agent客户端,其中Zabbix Server端包括:WEB GUI 、Database、Zabbix Server。
监控流程图
Zabbix监控完整流程包括:Agentd安装在被监控的主机上,Agent负责定期收集客户端本地各项数据,并发送到Zabbix Server端,Zabbix server收到数据,将数据存储到数据库中,用户基于Zabbix WEB可以看到数据在前端展现图像。 ,
a、Zabbix server :负责接收agent发送的报告信息核心组件,所有配置,统计数据及操作数据均由其组织进行。
Database Storage:,专用于存储所有配置信息 通常与Server运行在同一台主机上;
WEB interface :Zabbix 的GUI接口,通常与Zabbix运行在同一台机器上
Proxy:常用于分布监控环境中,代理Server收集部分被监控端的监控数据并统一发往Server端;
Zabbix Agent:部署在被监控主机上,负责收集本地数据并发往Server端或Proxy端; l>
Zabbix监控部署在系统中,会包含常见的四个程序:zabbix_server 、zabbix_get、zabbix_agentd 、zabbix_proxy、zabbix_sender等。四个程序启动后分别对应四个进程,如下为每个进程的功能: q Zabbix_server:Zabbix服务端守护进程,其中zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy的数据最终均是提交给Zabbix_Server;
a 、Zabbix_Agentd:客户端守护进程,负责收集客户端数据,例如收集cpu负载、内存、硬盘使用情况等 zabbix_sender、zabbix_proxy的数据最终均是提交给Zabbix_Server \
b、Zabbix_get:Zabbix数据获取工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令;
c、 Zabbix_sender:zabbix数据发送工具,用于发送数据给server或者proxy,通常用于耗时比较长的检查。很多检查非常耗时间,导致zabbix超时。于是我们在脚本执行完毕之后,使用sender主动提交数据;
d、 Zabbix_proxy:zabbix分布式代理守护进程,分布式监控架构需要部署Zabbix_Proxy。
3、Zabbix监控方式及数据采集*
Zabbix分布式监控系统监控客户端的方式常见有三种,分别是Agent方式、SNMP、IPMI方式,三种方式特点如下: "
A、Agent:Zabbix可以基于自身zabbix_agent客户端插件监控OS的状态,例如CPU、内存、硬盘、网卡、文件等
B、SNMP:Zabbix可以通过简单网络管理协议(Simple Network Management Protocol,SNMP)协议监控网络设备或者Windows主机等,通过设定SNMP的参数将相关监控数据传送至服务器端,交换机、防火墙等网络设备一般都支持SNMP协议。
C、智能平台管理接口(Intelligent Platform Management Interface,IPMI)即主要应用于设备的物理特性,包括:温度、电压、电扇工作状态、电源供应以及机箱入侵等。IPMI最大的优势在于无论OS在开机还是关机的状态下,只要接通电源就可以实现对服务器的监控 >:
3.1 Zabbix监控客户端分为主动监控与被动监控,主被动模式以客户端为参照,Zabbix监控客户端默认为被动模式,可以修改为主动模式,只需要在客户端配置文件中添加。可以关闭被动模式的方法:在配置文件中加入 StartAgents=0,即为关闭被动模式。主被动监控模
1)Zabbix主动模式:Agent主动请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy,Zabbix agent首先向ServerActive配置的IP请求获取active items,获取并提交active items数据值server或者proxy
2)Zabbix被动模式:Server向agent请求获取监控项的数据,agent返回数据,Server打开一个TCP连接,Server发送请求agent.ping,Agent接收到请求并且响应,Server处理接收到的数据。
3、安装zabbix前先安装好LAMP
(1)Apache WEB安装,先安装apr、apr-utils库包
yum install apr-devel apr-util-devel -y
tar xjvf httpd-2.4.29.tar.bz
cd httpd-2.4.29
./configure --prefix=/usr/local/apache --enable-so --enable-rewrite
make
make install
(2)MYSQL数据库安装,基于MYSQL5.5编译安装,通过cmake、make、make install三个步骤实现
yum install cmake ncurses-devel ncurses -y
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql55 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DWITH_XTRADB_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EXTRA_CHARSETS=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_BIG_TABLES=1 \
-DWITH_DEBUG=0
make
make install
将源码安装的Mysql数据库服务设置为系统服务,可以使用chkconfig管理,并启动MYSQL数据库:
cd /usr/local/mysql55/
\cp support-files/my-large.cnf /etc/my.cnf
\cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld chkconfig --level 35 mysqld on
mkdir -p /data/mysql
useradd mysql
/usr/local/mysql55/scripts/mysql_install_db --user=mysql --datadir=/data/mysql/ --basedir=/usr/local/mysql55/
ln -s /usr/local/mysql55/bin/* /usr/bin/
service mysqld restart
(3)PHP服务安装,PHP需与Apache、MySQL进行整合,如图12-3所示,参数命令
tar jxf php-5.6.8.tar.bz2
cd php-5.6.8.tar ;
./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql55/ (这个是数据库没有分离)
./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd (数据库分开安装需要用mysqlnd连接)
make
make install
(4)(1) Apache+PHP源码整合
为了能让Apache发布PHP页面,需要将PHP安装完成后的libphp5.so模块与Apache进行整合,vim httpd.conf编辑配置文件,加入如下代码
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
DirectoryIndex index.php index.html index.htm
(5) 测试Apache+PHP环境
创建PHP测试页面,在/usr/local/apache/htdocs目录下创建index.php测试页面,执行如下命令自动创建
cat >/usr/local/apache/htdocs/index.php<<EOF
<?php
phpinfo();
?>
EOF
重新启动Apache服务,浏览器输入 Apache WEB的IP访问,如图所示,即代表LAMP源码环境整合成功。
4、Zabbix监控平台部署
Zabbix监控平台部署,至少需要安装四个组件,分别是Zabbix_Server、Zabbix_Web、Databases、Zabbix_Agentd,如下为Zabbix监控平台安装配置详细步骤:
(1)系统环境:
Server 端:192.168.91.128
Agent端:192.168.91.130
数据库IP:192.168.91.129
(2)下载zabbix wget <http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/32.6/zabbix-3.2.6.tar.gz
(3) Zabbix Server端和Zabbix Agent执行如下代码:
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI mariadb-devel mysql-devel
yum install mysql-dev gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xm
groupadd zabbix
useradd -g zabbix zabbix
usermod -s /sbin/nologin zabbix
(4) Zabbix Server端配置
创建zabbix数据库,执行授权命令
create database zabbix charset=utf8;
grant all on zabbix.* to zabbix@"192.168.0.120" identified by '123456';
flush privileges;
解压zabbix软件包
mysql -uzabbix -p123456 zabbix <database/mysql/schema.sql
mysql -uzabbix -p123456 zabbix <database/mysql/images.sql
mysql -uzabbix -p123456 zabbix < database/mysql/data.sql
切换至Zabbix解压目录,执行如下代码,安装Zabbix_server:
./configure --prefix=/usr/local/php --with-apxs2=/usr/sbin/apxs --with-mysql --with-mysqli --enable-bcmath --enable-ctype --enable-mbstring --enable-sockets --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/lib64 --with-freetype-dir=/usr/local/freetype(编译加全,后面的模块默认能开)
./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
make
make install
ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/
*将zabbix_server.conf配置文件中代码设置为如下: LogFile=/tmp/zabbix_server.log DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=123456 "
(5)(1) Zabbix WEB GUI安装配置
通过浏览器Zabbix_WEB验证,通过浏览器访问192.168.91.128如图1
如上异常错误解决方法代码如下,安装缺失的软包,并修改php.ini对应参数的值即可,如图
./configure --prefix=/usr/local/php --with-apxs2=/usr/sbin/apxs --with-mysql --with-mysqli --enable-bcmath --enable-ctype --enable-mbstring --enable-sockets --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/lib64 --with-freetype-dir=/usr/local/freetype
sed -i '/post_max_size/s/8/16/g;/max_execution_time/s/30/300/g;/max_input_time/s/60/300/g;s/\;date.timezone.*/date.timezone \= PRC/g;s/\;always_populate_raw_post_data/always_populate_raw_post_data/g' /etc/php.ini
/etc/init.d/httpd restart
有些模块如果还是不行可以按如下步骤
进入php源码目录
cd /root/php-5.6.8/ext/gettext
phpize
./configure --with-php-config=/usr/local/php5/bin/php-config
make
make install
在/usr/usr/local/php/etc/php.ini 加入如下代码
extension=/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/bcmath.so
extension=/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/mbstring.so
extension=/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/sockets.so
extension=/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/gd.so
重启httpd 刷新网页
Zabbix监控系统配置的更多相关文章
- Zabbix监控系统配置之-自动发现规则入门
假设你已经知道[模板-监控项-监控项原型-自动发现规则]之间的关系.(此处应有关系图,待填坑) 1. 添加模板 我新建了一个名叫Dapianzi SNMP Linux的模板,里面添加了已经启动了SNM ...
- 使用 Zabbix 监控 Jenkins
笔者最近的工作涉及到使用 Zabbix 监控 Jenkins.在谷歌上搜索到的文章非常少,能操作的就更少了.所以决定写一篇文章介绍如何使用 Zabbix 监控 Jenkins. 下图为整体架构图: 整 ...
- 使用Zabbix监控Oracle数据库
Orabbix介绍 监控Oracle数据库我们需要安装第三方提供的Zabbix插件,我们先测试比较有名的Orabbix,http://www.smartmarmot.com/product/orabb ...
- Zabbix监控nginx-rtmp status(json版)
与前面的文章 zabbix监控nginx-rtmp status(html版)区别只在于取值的页面不一样 http://127.0.0.1:81/control/get/all_streams sta ...
- Zabbix监控mysql performance
介绍 zabbix监控mysql性能,使用zabbix自带的mysql监控模板,可以监控以下内容OPS(增删改查).mysql慢查询数量.mysql请求\响应流量带宽 配置 新建mysql监控用户 G ...
- zabbix监控Java 8080端口
linux下端口和服务是对应的,Java进程启动时默认监听8080端口,如果服务挂掉则8080端口就没有了. lsof -i:8080 端口,如果没有任何的输出,说明该端口不在工作. 想在zabbix ...
- zabbix监控报错zabbix server is not running解决方法
问题描述: 布置好zabbix监控,正常运行.但是重启了虚拟机服务器之后,页面出现如下的报错,而且设置的报信息也是失效的:
- Zabbix监控Tengine
title: Zabbix监控Tengine tags: zabbix,nginx,tengine author: Chinge Yang date: 2016-12-29 --- Zabbix监控T ...
- zabbix 监控web网站性能
一直在纠结用什么实例来给大家演示呢?想来想去还是官方的好,那我们怎么用zabbix监控web性能和可用性呢?我们这边分为几个步骤:打开网站.登陆.登陆验证.退出,一共4个小step,看实例. 检测流程 ...
随机推荐
- 一篇文章,教你学会Git
在日常工作中,经常会用到Git操作.但是对于新人来讲,刚上来对Git很陌生,操作起来也很懵逼.本篇文章主要针对刚开始接触Git的新人,理解Git的基本原理,掌握常用的一些命令. 一.Git工作流程 以 ...
- uva-11129-分治
题意:对于一个0-(N-1)的等差数列,求其中一个排列Q,使得任意0<=i,j,k<n 时,ai,aj,ak不是等差数列. 解法:考虑0-(N-1)这个等差数列,假设公差为K,那么数列如下 ...
- javafx链接实现
方式一: Desktop.getDesktop().browse(new URI(manualUrl)); 在linux环境bug 方式二: 转载自:https://stackoverflow.com ...
- py库: pyautogui (自动测试模块,模拟鼠标、键盘动作)
PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块 pyautogui 库 2017-10-4 pip install pyautogui python pip.exe install p ...
- 17.纯 CSS 创作炫酷的同心矩形旋转动画
原文地址:https://segmentfault.com/a/1190000014807564 感想: 这个特效不难,但是这想法可能想不到,哈哈,怎么又废了. HTML代码: <div cla ...
- 1. SpringBoot启动后,报异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.
出现这个异常说明了跳转页面的url无对应的值. 原因1: Application启动类的位置不对.要将Application类放在最外侧,即包含所有子包 原因:spring-boot会自动加载启动类所 ...
- django之Model类
Model是model的基类,该类的metaclass是modelbase,在生成model类对象时是采用modelbase的.django.setup()时,apps会把app建立app_confi ...
- leetcode990
class Finder: def __init__(self): self.Parent = [i for i in range(26)] def union(self, p, q): self.P ...
- Spring cloud(2)B Eureka 注册微服务到服务中心
1.在provide上添加pom(必须加上web) 如果不加 启动后就会自己关闭 <dependency> <groupId>org.springframework.clo ...
- WebService与RESTful WebService
Manual Instruction Document Web Service JAX-WS & JAX-RS Author: Liu Xiang Date: 2018/01/12 1. Su ...