LAMP环境搭建zabbix2.2.0-源码编译

-单台服务器是实现php

转载请写明原创自: http://www.cnblogs.com/xiaoxiaoguixia/p/4032355.html html

安装zabbix可使用两种方式前端

1 rpm 定制版本的mysql

2 源码编译linux

zabbix须要php的支持,和为了支持GUI界面,因此须要web前端服务器,zabbix的数据有后端数据库服务器进行存储,全部搭建zabbix有两种方案,可使用rpm全自动化安装,和lamp源码编译在结合zabbix的源码编译进行!web

 

这里介绍新版本的mysql5.6和新版本的php5.5和新版本的httpd(apache)进行搭建,过程之中可老本的的使用是不太相同的,第一php支持mysql5.6使用的是mysqli函数,第二apache2.4 和以前版本在配置上也有区别,可是在仅支持zabbix的共鞥效果配置上区别是微观的!

sql

LAMP的实现数据库

1 准备数据库mysql5.6apache

第一采用二进制版本进行安装,下载能够到官网www.mysql.com 进行下载vim

这里采用以下版本:

mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz

安装步骤:

建立mysql用户和解压包,及初始化数据库
groupadd mysql
useradd -r -g mysql mysql
tar -zxvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz
ln -s src/mysql-5.6.21-linux-glibc2.5-x86_64 mysql
cd mysql/
mkdir /data/mysql  #建立数据目录
chown -R mysql.mysql /data/mysql/
scripts/mysql_install_db --user=mysql --datadir=/data/mysql
cp support-files/mysql.server /etc/init.d/mysqld
 修改启动配置文件:
修改/etc/init.d/mysqld 中datadir=/data/mysql
basedir 能够不指定 默认为/usr/loca/mysql 安装文件路径
 
加入系统自启动
chmod 755 /etc/init.d/mysqld 
chkconfig --add mysqld
chkconfig mysqld on
 
加入环境变量
vim /etc/profile.d/mysql.sh
#!/bin/bash 
PATH=$PATH:/usr/local/mysql/bin
 
修改密码
mysqladmin -uroot password 'c110123'

 #一下内容是笔者对于myslq的简易和优化的习惯操做和lamp无关:

#############################################

省略输入密码的复杂性
[ root@andy ~]# cat ~/.my.cnf 
[client] 
user=root 
password=c110123 
host='localhost' 
 
若是启动不了mysql,配置文件无误,注意是否受系统以前安装过mysql的影响,以前的mysql命令  路径可能不一致,由于以前多是rpm包安装的,卸载事没有卸载干净
 
 
删除多余的帐户
select Host,Password,User from user;
mysql> delete from user where Host='localhost';
 
###########################################
 
#如下内容是笔者对5.6版本mysql的第一认识与LAMP搭建无关#

############################################

mysql> show engines;
可得5.6 默认的引擎是 innodb
 
默认已是一张表一个  表空间(和以前版本默认使用的全部表一个表空间不同)
mysql> show global variables like '%innodb%';

打开应该一些相关的日志功能:

mysql> show global variables '%log%';  查看日志相关开启的状况

bin-log   记录任何能改变mysql数据操做的日志,用于随时恢复数据库
slow-query-log  慢查询日志
 
实现两个日志的开启,作以下配置,写入my.cnf 或则直接修改全局变量,笔者建议修改配置文件而后重启生效
 log_bin =/data/mysql/bin-logs/mysql-bin
binlog_format = mixed 
 
socket = /tmp/mysql.sock
slow_query_log =1
slow_query_log_file=/data/mysql/andy-slow.log
log_bin=/data/mysql/bin-logs/mysql-bin
 
查看慢查询时间标准:

mysql> show global variables like '%long_query%';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)

注意:慢查询的标准是(时间依据)  long_query_time | 10.000000         10秒钟
 
######################################################
 

2 准备httpd(apache)做为web

版本2.4

下载地址

httpd.apache.com

包:httpd-2.4.10.tar.gz

 

步骤:

cd /usr/local/src

tar -xzvf httpd-2.4.10.tar.gz

cd httpd-2.4.10

./configure --prefix=/usr/local/apache2 --with-included-apr  --with-pcre --enable-mods-shared=most --enable-ssl 
预编译失败

缺乏:

 

缺失 APR APR-util

 

configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.

 

解决办法:

 

解决办法:
将APR和APR-util源码下载,解压放到httpd-2.4.3/srclib里面,并去除版本号

 

 

 

cd/usr/local/src; wget http://mirror.bit.edu.cn/apache//apr/apr-1.5.1.tar.gz

 

wget http://mirror.bit.edu.cn/apache//apr/apr-util-1.5.4.tar.gz

 

解压 

 

cp -rf apr-1.5.1 /usr/local/src/httpd-2.4.10/srclib/apr

 

cp -rf apr-util-1.5.4 /usr/local/src/httpd-2.4.10/srclib/apr-util

 

问题解决:注这个问题在http2.2版本中不会出现

make && make install  进行安装

echo $?  返回0 表示安装正确

 

