monicazhang 发表于 2017-9-3 11:54:10

企业部署的第一个Zabbix监控系统

本帖最后由 monicazhang 于 2017-9-3 16:40 编辑

在使用Zabbix监控主机的CPU、内存、磁盘和网络接口等信息前,我们需要先部署企业中的第一个Zabbix监控主机。本文主要介绍如何在RHEL6.7上部署一个Zabbix监控系统。         Zabbix系统的Web GUI依赖于LAMP或者LNMP环境之上,其中本文使用的是zabbix2.4.6版本,其中MySQL版本最低要求5.0.3及以后,并且使用InnoDB存储引擎,其它依赖软件如下:从上表中,我们下载满足条件的Apache、MySQL和PHP等软件,准备开始部署zabiix系统前的准备工作。在正式安装Zabbix之前,我们需要做一些基本的准备工作如下:
[*]关闭selinux和iptables
[*]设置IP地址、子网掩码等网络信息
[*]设置主机名和hosts文件
[*]配置一个本地的yum下载源
[*]安装c语言和C++的开发环境(gcc、gcc-c++、automake、autoconf)
除了这些基本的条件外,最为重要的是部署一个LAMP环境,这是运行zabbix所必须的。具体步骤如下:       1)安装Apache的依赖包apr、apr-util和pcre         下载apr软件包后,执行如下命令安装apr
# tar -zxf apr-1.5.2.tar.gz# cd apr-1.5.2# ./configure –prefix=/usr/local/apr# make && make install
         下载apr-util软件包后,执行如下命令安装apr-util
# tar -zxf apr-util-1.5.4.tar.gz# cdapr-util-1.5.4#./configure –prefix=/usr/local/apr-util -with-apr=/usr/local/apr# make&& make install
下载pcre软件包后,执行如下命令安装
# tar -zxf pcre-8.37.tar.gz# cdpcre-8.37#./configure –prefix=/usr/local/pcre# make&& make install
2)下载Apache软件包后,执行如下命令安装
# tar -zxfhttpd-2.4.16.tar.gz# cd httpd-2.4.16# ./configure –prefix=/usr/local/apache --with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre# make && make install
3)下载cmake软件后,执行如下命令安装cmake,用于安装MySQL
# tar -zxf cmake-3.0.2.tar.gz# cd cmake#./configure# make&& make install
4)下载MySQL软件后,执行如下命令安装MySQL
# tar -zxf mysql-5.6.21.tar.gz# cd mysql-5.6.21# useradd -Mrs /sbin/nologin mysql# cmake-DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data-DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_USER=mysql-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci# make && make install# cd /usr/local/mysql# chown -R mysql .# chgrp -R mysql .# ./scripts/mysql_install_db--user=mysql# chown -R root .# chown -R mysql data# bin/mysqld_safe --user=mysql &# cpmysql-5.6.21/support-files/mysql.server /etc/init.d/mysql.server
5)安装GD库依赖的软件包下载zlib,执行如下命令安装
# tar -zxf zlib-1.2.8.tar.gz# cd zlib-1.2.8# ./configure --prefix=/usr/local/zlib# make && make install
下载libpng,执行如下命令安装
# tar -zxflibpng-1.5.22.tar.gz# cd libpng-1.5.22# ./configure --prefix=/usr/local/libpng--enable-shared# make && make install
下载jpeg,执行如下命令安装
# tar -zxf jpegsrc.v9a.tar.gz# cd jpeg-9a/# ./configure --prefix=/usr/local/jpeg# make && make install
下载freetype,执行如下命令安装
# tar -zxffreetype-2.6.tar.gz# cd freetype-2.6# ./configure--prefix=/usr/local/freetype# make && make install
下载libXpm,执行如下命令安装
# tar -zxf libXpm-3.5.11.tar.gz# cd libXpm-3.5.11# ./configure --prefix=/usr/local/libxpm# make && make install
6)下载GD,执行如下命令安装
# # tar -zxflibgd-2.1.1.tar.gz# cd libgd-2.1.1# ./configure --prefix=/usr/local/gd--with-zlib=/usr/local/zlib --with-png=/usr/local/libpng--with-jpeg=/usr/local/jpeg --with-freetype=/usr/local/freetype --with-xpm=/usr/local/libxpm
7)安装PHP依赖的软件包下载libxml2,执行如下命令安装
# yum install python-devel -y# tar -zxf libxml2-2.9.2.tar.gz# cd libxml2-2.9.2# ./configure make && makeinstall
下载libiconv,执行如下命令安装
# tar -zxf libiconv-1.14.tar.gz# cd libiconv-1.14# ./configure--prefix=/usr/local/libiconv# make && make install
下载libmcrypt,执行如下命令安装
# tar -zxf libmcrypt-2.5.7.tar.gz# cd libmcrypt-2.5.7# ./configure--prefix=/usr/local/libmcrypt# make && make install
8)下载PHP,执行如下命令安装
# ln -s/usr/local/libxpm/include/X11/xpm.usr/include/X11/xpm.h# tar -zxf php-5.6.4.tar.gz# cd php-5.6.4# ./configure --prefix=/usr/local/php--with-config-file-path=/usr/local/php/etc --with-gd=/usr/local/gd--with-zlib --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg--with-freetype-dir=/usr/local/freetype --with-xpm-dir=/usr/local/libxpm--with-iconv=/usr/local/libiconv --with-mcrypt=/usr/local/libmcrypt--enable-mbstring --enable-bcmath --enable-sockets--with-mysql=/usr/local/mysql --with-mysqli--with-mysqli=/usr/local/mysql/bin/mysql_config--with-pdo-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs--with-gettext# make && make install
9)在Apache配置文件httpd.conf中增加如下行,让Apache支持PHP
... ... AddType application/x-httpd-php .php... ...
10)在Apache的网站主目录/usr/local/apache/htdoc下,创建一个测试文件,文件名称自定义,例如:phpinfo.php;编辑phpinfo.php测试页,内容如下:
<?php   phpinfo();?>
利用该测试页,可以测试Apache是否支持PHP,同时可以通过输出结果查看是否支持MySQL。11)启动Apache服务进行测试
# /usr/local/apache2/bin/apachectl start
12)在浏览器中访问刚才的页面,例如:http://localhost/phpinfo.php如果成功返回如上的php的相关信息,说明LAMP安装成功。为了支持SNMP,需要net-snmp软件,执行如下命令安装:
# yum install net-snmp net-snmp-develcurl curl-devel
    准备工作完成后,可以正式开始安装Zabbix,执行如下步骤完成Zabbix的安装:1)创建Zabbix的用户和组
