[原创] zabbix学习之旅一:源码安装
配置本地yum源
- 安装createrepo包,用于建立本地仓库,供yum源的安装和更新。
cd /ISO/Packages
ll|grep createrepo
rpm –ivh createrepo-0.9.-.e16.noarch.rpm
若安装过程中提示需要安装依赖包,请按提示安装。
- 执行createrepo命令,创建repodata目录
cd /ISO/Packages
createrepo .
- 设置本地yum源
cd /etc/yum.repo.d
mv CentOS-Base.repo CentOS-Base.repo.bak
cp CentOS-Media.repo CentOS-Base.repo
vi CentOS-Base.repo
做如下配置修改:
#yum源所在地
baseurl=file:///ISO/Packages/
#不做校验检查
gpgcheck=
#设置为通过本地媒介进行yum安装
enabled=1 yum clean all
yum makecache
安装Mysql数据库
zabbix支持安装在多种数据库上,本方案中数据库为mysql。安装及库表建立如下:
- 安装mysql5.6.28,安装方式为rpm安装,安装前若本机已有老旧mysql,请卸载。
rpm –ivh MySQL-server-5.6.-.el6.x86_64.rpm
rpm –ivh MySQL-client-5.6.-.el6.x86_64.rpm
rpm –ivh MySQL-devel-5.6.-.el6.x86_64.rpm
rpm –ivh MySQL-shared-compat-5.6.-.el6.x86_64.rpm
- 添加对mysqlclient的软连接(若不添加,后续的zabbix安装可能会报错说找不到mysqlclient)。
cd /usr/lib64
ln -s libmysqlclient.so.16.0. libmysqlclient.so
ln -s libmysqlclient_r.so.16.0. libmysqlclient_r.so
- 安装完后默认的配置文件是/usr/my.cnf,默认的mysql root账号密码保存在/root/.mysql_secret。
- 检查mysql是否在随机启动的列表中,若无则添加,并启动。
chkconfig --list|grep mysql
chkconfig --add mysql
chkconfig mysql on
service mysql start
- 修改root账户密码。
mysql –uroot –p
set password=password('');
flush privileges;
- 创建zabbix数据库及其访问账号。
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
flush privileges;
- 初始化zabbix数据库。
mysql -uzabbix –p zabbix < schema.sql
mysql -uzabbix –p zabbix < images.sql
mysql -uzabbix –p zabbix < data.sql
安装zabbix Server
- 下载并解压zabbix2.4.7
cd /usr/local/src
tar –xvf zabbix-2.4..tar.gz
cd zabbix-2.4.
- 添加zabbix账号(注意的是默认情况下zabbix server和client都是运行在zabbix账号下,需要自行添加该账号。也可以通过修改server的配置文件指定zabbix server运行在root账号下,不推荐)
groupadd zabbix
useradd –g zabbix zabbix
- 安装zabbix,若有缺依赖包,按提示自行添加
yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel
./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-libcurl --with-libxml2
make && make install
- 修改zabbix server的配置文件
vi /usr/local/zabbix/etc/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
- 设置zabbix server的日志路径和访问权限
mkdir /var/log/zabbix
chown -R zabbix:zabbix /var/log/zabbix
- 将zabbix server设置成随机启动,并启动
cp /usr/local/src/zabbix-2.4./misc/init.d/fedora/core/zabbix_server /etc/init.d
vi /etc/init.d/zabbix_server
#修改zabbix路径
BASEDIR=/usr/local/zabbix
chkconfig --add zabbix_server
chkconfig zabbix_server on
service zabbix_server start
- 检查zabbix server是否正确启动
netstat -tlnp|grep zabbix
#可看见zabbix server运行在10051端口上
ps -ef|grep zabbix
#可看见zabbix server运行在zabbix账户下,并开启多个进程监听
安装libjpeg&freetype
zabbix server有图形化要求,需要借助PHP gd的支持,这两项是PHP gd的必须项。由于PHP默认不支持这两项的安装,因此需要提前装好这两组件。
- 安装freetype-2.6.tar.gz
cd /usr/local/src
tar -xvf freetype-2.6.tar.gz
cd freetype-2.6
./configure --prefix=/usr/local/freetype
make && make install
- 安装jpegsrc.v6b.tar.gz
cd /usr/local/src
tar -xvf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/usr/local/jpeg --enable-shared
make && make install
安装过程中,若报错类似"make: ./libtool: Command not found“,则需要把系统中的libtool的配置文件覆盖jpeg本身的老旧对应文件。
cp /usr/share/libtool/config/config.sub .
cp /usr/share/libtool/config/config.guess .
make clean
./configure --prefix=/usr/local/jpeg --enable-shared
安装过程中,若报错类似"cannot create regular file `/usr/local/jpeg/include/jconfig.h': No such file or directory",则需要手动建立相应目录。
mkdir -p /usr/local/jpeg/include
mkdir -p /usr/local/jpeg/lib
mkdir -p /usr/local/jpeg/bin
mkdir -p /usr/local/jpeg/man/man1
make && make install
安装PHP
zabbix server本身是由php编写的,因此需要安装php的运行环境。
- 建立php运行账号
groupadd www
useradd –g www www
- 下载并解压php-5.6.16.tar.bz2
cd /usr/local/src
tar –xvf php-5.6..tar.bz2
cd php-5.6.
- 安装php
yum -y install libpng-devel
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --enable-sockets --with-gd --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype --with-gettext --enable-mbstring --enable-bcmath --with-config-file-path=/usr/local/php/etc
make && make install
若安装过程中有缺依赖包,请按照提示安装。
- 将PHP命令添加至环境变量中。
vi /etc/profile
#末尾加入:
export PATH=$PATH:/usr/local/php/bin
#立即生效:
source /etc/profile
- 配置php-fpm
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
- 为满足zabbix的最低运行要求,配置php.ini文件。
cp /usr/local/src/php-5.6./php.ini-production /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php.ini
post_max_size = 16M
max_execution_time =
max_input_time =
always_populate_raw_post_data = -
date.timezone = Asia/Shanghai
- 设置php随机启动,并启动。
#开机启动
vi /etc/rc.local
/usr/local/php/sbin/php-fpm
#立即启动
/usr/local/php/sbin/php-fpm
启动后可观察php运行在9000端口上。
安装Nginx
zabbix server需要运行在web服务器上,官网推荐是安装在apache上,本方案是运行在nginx上,方法如下:
- 下载并安装nginx-1.8.0.tar.gz
cd /usr/local/src
tar –xvf nginx-1.8..tar.gz
cd nginx-1.8.
- 安装nginx
yum -y install pcre-devel
./configure --with-http_ssl_module --with-http_realip_module
make && make install
上述安装中若缺依赖包,请根据提示安装
- 修改nginx的配置文件,主要修改点如下:
user www www;
work_processes auto; location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
- 将zabbix server的运行文件拷贝至nginx目录下。
cd /usr/local/nginx/html
mkdir zabbix
cd zabbix
cp -r /usr/local/src/zabbix-2.4./frontends/php/* .
cd ..
chown –R www:www zabbix
- 设置nginx开机启动,并启动nginx。
#开机启动
vi /etc/rc.local
/usr/local/nginx/sbin/nginx
#启动nginx
/usr/local/nginx/sbin/nginx
初始化zabbix server
nginx启动后,可以直接访问zabbix server:http://localhost/zabbix/index.php ,初始化是以图形界面进行配置的。
- 首先检测php的运行环境是否正确。

- 其次确保数据库连接正确

- 配置好端口和host

- 再次确认配置选项

- 配置成功

至此,zabbix server的源码安装成功结束,进入登录界面,默认的登录名和密码是:Admin/zabbix。
[原创] zabbix学习之旅一:源码安装的更多相关文章
- [原创] zabbix学习之旅三:agent安装
部署完zabbix server后,自然要部署zabbix agent.在官方描述中,agent是部署在被监控的机器上,用于采集CPU.内存.磁盘等统计信息,并上报给server用于进一步处理.age ...
- [原创] zabbix学习之旅二:yum安装
对于允许连接公网的环境下,显然通过yum安装是最为简单方便的,也是官网推荐的安装方式.通过这种方式安装,会将php.apache.zabbix本身都一并安装,解决了烦人的依赖包问题. 本文将介绍如 ...
- 学习Tensorflow,使用源码安装
PC上装好Ubuntu系统,我们一步一步来讲解如何使用源码安装tensorflow?(我的Ubuntu系统是15.10) 安装cuda 根据你的系统型号选择相应的cuda版本下载 https://de ...
- Zabbix监控系统部署:源码安装
1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...
- [原创] zabbix学习之旅五:如何快速搭建一个报警系统
通过之前的文章,我们已搭建好zabbix server.agent和mail客户端,现在万事俱备,只差在server的界面中进行相应配置,即可快速搭建一个报警系统.总的来说,快速搭建一个报警系统的顺序 ...
- [原创] zabbix学习之旅七:如何远程操作被监控机器
虽然我们已经创建了一个报警系统,但在实际场景中,运维人员从得到报警到实际解决问题有一定的时差,若业务系统没有做高可用,那业务不得不中断,对于某些要求严格的企业级环境,这是不可容忍的,那有没有方法能让z ...
- [原创] zabbix学习之旅六:如何解决zabbix server在内网,而邮件发送服务器在外网的问题
通过前面的文章,你已经可以快速地搭建一个报警系统,并能正常的收到报警邮件了.不过在很多企业级环境下,邮件发送服务器往往放在外网,而zabbix server放置在内网,在这种情况下,zabbix的报警 ...
- [原创] zabbix学习之旅四:mail客户端安装
相信大家使用zabbix的最主要目的就是当被监控机器发生故障时,能通过zabbix获得第一时间的报警提醒.zabbix常用的报警媒介有email,短信,jabber和脚本,这其中脚本类型最为灵活,尤其 ...
- 《一个操作系统的实现》学习笔记(一) bochs源码安装及配置
前言:本机环境ubuntu 14.04 bochs 2.4.5 一.下载 官网 http://bochs.sourceforge.net/ 二.安装 1.将下载好的压缩包解压并进入该目录 .tar.g ...
随机推荐
- js如何判断一个数组中是否有重复的值
引自:http://bbs.tianya.cn/post-414-38497-1.shtml 方法一: var ary = new Array("111","22&quo ...
- 【Knockout】四、绑定上下文
Binding context binding context是一个保存数据的对象,你可以在你的绑定中引用它.当应用绑定的时候,knockout自动创建和管理binding context的继承关系. ...
- sqlserver关于事务
事务的四个特性: 原子性,一致性,持久性,隔离性 原子性: 原子性:表示事务执行是作为原子,不可分割,整个语句要么执行,要么不执行sqlserver中每一个单独的语句可以看做是包含在事务中每一句本身具 ...
- ios自动滚动图片功能源码
源码AdScrollerView,一个已经封装好的UIScrollView的子类,可以自动滚动图片以及对应的描述语,类似淘宝app首页的广告滚动效果.滚动图片数量不限,并且显示pageControl. ...
- win32进阶之路:程序托盘图标+右键弹出菜单
开场白 本次介绍两个非常棒且实用的技巧:程序托盘图标和右键弹出菜单,效果如下图. 程序托盘图标用了迅雷的图标,右键点击时候会弹出三个选项的菜单. 程序托盘图标设置 我会用尽可能清晰明了的步骤介绍方式 ...
- 剑指offer_面试题11 数值的整数次方_考察代码的完整性
测试通过代码: package t0825; public class Power { public static void main(String[] args){ System.out.print ...
- 调整Windows8允许多用户登录
最近LP说要在继续教育平台上学习,好像是中级的需要进行继续教育吧,具体情况不管了.LP说网站登录后没办法听到声音看到视频,但是我的可以,系统环境是Win8,IE10,不过是在Chrome下使用IPA插 ...
- [转] Portable Trac 简单介绍 - 兼谈为什么不选择 Redmine
Portable Trac 简单介绍 - 兼谈为什么不选择 Redmine Trac是一个轻量级的软件项目管理环境,如果在工作中涉及一个开发团队的管理并且关心项目管理工具的话,相信都在 Trac. ...
- JS实现登录页面记住密码和enter键登录
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>按 ...
- 生成随机字符串(UUID方法)
这是另一种用UUID生成随机字符串的方法. public class RandomGenerator{ private int length; public void setLength(int le ...