Zabbix简介

Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统 的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix由2部分构成,zabbix server与可选组件zabbix agent。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负荷   
内存使用   
磁盘使用   
网络状况   
端口监视   
日志监视

安装fping

由于 zabbix 使用 fping 替代了 ping 作为 icmp 的工具,所以要安装 fping 
可以从 http://fping.sourceforge.net/ 上下载 fping 的源代码,解压编译安装。

fping是加强版的ping工具,可以同时ping多个主机。

fping的官网是:http://www.fping.com

wget http://fping.sourceforge.net/download/fping.tar.gz
tar -xvf /nfs/pkg/fping.tar.gz
cd fping-2.4b2_to/
./configure 
make && make install

安装完毕后,一起就2个文件:

/usr/local/sbin/fping #执行文件
/usr/local/man/man8/fping.8 #man文件

设置fping权限:

chown root:zabbix /usr/local/sbin/fping
chmod 710 /usr/local/sbin/fping
chmod ug+s /usr/local/sbin/fping

然后再安装traceroute:

yum install traceroute -y

Zabbix安装

 ①环境
1)关闭iptables
[root@k zabbix]# iptables -F
[root@k zabbix]# /etc/init.d/iptables save

2)关闭selinux

编辑文件/etc/sysconfig/selinux
将设置
SELINUX=enforcing
修改为:
SELINUX=disabled
 3)安装相关依赖包
  yum -y install gcc mysql-server httpd php php-mysql php-gd php-bcmath php-xml php-mbstring mysql-devel php-snmp net-snmp-devel net-snmp  net-snmp-utils OpenIPMI-devel curl-devel
 ②下载解压
tar xvf zabbix-2.4.5.tar.gz -C /usr/local
增加zabbix用户和组
groupadd zabbix
useradd zabbix -g zabbix -s /sbin/nologin
③配置zabbix数据库
启动MySQL数据库:
service mysqld start
修改MySQL root用户密码(默认密码为空)
mysqladmin –u root –p password 123456
进入数据库:
mysql -u root -p
mysql> create database zabbix default charset utf8;
mysql> grant all on zabbix.* to zabbix@'localhost' identified by '123456';
mysql> grant all on zabbix.* to zabbix@'127.0.0.1' identified by '123456';
mysql> flush privileges; (刷新权限配置)
quit
导入表和数据:
cd /usr/local/zabbix-2.4.5/database/mysql
mysql -u zabbix -p123456 zabbix< schema.sql (将zabbix中的mysql.sql文件重定向到zabbix数据库中)
mysql -u zabbix -p123456 zabbix < images.sql     (有先后顺序)
mysql -u zabbix -p123456 zabbix  < data.sql
④编译安装zabbix

cd /usr/local/zabbix-2.4.5;
./configure --sysconfdir=/etc/zabbix  --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-libcurl --with-net-snmp --with-openipmi
make && make install
 配置文件
 vi /etc/zabbix/zabbix_server.conf  修改如下:
 DBName=zabbix  <---zabbix使用的数据库
DBUser=zabbix <---zabbix连接mysql所使用的用户名
DBPassword=123456 <----zabbix连接mysql所使用的密码
DBSocket=/var/lib/mysql/mysql.sock <---如果链接的是本机的数据库,必须确定socket路径正确
 FpingLocation=/usr/local/sbin/fping  <---修改默认的icmp工具为fping

 vi /etc/zabbix/zabbix_agentd.conf
 Server=192.168.66.16   <----指向zabbix服务器的ip
 ServerActive=192.168.66.16   <----指向zabbix服务器的ip
 Hostname=192.168.66.16      <---本机(zabbix客户端)的hostname或者ip

添加web前端php文件

 cd /usr/local/zabbix-2.4.5/frontends/
 cp -rf php /var/www/html/zabbix
 chown -R zabbix:zabbix /var/www/html/zabbix
 web前端安装配置
 vi /etc/php.ini  修改php相关参数
max_execution_time = 600
max_input_time = 600
date.timezone = Asia/Shanghai
post_max_size = 32M
memory_limit = 256M vi /etc/httpd/conf/httpd.conf
DirectoryIndex index.php index.html
# LoadModule foo_module modules/mod_foo.so
LoadModule php5_module modules/libphp5.so

