1、LAMP安裝前的準備 php
安裝環境:rhel5.8 zabbix-2.4.5 php-5.6.8 MySQL5.6.23 html
libpng-1.5.9 zlib-1.2.7mysql
(apr,apr-util,fping,iksemel,jpeg,libmcrypt,libmcrypt-devel,pcre 下載安裝)使用最新版本。
linux
一、zlib 下載地址:http://zlib.net 算法
在php中使用到的gzip的壓縮和輸出功能就是用到了zlib庫。sql
二、libxml2 下載地址:ftp://xmlsoft.org/libxml2/shell
在php中使用到的DOM, libxml, SimpleXML, SOAP, WDDX, XSL, XSLT, XML, XMLReader, XMLRPC ,XMLWriter的擴展到要使用到此庫。數據庫
三、libcrypt 下載地址:http://mcrypt.sourceforge.netapache
Mcrypt是PHP的一個擴展,完成了經常使用加密算法的封裝。其實該擴展是對mcrypt標準類庫的封裝,mcrypt完成了至關多的經常使用加密算法,如DES, TripleDES, Blowfish (def ault), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 和 GOST加密算法,而且提供了CBC、OFB、CFB 和 ECB 四種塊加密的模型。服務器
四、libpng (1.5.18) 下載地址: http://sourceforge.net/projects/libpng/
是一套免費的、公開源代碼的程序庫,支持對 PNG 圖形文件的建立、讀寫等操做。使用 zlib 程序庫做爲壓縮引擎,zlib 也是著名的 gzip (GNU zip) 所採用的壓縮引擎。
五、jpeg8 下載地址:http://www.ijg.org/files/
是一套免費的、公開源代碼的程序庫,支持對 jpg/jpeg 圖形文件的建立、讀寫等操做。
六、freetype 下載地址:http://www.freetype.org/download.html
FreeType庫是一個徹底免費(開源)的、高質量的且可移植的字體引擎,它提供統一的接口來訪問多種字體格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。
七、autoconf 下載地址:http://ftp.gnu.org/gnu/autoconf/?C=M;O=D
Autoconf是一個用於生成能夠自動地配置軟件源代碼包以適應多種Unix類系統的 shell腳本的工具。GD2用到它
八、GD2 (2.1.0) 下載地址:http://libgd.bitbucket.org/
GD庫,是php處理圖形的擴展庫,GD庫提供了一系列用來處理圖片的API,使用GD庫能夠處理圖片,或者生成圖片。
8.二、libxpm (最好安裝一下,否則安裝PHP時,會報相應的錯)
讓你的程序具備讀取xpm格式圖像的功能
九、apr 下載地址:http://apr.apache.org/download.cgi
十、apr-util 下載地址:http://apr.apache.org/download.cgi
十一、pcre 下載地址:http://www.pcre.org/
PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正規表達式庫。
十二、apache httpd 下載地址:http://httpd.apache.org/download.cgi
1三、mysql 下載地址:http://dev.mysql.com/downloads/mysql/
1四、php 下載地址:http://www.php.net/
說明:若是安裝環境是rhel6.3,則上述依賴包及mysql、apache、php可直接使用鏡像裏自帶的rpm文件安裝。
#yum install mysql-server httpd php -y ---可配置yum源,使用yum命令安裝
安裝依賴包
#yum install gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml mysql-devel -y
2、源碼包安裝依賴包
一、安裝zlib
PHP5源代碼的配置時,會經過在configure命令的選項中加上"--with-zlib-dir=/usr/local/zlib"選 項,用於指定安裝zlib庫文件的位置
二、安裝libxml2
PHP5源代碼的配置時,會經過在configure命令的選項中加上"--with-libxml-dir=/usr/local/libxml2"選 項,用於指定安裝libxml2庫文件的位置
三、安裝libmcrypt
PHP5源代碼的配置時,會經過在configure命令的選項中加上"--with-mcrypt-dir=/usr/local/libmcrypt"選 項,用於指定安裝libmcrypt庫文件的位置
安裝完成libmcrypt庫之後,不一樣的linux系統版本有可能還要安裝一下libltdl庫。安裝方法和前面的步驟相同,能夠進入到解壓縮的 目錄/usr/local/src/libmcrypt-2.5.8下,找到libltdl庫源代碼所在的目錄libltdl,進入這個目錄按照下面幾個 命令配置、編譯、安裝就能夠了。
四、安裝libpng
PHP5源代碼的配置時,會經過在configure命令的選項中加上"--with-libpng-dir=/usr/local/libpng"選 項,用於指定安裝libpng庫文件的位置
注:libpng與zlib之間有版本兼容性問題,若是版本不合適的會make的時候會報以下的錯誤
已知 zlib-1.2.8和libpng-1.6.10之間就存在這種問題, zlib-1.2.8和libpng-1.5.18能夠正常安裝,有篇文章對此問題進行了一些描述
http://stackoverflow.com/questions/19738464/pngfix-c2151-undefined-reference-to-inflateres
五、安裝jpeg8
在安裝GD2庫配置時,能夠在configure命令的選項中加上「--with-jpeg=/usr/local/jpeg8」選項,指定jpeg8庫文件的位置。安裝PHP時也要指定該庫文件的位置。
六、安裝freetype
2.設置環境變量:
export LIBPNG_CFLAGS="-I/usr/local/libpng/include"
export LIBPNG_LDFLAGS="-L/usr/local/libpng/lib"
3.生成Makefile:./configure --prefix=/usr/local/freetype/
編譯:make
安裝:make install
若是安裝成功將會在/usr/local/freetype目錄下存在bin,include,lib和share四個目錄。並在安裝GD2庫時, 經過configure命令選項中加上「--with-freetype=/usr/local/freetype/」選項,指定freetype庫文件 位置。
3、源碼安裝mysql、apache、php、zabbix
一、mysql使用最新版本的rpm包安裝。
安裝完mysql數據庫後,建立用戶、受權及導入zabbix腳本
建立zabbix用戶及組
# groupadd zabbix
# useradd –g zabbix zabbix
service mysql start --啓動mysql
建立zabbix數據庫及受權
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to 'zabbix'@'%';
或:mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
導入zabbix相關的sql腳本:
[root@rusky /]# cd /usr/share/doc/zabbix-server-mysql-2.4.4/create/
[root@rusky /]# ls
data.sql images.sql schema.sql
# mysql -uroot -p zabbix < schema.sql
# mysql -uroot -p zabbix < images.sql
# mysql -uroot -p zabbix < data.sql
二、安裝apache
Apache部署
1. 解壓縮tar包
# tar zxvf httpd-2.2.19.tar
2. 編譯apache
# ./configure --prefix=/data/apache2 --enable-so --enable-mods-shared=most --with-mpm=worker
3. 安裝
# make && make install
4. 創建apche用戶和apache組
# groupadd apache
# useradd –g apache apache
5. 啓動apache
# /usr/local/apache2/bin/apachectl start
6. 加入開機啓動
# echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.local
三、安裝php
3.1 Yum安裝依賴
# yum install –y libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetpyp-devel flex gd curl-devel
3.2 解壓tar包
tar zxvf php-5.3.6.tar
3.3 編譯PHP
# ./configure --prefix=/data/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-gd --with-freetype-dir --with-jpeg-dir --with-png-dir --with-mysql=/usr/local/mysql --with-zlib --with-config-file-path=/etc --bindir=/usr/bin --sbindir=/usr/sbin --with-curl --with-exec-dir=/usr/bin --enable-xml --with-xmlrpc=shared --enable-magic-quotes --enable-sockets --enable-mbstring=all --with-pdo-mysql=/usr/local/mysql --with-gettext
3.4 安裝
# make && make install
3.5 整合PHP到Apache
在apache的配置文件 httpd.conf中加入php的配置
AddType application/x-httpd-php .php
DirectoryIndex後的 index.html修改或添加index.php
3.6 添加bcmath擴展模塊
# cd php-5.3.6.tar/ext/bcmath/
# phpize
# ./configure --with-bcmath --with-php-config=/usr/bin/php-config
# make && make install
3.7 根據安裝完成後指定的目錄在php.ini中配置bcmath模塊
php.ini文件的配置:
加入擴展文件的路徑:extension_dir=extension_dir="/opt/data/php5/lib/php/extensions/no-debug-zts-20131226/" 填寫實際路徑
加入extension=bcmath.so --加入bcmath模塊。根據須要,也可加入其它模塊。
3.8 重啓Apache
# /usr/local/apache2/bin/apachectl restart
提示:編譯安裝完成後,沒有php.ini配置文件
須要手動把php源安裝文件目錄下的php.ini-production複製到/etc/目錄下,並重命名爲php.ini
四、zabbix-server部屬
4.1 創建zabbix 用戶 zabbix 組 --在部屬mysql用戶時已建立zabbix用戶及組,這裏不用建立
# groupadd zabbix
# useradd –g zabbix zabbix
4.2 yum安裝依賴包
# yum install –y yum net-snmp-devel
4.3 解壓tar包
# tar zxvf zabbix-2.0.6.tar.gz
4.4 編譯zabbix
# ./configure --prefix=/data/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl
4.5 修改zabbix的配置文件
修改zabbix的配置文件 /usr/local/zabbix/etc/zabbix_server.conf
修改DBName=zabbix
DBUser= zabbix
DBPassword=實際密碼
4.6 拷貝zabbix的php頁面到apache的頁面目錄下並更名爲zabbix
# cp -r /data/ww/zabbix/zabbix-2.0.6/frontends/php /data/apache2/htdocs/zabbix
若是apache是rpm安裝的,則應該複製到/var/www/...目錄下
4.7 拷貝zabbix的啓動腳本到 /etc/init.d 下
# cp /data/ww/zabbix/zabbix-2.0.6/misc/init.d/fedora/core/ zabbix_* /etc/init.d/
4.8 添加zabbix的服務端口
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trappe
4.9 修改php.ini
date.timezone = Asia/Shanghai
post_max_size = 16M
max_execution_time = 300
msx_input_time = 300
4.10 重啓apache
4.11 Web配置服務器
其它:
LAMP環境搭建若是是在rhel6.0以上版本,則很是容易,由於系統鏡像的rpm包裏自己就有所須要的apache-httpd,php,mysql及其它依賴包,配置本地yum源後,直接yum命令安裝便可。zabbix從官網下載rpm包安裝也很容易。
若是是rhel6.0如下,如本次安裝的環境爲rhel5.8,系統自帶的PHP的rpm包版本過低,致使安裝好後zabbix檢查環境不經過,而後下載最新版本的php源碼,編譯安裝,各類折騰,各類蛋爆的問題。
總之,在安裝過程當中注意安裝依賴包的順序、版本,還有最後安裝php擴展,每一步安裝過程當中注意不要出問題,忽略小的error及warnning都有可能致使最後zabbix在初始檢查安裝環境時失敗。
創建zabbix 用戶 zabbix 組
# groupadd zabbix
# useradd –g zabbix zabbix
安裝配置zabbix
# tar zxvf zabbix-2.0.6.tar.gz
# ./configure --prefix=/usr/local/zabbix --enable-agent
# make install
# cp /data/ww/zabbix/zabbix-2.0.6/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
# vi /etc/init.d/zabbix_agentd 修改目錄
# vi /usr/local/zabbix/etc/zabbix_agentd.conf 修改監控主機ip
# chown -R zabbix:zabbix /usr/local/zabbix/
# /etc/init.d/zabbix_agentd start
# ps -ef | grep zabbix
安裝配置agent端完成
查看 /tmp/zabbix_agentd.log 有沒有error
telnet zabbixServer IP 10050/10051通 -server端偵聽在10051端口,客戶端偵聽在10050端口
啓動 zabbix_agentd.exe -c d:\zabbix\zabbix_agentd.win.conf -s