# groupadd zabbix# useradd -g zabbix -s /sbin/nologin zabbix
2)在MySQL数据库中创建zabbix用户账号并授权
[*]创建MySQL账号语法:
CREATE USER'username'@'host' IDENTIFIED BY 'password';说明:username - 你将创建的用户名,host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器。
[*]授权语法:
GRANT privilegesON databasename.tablename TO 'username'@'host'说明:privileges - 用户的操作权限,如SELECT ,INSERT , UPDATE 等.如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.
mysql>create user 'zabbix'@'localhost'identified by 'zabbix';mysql>grant all privileges on zabbix.*to zabbix@'localhost'
3)在MySQL数据库中创建Zabbix数据库
mysql> create database zabbixcharacter set utf8;
4)导入数据库的sql脚本
# tar -zxf zabbix-2.4.6.tar.gz# cd zabbix-2.4.6# mysql -uzabbix -pzabbix zabbix<database/mysql/schema.sql# mysql -uzabbix -pzabbixzabbix<database/mysql/images.sql# mysql -uzabbix -pzabbixzabbix<database/mysql/data.sql
5)Zabbix的编译安装
# ./configure --prefix=/usr/local/zabbix--enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl--enable-proxy#make#make install
1)添加配置文件到/etc
# ln -s /usr/local/zabbix/etc//etc/zabbix
2)修改ZabbixServer配置文件zabbix_server.conf,在文件尾添加如下内容:
LogFile=/tmp/zabbix_server.logPidFile=/tmp/zabbix_server.pidDBHost=localhostDBName=zabbix               #数据库名称DBUser=zabbix                  #数据库用户账户DBPassword=zabbix    #指定zabbix数据库密码ListenIP=0.0.0.0         #服务器IP地址
3)修改ZabbixAgentd配置文件zabbix_agentd.conf,在文件尾添加如下内容:
LogFile=/tmp/zabbix_agentd.log            #日志保存位置PidFile=/tmp/zabbix_agentd.pid             #进程PIDEnableRemoteCommands=1                  #允许执行远程命令Server=10.1.1.119                                     #agent端的ipHostname=localhost                           #必须与zabbix创建的host name相同
4)为Web前端,添加php文件
# cp -rf php/usr/local/apache2/htdocs/zabbix# chown -R zabbix.zabbix zabbix
5)为Web前端修改php相关参数,编辑/etc/php.ini配置文件,找到如下几项,修改结果如下:
max_execution_time = 300max_input_time = 300date.timezone = Asia/Shanghaipost_max_size = 32Mmemory_limit = 128Mmbstring.func_overload = 0always_populate_raw_post_data = -1
说明:找到以上几项,如果有;号的请删除掉,然后修改为以上值6)重启Apache服务,使得修改生效
# /usr/local/apache2/bin/apachectlrestart
7)开始配置Web前端:·在浏览器中访问Zabbix Server的地址,例如:zabbix·在“欢迎界面”单击“next”·在“Check ofpre-requisites”界面,确保所有项目全部显示“ok”,单击“next” ·在“Configure DBconnection”界面,输入MySQL中用于连接Zabbix数据库的用户名和密码·在“Zabbix serverdetails”界面,输入Zabbix Server端的主机名或IP地址·在“Pre-Installationsummary”界面,单击“next”·在“Install”界面,按照提示将配置文件下载到/usr/local/apache/htdoc/zabbix/conf下,名称为zabbix.conf.php,注意文件权限为zabbix,完成后运行“Retry”点击“完成”1)可以直接执行/usr/local/zabbix/sbin/下的zabbix_server和agentd程序文件
# /usr/local/zabbix/sbin/zabbix_server# /usr/local/zabbix/sbin/zabbix_agentd
2)为了方便Zabbix Server和Agent的服务的启动和关闭,复制启动脚本
# cp./misc/init.d/fedora/core/zabbix_server /etc/init.d/# cp./misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
3)将zabbix_server和agentd和启动脚本文件中的BASEDIR的值修改为
BASEDIR=/usr/local/zabbix
4)设置ZabbixServer和Agentd开机自动启动
# chkconfig zabbix_server on# chkconfig zabbix_agentd on

最后使用http://ZabbixIP/zabbix访问,默认的用户名admin和密码为zabbix登录验证:

原创:运维爱好者
页: [1]
查看完整版本: 企业部署的第一个Zabbix监控系统