启动服务

 /etc/init.d/httpd start
/etc/init.d/mysqld start
/usr/local/zabbix/sbin/zabbix_server start
 /usr/local/zabbix/sbin/zabbix_agentd start

配置Zabbix服务器端

 在本地浏览器上访问Zabbis Serve地址开始web前端配置,http://192.168.66.16/zabbix 按提示一步步next,其中Step 3 Check of pre-requisites 必须全部项目OK后
才能继续配置,如有提示fail,去server上检查是否安装这个包或配置是否按上述更改。共需6步,如下图:
a) 进入安装界面点击Next

b) 确保所有的监测项都是OK,点击Next

c) 填写zabbix数据库的用户名、密码、地址等信息,点击Test connection,OK后点击Next

(上图中 Database name 为前面创建的数据库名,User为前面创建的连接MySQL的数据库用户zabbix,Password为前面创建的连接MySQL数据库所使用的密码,本实验所使用的密码为123456;Test connection必须OK 才能进行下一步)
d) 填写zabbix服务器的信息,主机名,server程序监听的的端口,主机IP地址等,如果server跟web在一台服务器上保持默认即可,点击Next

 e) 确认前面几部填写的信息没有问题的话点击Next

 f) 检查web程序的config文件,如果没问题会显示OK,直接点击finish即可完成安装(如果此处有问题一般是zabbix虚拟主机目录文件的权限问题,上面已经有设置的过程一般不会出现问题)

如果出现下图的错误,则按照其提示操作即可(点击

按钮下载配置文件,将下载后的文件拷贝到/var/www/html/zabbix/conf/下,改名为zabbix.conf.php,在修改文件的相关拥有者为zabbix{命令 chown zabbix.zabbix /var/www/html/zabbix/conf/zabbix.conf.php},在点击Retry按钮,变成上图所示后点击Finish即安装成功了)

如果因为手误,数据库密码或者用户名等的填写错了,后面会一直报错,我们可以手动的去编辑配置文件vim /var/www/html/zabbix/conf/zabbix.conf.php  手动定义相关的参数即可
   g) 进入登录界面点击登录,默认账号密码为admin / zabbix
h) 添加监控项
     进入Configuration -》Hosts 选择 Zabbix Server 然后 Activate Select,Zabbix Server (本机)的监控激活。进入 Monitoring Dashboard,可以看到 Zabbix Server 的监控结果(这必须保持zabbix_agentd.conf配置文件为默认才会生效);有一点要注意:agent端配置好之后,添加host,需要添加模板才会显示绿色成功连接哟。
新建监控项:
1) 进入Configuration -》Hosts 选择按钮
2)执行第一步操作后,会进入下图所示界面,修改红色部分的内容为agent端的ip地址,其中Host name处的值必须与agent端zabbix_agentd.conf里面的值相同
3)添加模板(必须添加相关模板后,才能获取到监控数据),点击上图中的选项,会进入到下图所示界面
4)点击上图中的select选项就会将zabbix所有的模板列出来,选择需要添加的模板后,在点击add选项添加模板,最后点击Update按钮即完成了监控的添加。
 
 
 
zabbix客户端的配置:
最好保持服务器时间同步

通过root用户解压、编译及安装

tar -xvf /nfs/pkg/zabbix-2.0.3.tar.gz;cd zabbix-2.0.3
./configure --prefix=/usr/local/zabbix/ --sysconfdir=/etc/zabbix/ --enable-agent
make
make install

为了便于监控IO,安装上sysstat,执行如下命令:

yum install sysstat -y
sed -i s/10.71.xx.xx/$HOST_IP/g /etc/zabbix/zabbix_agentd.conf

将配置文件/etc/zabbix/zabbix_agentd.conf中的
Hostname= 10.71.xx.xx
修改成现在主机的IP,例如241
Hostname=$HOST_IP
将DisableActive=0修改为#DisableActive=0
将ServerPort=10051修改为#ServerPort=10051

添加计划任务,收集监控数据:

执行命令:
crontab -e -u zabbix
加入:
# run zabbix data gathering for custom checks every min
*/3 * * * * /usr/bin/sudo /etc/zabbix/scripts/zabbix_tomcat_cron.sh > /dev/null 2>&1
* * * * * /etc/zabbix/scripts/zabbix_vmstat_cron.sh > /dev/null 2>&1
* * * * * /etc/zabbix/scripts/zabbix_iostat_cron.sh > /dev/null 2>&1
* * * * * /etc/zabbix/scripts/zabbix_tcpConStat_cron.sh > /dev/null 2>&1
* * * * * /usr/bin/sudo /etc/zabbix/scripts/zabbix_fileSocket_cron.sh > /dev/null 2>&1
* * * * * /etc/zabbix/scripts/zabbix_DbConnStat_cron.sh > /dev/null 2>&1
设置一些特殊脚本的权限:
执行如下命令:
visudo
修改
Defaults requiretty

#Defaults requiretty 并加入:
Cmnd_Alias SU = /bin/su -
Cmnd_Alias SUWWW = /bin/su - www
xujing ALL=(root) NOPASSWD: SU,SUWWW,SERVICES
Cmnd_Alias FILESOCKET = /etc/zabbix/scripts/zabbix_fileSocket_cron.sh,/etc/zabbix/scripts/zabbix_tomcat_cron.sh,/etc/zabbix/scripts/file_socket.sh,/usr/bin/sudo,/bin/su,/bin/kill
zabbix ALL=(root) NOPASSWD: FILESOCKET
设置开机启动服务:
执行如下命令:
cp /nfs/script/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_agentd
chkconfig --add zabbix_agentd
chkconfig zabbix_agentd on
启动zabbix_agentd:
执行如下命令:
/etc/init.d/zabbix_agentd start
检查日志确认启动无异常:
tail -100 /tmp/zabbix_agentd.log
220.web.lg-9-8.zwc.com<2013-04-21 01:26:10> ~/zabbix-2.0.3
root># tail -100 /tmp/zabbix_agentd.log
19506:20130421:012610.832 Starting Zabbix Agent [10.0.0.220]. Zabbix 2.0.3 (revision 30485).
19507:20130421:012610.832 agent #0 started [collector]
19509:20130421:012610.833 agent #1 started [listener]
19510:20130421:012610.833 agent #2 started [listener]
19511:20130421:012610.834 agent #3 started [listener]

Zabbix Proxy服务器安装配置

zabbix支持分布式监控,通过zabbix_proxy部署,将一集中区域的监控数据收集并转发到Zabbix Server。原理如图:


安装前准备

创建zabbix用户:

groupadd zabbix -g 504;useradd zabbix -u 504 -g zabbix

安装依赖软件包:

yum install -y net-snmp-devel curl-devel mysql-devel traceroute net-snmp-utils OpenIPMI-devel

创建运行时需要的相关目录,并配置好权限:

mkdir /var/log/zabbix;chown -R zabbix.zabbix /var/log/zabbix/mkdir /var/run/zabbix; chown -R zabbix.zabbix /var/run/zabbix/

另外还需要准备一个mysql数据库以存储zabbix_proxy收集的监控数据。

安装

编译安装fping

参考编译安装fping

编译安装zabbix_proxy

tar -zxvf zabbix-1.8.10.tar.gz;cd zabbix-1.8.10./configure --prefix=/usr/local/zabbix --enable-agent --with-mysql --with-libcurl --with-net-snmp --with-openipmimake make install

配置

启动脚本

常见问题

zabbix 图片乱码解决

1.上传本地windown系统的C:\WINDOWS\Fonts\simhei.ttf文件到zabbixweb目录的zabbix/fonts下.
2.vi zabbix/include/defines.inc.php把所有的DejaVuSans替换成simhei

zabbix 模版

官方配置有很多的模版,参考http://www.zabbix.com/

