原文:http://blog.chinaunix.net/uid-25266990-id-3380929.html

Linux下常用的系统监控软件有Nagios、Cacti、Zabbix、Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员。

今天开始研究下Zabbix,使用Zabbix的目的,是为了能够更好的监控mysql数据库服务器,并且能够生成图形报表,虽然Nagios也能够生成图形报表,但没有Zabbix这么强大。

首先,我们先来介绍下Zabblx:

一.Zabbix简介

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
       zabbix由zabbix server与可选组件zabbix agent两部门组成。
       zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视。
       zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。

zabbix的主要特点:
          - 安装与配置简单,学习成本低 
          - 支持多语言(包括中文)
          - 免费开源
          - 自动发现服务器与网络设备
          - 分布式监视以及WEB集中管理功能
          - 可以无agent监视
          - 用户安全认证和柔软的授权方式
          - 通过WEB界面设置或查看监视结果
          - email等通知功能
         等等

Zabbix主要功能:
         - CPU负荷
         - 内存使用
         - 磁盘使用
         - 网络状况
         - 端口监视
         - 日志监视

官方也提供了安装资料:http://www.zabbix.com/wiki/howto/monitor

二.Zabbix安装

2.1 zabbix WEB环境搭建

zabbix的安装需要LAMP或者LNMP环境。
      需要其它的软件包

  1. yum install mysql-dev gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xm

2.2 zabbix 数据库设置

zabbix数据库可以和zabbix服务器分离,采用用专门的mysql服务器存储数据,此时要给zabbix数据库受相应的权限。

  1. grant all privileges on zabbix.* to zabbix_user@'ip' identified by '123456';

注:ip为zabbix服务器的IP地址。

关于数据库的安装,可以查看Mysql安装,我习惯使用二进制包。

启动数据库

/usr/local/mysql/bin/mysqld_safe  --user=mysql &

登录数据库,创建帐号和设置权限:

  1. mysql> use mysql;
  2. mysql>create database zabbix character set utf8;
  3. mysql>grant all privileges on zabbix.* to zabbix_user@'192.168.10.197' identified by '123456';

2.3安装zabbix服务

增加zabbix用户和组

#groupadd zabbix
#useradd -g zabbix -m zabbix

官网下载解压软件包。

下载地址:

http://www.zabbix.com/download.php

#wget http://fossies.org/unix/misc/zabbix-2.0.3.tar.gz
# tar -zxvf  zabbix-2.0.3.tar.gz
#cd zabbix-2.203
导入数据库表

#cd  zabbix-2.0.3/database/mysql
#mysql -uroot -pmysql zabbix < mysql.sql
#mysql -uroot -pmysql zabbix < images.sql 
#mysql -uroot -pmysql zabbix < schema.sql

编译安装zabbix

  1. ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy

编译报错checking for main in -lmysqlclient ... no
yum 安装mysql-devel即可
#make
#make install

添加服务端口

  1. vim /etc/services
  2. zabbix-agent 10050/tcp # Zabbix Agent
  3. zabbix-agent 10050/udp # Zabbix Agent
  4. zabbix-trapper 10051/tcp # Zabbix Trapper
  5. zabbix-trapper 10051/udp # Zabbix Trapper

添加配置文件

# mkdir -p /etc/zabbix
# cp -r zabbix-2.203/conf/* /etc/zabbix/
# chown -R zabbix:zabbix /etc/zabbix

修改server配置文件,添加zabbix数据库密码
vim /etc/zabbix/zabbix_server.conf

  1. LogFile=/tmp/zabbix_server.log
  2. PidFile=/tmp/zabbix_server.pid
  3. DBName=zabbix
  4. DBUser=zabbix_user
  5. DBPassword=123456     #指定zabbix数据库密码
  6. ListenIP=192.168.10.197    #服务器IP地址

修改Agentd配置文件,更改HOSTNAME为本机的hostname
vim /etc/zabbix/zabbix_agentd.conf

  1. PidFile=/tmp/zabbix_agentd.pid #进程PID
  2. LogFile=/tmp/zabbix_agentd.log #日志保存位置
  3. EnableRemoteCommands=1 #允许执行远程命令
  4. Server=192.168.10.197 #agent端的ip
  5. Hostname=client1 #必须与zabbix创建的host name相同

如图设置hostname

添加web前段php文件
# cd zabbix-2.203/frontends/
# cp -rf php /home/httpd/zabbix   #虚拟主机目录
# chown -R zabbix:zabbix zabbix

web前端安装配置
修改PHP相关参数
vim php.ini

  1. max_execution_time = 300
  2. max_input_time = 300
  3. memory_limit = 128M
  4. post_max_size = 32M
  5. date.timezone = Asia/Shanghai
  6. mbstring.func_overload=2

PHP还必须支持一下模块,在php源码包直接编译安装。详细模块需要在安装是会提示。

bcmath.so、gettext.so

在客户端浏览器上面访问zabbix,开始WEB的前端配置,http://ZabbixIP/zabbix,按提示点击下一步

Step1:下一步。

Step2:如果全部OK的话才能进行下一步的安装,如果有错误请返回到server端检查相关的软件包是否安装。

Step3:需要输入mysql数据库帐号密码,如果数据库不在zabbix服务器上面,在Host里面添加数据库服务器的地址,并且要用grant命令给数据库授权。

Step4:输入服务器端 host name or host IP addres;

最后会自动写入配置文件:zabbix.conf.php,配置完成后出现登陆界面,默认的用户名为:admin,密码为:zabbix。

