首页 > 代码库 > Zabbix 实例配置,工作need
Zabbix 实例配置,工作need
Zabbix 监控
一、Zabbix介绍
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
提供api功能,二次开发方便,你可以选用zabbix来进行二次深度开发,结合cmdb资产管理系统,业务管理系统。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台上。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系统之上。
zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(trapping方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。
另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。
二、zabbix的主要特点:
- 安装与配置简单
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面设置或查看监视结果
- email等通知功能
三、Zabbix主要功能:
- CPU负荷
- 内存使用
- 磁盘使用
- 网络状况
- 端口监视
- 日志监视
-监控nginx,tomcat等应用
四、Zabbix部署(监控端和被监控端)
-首先要部署好前提环境LNMP/LAMP
-创建组和用户
groupadd zabbix
useradd -g zabbix -m zabbix -s /sbin/nologin
-解压tar包并导入相关数据
tar xzf zabbix-3.2.0.tar.gz
cd zabbix-3.2.0/database/mysql/
mysql -u root -p
create database zabbix character set utf8;
grant all privileges on zabbix.* to zabbix@‘10.99.1.122‘ identified by ‘123456‘;
use zabbix;
source schema.sql; --表结构
source images.sql; --图片库
source data.sql; --初始脚本
-编译安装zabbix
cd zabbix-3.2.0
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/local/mysql/bin/mysql_config
make && make install
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
ln -s /usr/local/zabbix/bin/* /usr/local/bin/
vi /etc/services #编辑,在最后添加以下代码
# Zabbix
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
-修改zabbix配置文件
cd /usr/local/zabbix/etc
vi /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=123456 #数据库密码
ListenIP=localhost #数据库ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录
vi /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #启用自定义key
cp /root/software/zabbix-3.2.0/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server
cp /root/software/zabbix-3.2.0/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
chmod +x /etc/rc.d/init.d/zabbix_server
chmod +x /etc/rc.d/init.d/zabbix_agentd
-修改zabbix开机启动脚本中的zabbix安装目录
vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安装目录
vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安装目录
-配置web站点
cd /root/software/zabbix-3.2.0/frontends
cp -rf php /data/www/wwwroot/zabbix
-修改php配置文件参数
1、vi /etc/php.ini #编辑修改
post_max_size =16M
max_execution_time =300
max_input_time =300
2、vi /usr/local/php/etc/php-fpm.conf #编辑修改
request_terminate_timeout = 300
service php-fpm reload #重启php-fpm
/usr/local/nginx/sbin/nginx #启动nginx
service zabbix_server start #启动zabbix服务端
service zabbix_agentd start #启动zabbix监控端
-web访问http://ip/zabbix进行相关配置
五、被监控端
-安装依赖环境:
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI
-安装包:
zabbix-3.2.0.tar.gz
tar -xzf zabbix-3.2.0.tar.gz
cd zabbix-3.2.0
-安装:
./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
-编辑配置文件zabbix_agentd.conf:
cp /usr/local/zabbix/etc/zabbix_agentd.conf /usr/local/zabbix/etc/zabbix_ zabbix_agentd.conf.back
vi/usr/local/zabbix/etc/zabbix_agentd.conf
修改项:
LogFile=/tmp/zabbix_agentd.log
Server=192.168.0.26
UnsafeUserParameters=1
DebugLevel=3
创建日志文件:
# touch /tmp/zabbix_agentd.log
# chmod 777 /tmp/zabbix_*
配置开机启动脚本:
# cd zabbix-3.2.0
# cp misc/init.d/tru64/zabbix_agentd /etc/init.d/zabbix_agentd
启动zabbix_agentd
/etc/init.d/zabbix_agentd start
六、安装之后的界面和增加监控主机相关配置
设置成中文,如果后面出现乱码需上传字体
添加一台监控机器
进入添加的主机
添加模版(里面有自带的模版,后面可以添加需要监控项目自定义模版)
io是我自定义的模版,后面需要添加相关配置
-去到被监控机器添加监控io的配置
vim /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
cd /usr/local/zabbix/etc/zabbix_agentd.conf.d
vim userparameter_io.conf
UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$4}‘
UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$7}‘
UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$8}‘
UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$11}‘
UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$12}‘
UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$13}‘
UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$6}‘
UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk ‘{print $$10}‘
这样就出图了
增加监控一个memory
下图监控本机的数据包括nginx和io(这两个监控项目是自己定义模块)
下图监控10.99.1.105的数据包括io(是自己定义模块)
下面图是添加自定义模块io
然后点击创建监控项目进行添加(添加的名称与刚才上面配置文件的要对应)
七、邮件配置wget http://nchc.dl.sourceforge.net/sourceforge/msmtp/msmtp-1.4.17.tar.bz2
tar xf msmtp-1.4.17.tar.bz2
cd msmtp-1.4.17
./configure --prefix=/usr/local/msmtp
mkdir /usr/local/msmtp/etc
cd /usr/local/msmtp/etc
vim msmtprc
测试一下:/usr/local/msmtp/bin/msmtp xxx@qq.com,输入内容后按ctrl+D发出
yum install mutt*
Vim /etc/Muttrc.local
set sendmail="/usr/local/msmtp/bin/msmtp"
set use_from=yes
set realname="xxx@139.com"
set editor="vim"
echo "邮件报警测试" | mutt -s "测试" xxx@qq.com #收件人地址
vim /usr/local/zabbix/alertscripts/baojing,并写入如下内容:
#!/bin/bash
echo "$3" | mutt -s "$2" $1 # $3表示邮件内容、$2表示邮件标题、$1表示收件人
本文出自 “大花猫博客” 博客,请务必保留此出处http://bighuamao.blog.51cto.com/1995527/1888912
Zabbix 实例配置,工作need