Centos 源码安装zabbix 2.4.5的更多相关文章

  1. 源码安装zabbix

    源码安装zabbix 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.     欢迎加入:高级运维工程师之路 598432640 前言:参考网上多篇源码安装的连接,自己把安装过程丢在这 ...

  2. CentOS源码安装QT

    在VirtualBox上的CentOS下安装qt-everywhere-opensource-src-4.8.4 ,执行 ./confiure时失败,失败信息为:Basic XLib function ...

  3. 以源码安装的lamp环境为依托,源码安装zabbix监控系统

    1.源码安装lamp环境 1)安装httpd, 以源码httpd-2.4.33为基础,解压后,执行./configure --prefix=/usr/local/ --sysconfdir=/etc/ ...

  4. CentOS Linux release 7.3源码安装zabbix

    CentOS Linux release 7.3安装zabbix 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 前言: 我去年用用centos6的环境搭建了一下 zabbix3.0 ...

  5. 简单说明CentOS源码安装程序

    第一步.安装依赖包.一般官网会有依赖关系,没有就网上搜索一下. 第二步.下载源码包,上传至CentOS服务器 第三步.解压缩 第四步.进入源码文件夹 第五步.执行./configure,这一步主要是为 ...

  6. CentOS 源码安装MySQL5.7

    一.安装方式源码安装,源码包名称mysql-boost-5.7.27.tar.gz,此版本包含boost库,在解压后的boost路径下.安装时,可以-DDOWNLOAD_BOOST=1 -DWITH_ ...

  7. CentOS源码安装Wireshark

    (2019年2月19日注:这篇文章原先发在自己github那边的博客,时间是2016年8月25日) Wireshark为网络管理员常用的一个网络管理工具,通过使用这个软件,我们可以对本机网卡上的经过的 ...

  8. CentOS6源码安装zabbix服务器

    1.下载安装包并解压 2.预环境搭建 3.创建zabbix用户,编译安装zabbix 4.配置mysql 5.配置zabbix-server 6.配置apache和php 7.添加开机自启动 1 yu ...

  9. linux(centos)源码安装git

    最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...

随机推荐

  1. iOS分析UI利器——Reveal简单使用

    一,简单使用 * 在xcode中打开你的项目(project); * 打开reveal 和选中 Help → Show Reveal Library in Finder * 把Reveal.frame ...

  2. 支付宝推AR实景红包,抢红包得拼脑力和体力

    近年春节,各大互联网平台都会借机掀起"红包大战",其中支付宝和微信的红包玩法备受用户关注.今年,微信尚未公布春节红包相关的方案信息,不过,今天支付宝率先推出"AR实景红包 ...

  3. Where product development should start

    We all need to know our customers in order to create products they’ll actually buy. This is why the  ...

  4. MongoDB 由于目标计算机积极拒绝,无法连接 2014-07-25T11:00:48.634+0800 warning: Failed to connect to 127.0.0.1:27017, reason: errno:10061

    转载自:http://www.cnblogs.com/xiaoit/p/3867573.html 1:启动MongoDB 2014-07-25T11:00:48.634+0800 warning: F ...

  5. webstorm快捷键

    webstorm应该是目前最强的js编辑器了,结合sublime text可以很效率的开发项目.今天整理了一些webstorm比较实用的快捷键: Ctrl+/ 或 Ctrl+Shift+/ 注释(// ...

  6. iOS 按钮上的标题设置向左向右对齐的方法

    Button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;//左对齐(UIControlContentHo ...

  7. android的EditText重新获取焦点问题

    在android开发过程中关于EditText在setFocusable(false);后,当需要再次获得焦点输入时设置setFocusable(true);后还是无法获得焦点的问题: 解决办法: 对 ...

  8. myeclipse连接数据库sql server

    1.打开数据库Microsoft sql server2008,输入以下命令: 此时可是看到端口号为1619,记住此端口号,等会儿会用到. 2.打开myeclipse2014,找到最上方的myecli ...

  9. 【实战Java高并发程序设计 2】无锁的对象引用:AtomicReference

    AtomicReference和AtomicInteger非常类似,不同之处就在于AtomicInteger是对整数的封装,而AtomicReference则对应普通的对象引用.也就是它可以保证你在修 ...

  10. Git生成ssh ksy后进行项目管理

    1.首先你要有一个git账号,然后在网站上Create a New Repository,填好名称后就建立了一个仓库,之后即会出现一些仓库的配置信息... 2.然后你要下载一个git客户端,也可以是m ...