三.启动zabbix服务
在zabbix安装目录下面可以直接启动
#/usr/local/zabbix/sbin/zabbix_server start
tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      7140/zabbix_agentd

四.设置开启自动启动

vim /etc/rc.d/rc.local  最后添加下面两行

  1. /usr/local/zabbix/sbin/zabbix_server start
  2. /usr/local/zabbix/sbin/zabbix_agentd start

至此,zabbix server端的安装完毕,我们可以通过浏览器来访问。如图:

详解zabbix安装部署(Server端篇)的更多相关文章

  1. 详解zabbix安装部署(Server端篇) (转)

    Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员. 今天开始研究下Zabbix,使 ...

  2. HBase 协处理器编程详解第一部分:Server 端代码编写

    Hbase 协处理器 Coprocessor 简介 HBase 是一款基于 Hadoop 的 key-value 数据库,它提供了对 HDFS 上数据的高效随机读写服务,完美地填补了 Hadoop M ...

  3. CentOS下Zabbix安装部署及汉化

    搭建环境:Centos6.5_x86_64,Zabbix2.4.5,epel 源 服务端: 1.安装开发软件包yum -y groupinstall "Development Tools&q ...

  4. 详解Google Chrome浏览器(操作篇)(一)

    开篇概述 在上篇博客中详解Google Chrome浏览器(理论篇)一文中,主要讲解了Chrome 搜索引擎使用.Chrome安装和基本操作.Chrome 基本架构.多线程等原理性问题,这篇将重点讲解 ...

  5. 详解Google Chrome浏览器(操作篇)(上)

    开篇概述 在上篇博客中详解Google Chrome浏览器(理论篇)一文中,主要讲解了Chrome 搜索引擎使用.Chrome安装和基本操作.Chrome 基本架构.多线程等原理性问题,这篇将重点讲解 ...

  6. 个人用户永久免费,可自动升级版Excel插件,使用VSTO开发,Excel催化剂安装过程详解及安装失败解决方法

    因Excel催化剂用了VSTO的开发技术,并且为了最好的用户体验,用了Clickonce的布署方式(无需人工干预自动更新,让用户使用如浏览器访问网站一般,永远是最新的内容和功能).对安装过程有一定的难 ...

  7. 【three.js详解之二】渲染器篇

    [three.js详解之二]渲染器篇   本篇文章将详细讲解three.js中渲染器(renderer)的设置方法. three.js文档中渲染器的分支如下: Renderers CanvasRend ...

  8. 详解Google Chrome浏览器(操作篇)(下)

    开篇概述 由于最近忙于公司产品的架构与研发,已经三个多月没有写博客了,收到有些朋友的来信,问为什么不及时更新博客内容呢,他们说他们正期待着某些内容.对此,非常抱歉,那么我在此也给各位朋友一些承诺,从即 ...

  9. 详解Linux安装GCC

    为你详解Linux安装GCC方法 2009-12-11 14:05 佚名 博客园 字号:T | T 现在很多程序员都应用GCC,怎样才能更好的应用GCC.本文以在Redhat Linux安装GCC4. ...

随机推荐

  1. 【转】Firefox快捷键

    转载地址: http://www.douban.com/note/140139119/ Ctrl + 数字键来打开第N个标签页这种还要先数完再到键盘上找数字Ctrl + Page Up = 激活左边一 ...

  2. Unity-Animator深入系列---录制与回放

    回到 Animator深入系列总目录 Animator自带了简单的动画录制,回放功能.但可惜的是不支持持久化的数据输出.因而不能作为录像保存 不过这种可以作为竞速,格斗类游戏在结束时经常出现的游戏回放 ...

  3. 转载-python学习笔记之常用模块用法分析

    内置模块(不用import就可以直接使用)   常用内置函数   help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像函数一样调用 repr(ob ...

  4. ural 1114,计数dp

    题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1114 题意:N个盒子,a个红球,b个蓝球,把求放到盒子中去,没有任何限制,有多少种放法. ...

  5. eclipse alt+/ 无效时,如何设置 《转》

    一般情况下alt+/有代码提示作用,还有代码提示的快捷代码也不是alt+/,因此要恢复代码提示用alt+/.需要做两件事. 在 Window - Preferences - General - Key ...

  6. An error occurred while filtering resources-----maven项目报错

    解决办法 需要在pom中设定jdk的版本 <plugins> <!-- compiler插件, 设定JDK版本 --> <plugin> <groupId&g ...

  7. OS: 剪裁UIImage部分不规则区域

    首先,我们需要把图片展示在界面上.很简单的操作,唯一需要注意的是由于CGContextDrawImage会使用Quartz内以左下角为(0,0)点的坐标系,所以需要使用CGContextTransla ...

  8. map的使用(自增)ret = map(lambda x : x+100 if x % 2 == 1 else x - 100, [1,2,3,4,5])

    #!/usr/bin/env python ret = map(lambda x : x+100 if x % 2 == 1 else x - 100, [1,2,3,4,5]) print(ret) ...

  9. jquery之hide()用法详解

    注:  以下函数用法和hide()类似  [参数类型完全一样] toggle() hide() show() slideToggle() slideUp() slideDown() fadeToggl ...

  10. mysql 实现行号的方法——如何获取当前记录所在行号

    SELECT aaa,(@rowNum:=@rowNum+1) AS rowNoFROM tb_bbb,(SELECT (@rowNum :=0) ) bORDER BY tb_bbb.liushui ...