启动apache 
/usr/local/apache2/bin/httpd -k start
[-k start|restart|graceful|graceful-stop|stop]

 

此时能够测试是否启动正常(80端口是否 监听,web页面是否能够访问)

 

3 安装php做为http的模块

包 5.5版本

源码包:php-5.5.18.tar.bz2

下载地址:www.php.com

步骤:

cd /usr/local/src; tar jxvf php-5.5.18.tar.bz2;

cd php-5.5.18

./configure   --prefix=/usr/local/php   --with-apxs2=/usr/local/apache2/bin/apxs   --with-config-file-path=/usr/local/php/etc   --with-mysql=/usr/local/mysql   --with-libxml-dir   --with-gd   --with-jpeg-dir   --with-png-dir   --with-freetype-dir   --with-iconv-dir   --with-zlib-dir   --with-bz2   --with-openssl   --with-mcrypt   --enable-soap   --enable-gd-native-ttf   --enable-mbstring   --enable-sockets   --enable-exif   --disable-ipv6 --enable-bcmath --with-mysqli --with-gettext

 

具体须要哪些选项能够参考zabbix官网: 笔者给出的 是能够所有包含的

https://www.zabbix.com/documentation/2.2/manual/installation/requirements

注: 在支持zabbix上面有几个选项是必需要的,否则在后面结合安装php的GUI上面时候会提醒错误

 

cp php.ini-production /usr/local/php/etc/php.ini    #拷贝php配置文件,把样板文件拷贝到php安装路径etc下

注:在编译过程当中,可能会有不少库缺失,请yum安装-devel对应devel模块,对于--with-mcrypt  相关的这个包,yum默认是不提供的,请百度解决,安装额外的yum源后者源码编译此包,若是有须要请 留言!

4 修改apache配置支持解析php页面

 vim /usr/local/apache2/conf/httpd.conf

加入在AddType字段处加入

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

加入php能够做为首页

php.index

结果如:

5 测试LAMP的功能

到这里基本的lamp已经完成,是能够完成对php页面的支持,测试php可否和mysql通讯

启动mysql

启动httpd

在页面放置的位置编写一个php可否链接mysql的测试页

cd /usr/local/apache2/htdocs/ ;vim testmysql.php

<?php
    $conn=mysql_connect('localhost','root','c110123');
    if ($conn)
        echo "connect mysql Success......";
    else
        echo "Failusr.....";
?>
保存退出:
网页访问:http://ip/1.php
结果:
若是:结果是这个样子,说明lamp已经完成
  注:并不能说明运行zabbix上的php能支持mysql,由于zabbix使用的是mysqli,而这个是测试mysql函数!若是编译php的时候使用了 --with-mysqli 应该是没问题的
若是:页面结果显示Failusr,那么就有问题,请确保mysql是否启动,web是否启动,php可否在httpd上运行!
 
 

 6 安装zabbix

 包:zabbix2.2 源码包

zabbix-2.2.4.tar.gz

下载地址:www.zabbix.com 

安装指导手册:https://www.zabbix.com/documentation/2.2/manual/installation/install

步骤:

 

步骤1
tar -zxvf zabbix-2.2.0.tar.gz
 步骤2:建立zabbix用户 
 
groupadd  zabbix
useradd -r -g zabbix zabbix
步骤3: 建立库
create database zabbix character set utf8 collate utf8_bin;
mysql -u<username> -p<password> zabbix < database/mysql/schema.sql
mysql -u<username> -p<password> zabbix < database/mysql/images.sql
mysql -u<username> -p<password> zabbix < database/mysql/data.sql
 步骤4: 编译源码 
 
做为server和agent 使用如下参数(官网给出)
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
被一下取代(适合本身的场景)
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

注:若是出错请解决依赖环make && make install


第五步:提供web相关zabbix页面文件

/usr/local/apache2/htdocs (default directory when installing Apache from source)
 
cd /usr/local/apache2/htdocs ;mkdir zabbix
cp -r /usr/local/src/zabbix-2.2.4/frontends/php/* /usr/local/apache2/htdocs/zabbix/
 
步骤六
 
安装zabbix
web访问  http://ip/zabbix
 
在GUI 上面有必要修改php参数vim /usr/local/php/etc/php.ini  根据GUI上面的提示修改max_input 和timezone的参数,在此再也不论述
 
在数据中建立zabbix用于而且密码是zabbix而且给予相关权限
mysql> grant all privileges on zabbix.* to 'zabbix'@'%' indentified by 'zabbix';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' indentified by 'zabbix';
 
 
 
 
 
根据提示 手动下载保存相关路径至(/usr/local/apache2/htdocs/zabbix/conf/zabbix.conf.php)
 
 
安装结束
 
7 启动zabbix-server 和agent
 
ip/zabbix
使用默认用户名Admin/zabbix 登入发现zabbix server 未运行
启动zabbix
 
启动sever
zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf 
默认配置是 /usr/local/etc/zabbix_server/conf
 
启动zabbix (做为sever的服务器)上的agent
zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf
 

 

相关文章
相关标签/搜索