真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

編譯安裝ZABBIX3.0+LAMP

1.前戲:

創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿(mǎn)足客戶(hù)于互聯(lián)網(wǎng)時(shí)代的站前網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

1.系統(tǒng):Ubuntu 14.0 或 Debian 7.11

2.準(zhǔn)備zabbix和LAMP環(huán)境的安裝源碼包:(記住,對(duì)于一切安裝包最穩(wěn)妥的途徑就是到相應(yīng)官網(wǎng)上去下載,最好是LTS長(zhǎng)期支持的版本,否則,no zuo no die)

Zabbix:zabbix-3.0.5.tar.gz

Apache:httpd-2.4.23.tar.gz //Apache官網(wǎng)

apr:apr-1.5.2.tar.gz //Apache官網(wǎng)

apr-util:apr-util-1.5.4.tar.gz //Apache官網(wǎng)

PHP:php-5.4.22.tar.gz

mysql:mysql-boost-5.7.12.tar.gz

boost:boost_1_59_0.tar.gz //5.7以后開(kāi)始要求這個(gè)boost依賴(lài),在此mysql-boost版本中含有鏈接,最好是根據(jù)里面的下載這種兼容性最好的版本

2.過(guò)程:

安裝Mysql 5.7:

(具體參照前面的博客——關(guān)于LNMP編譯安裝的安裝文檔)

httpd(Apache作為WEB):

配置:

./configure --prefix=/home/stt/server/apache

--enable-so

--enable-proxy --enable-cgi

--enable-info

--enable-rewrite

--enable-speling

--with-included-apr

--with-pcre

--enable-mods-shared=most

--enable-ssl

報(bào)錯(cuò)情況:

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.23/srclib里面,并去除版本號(hào)

cp -r apr-1.5.2/ httpd-2.4.23/srclib/apr

cp -r apr-util-1.5.4/ httpd-2.4.23/srclib/apr-util

編譯安裝:

make && make install

PHP:

配置:

./configure --prefix=/home/stt/server/php

--with-apxs2=/home/stt/server/apache/bin/apxs

--with-config-file-path=/home/stt/server/php/etc

--with-mysql=/home/stt/server/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

報(bào)錯(cuò)情況:

configure: error: Cannot find libmysqlclient_r under

解決方案:

編譯之前,先處理一下mysql的庫(kù),默認(rèn)查找libmysqlclient_r.so,可是mysql默認(rèn)為libmysqlclient.so,內(nèi)容完全一樣,做個(gè)鏈接即可

$ cd /home/stt/server/mysql/lib

$ ln -s libmysqlclient.so.20 libmysqlclient_r.so

編譯安裝:

make && make install

安裝zabbix:

配置:(根據(jù)官網(wǎng)的要求配置參數(shù),當(dāng)然,不一定一模一樣,比如agent客戶(hù)端就不必要)

./configure --prefix=/home/stt/server/zabbix

--enable-server

--enable-agent

--with-mysql=/home/stt/server/mysql/bin/mysql_config

--enable-ipv6

--with-net-snmp

--with-libcurl --with-libxml2

報(bào)錯(cuò)情況:

configure: error: Not found Net-SNMP library

解決方案:

apt-get install -y libsnmp-dev snmp

安裝:make install

3.高潮:

修改配置文件:(關(guān)于LAMP和zabbix的具體配置日后再在博客上持續(xù)發(fā)布,現(xiàn)在只談環(huán)境的編譯安裝

修改Apache參數(shù):

(重要配置部分)

在AddType字段處加入?yún)?shù):


TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

加入php可以作為首頁(yè):


DirectoryIndex index.php index.html //php文件放在后面,會(huì)先解釋index.html,除非你的Apache ROOT根目錄下沒(méi)有html文件

(細(xì)節(jié)配置 — 可忽略)

Listen 8080 //監(jiān)聽(tīng)端口,因?yàn)?024以?xún)?nèi)的端口都是需要超級(jí)管理員root的權(quán)限去開(kāi)啟的,不修改就會(huì)在你啟動(dòng)Apache服務(wù)的時(shí)候報(bào)錯(cuò)


User stt
Group stt

ServerAdmin you@example.com
ServerName javazabbix.java.com:8080

DocumentRoot "/home/stt/server/apache/htdocs/zabbix"

Options Indexes FollowSymLinks
AllowOverride None
Require all granted

修改PHP參數(shù):

在GUI 上面有必要修改php參數(shù)vim /home/stt/server/php/etc/php.ini 根據(jù)GUI上面的提示修改max_input 和timezone的參數(shù),這是ZABBI服務(wù)的要求。

php.ini配置文件修改:(根據(jù)zabbix官方文檔對(duì)PHP的低配置要求為準(zhǔn),否則在打開(kāi)zabbix setup頁(yè)面就會(huì)有相應(yīng)的紅叉×)

max_execution_time = 300

memory_limit = 128M

post_max_size = 16M

upload_max_filesize = 2M

max_input_time = 300

always_populate_raw_post_data = -1

date.timezone = Asia/Shanghai

測(cè)試LAMP功能:

到這里基本的LAMP+ZABBIX環(huán)境已經(jīng)搭建完成,理論上是可以完成對(duì)php頁(yè)面的支持。這里可以測(cè)試一下php能否和mysql通信

啟動(dòng)服務(wù)進(jìn)行測(cè)試:

啟動(dòng)mysql

啟動(dòng)httpd(就是Apache服務(wù))

在頁(yè)面放置的位置編寫(xiě)一個(gè)php能否連接mysql的測(cè)試頁(yè)

cd /home/stt/server/apache/htdocs/ ;vim index.php

$conn=mysql_connect(\'localhost\',\'root\',\'123456\');

if ($conn)

echo "connect mysql Success......";

else

echo "Failusr.....";

?>

(很明顯,我是直接通過(guò)IP訪(fǎng)問(wèn)的,域名需要自己去綁定IP,在此不多扯)

配置MySQL的zabbix用戶(hù)權(quán)限:

mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> grant all privileges on zabbix.* to zabbix@localhost identified by \'\';

mysql> flush privileges;

mysql>quit;

導(dǎo)入zabbix數(shù)據(jù):(注意導(dǎo)入順序,如果是package的,就不需要顧慮這點(diǎn),因?yàn)槿弦涣耍?/p>

cdzabbix-3.0.5/database/mysql

mysql -u zabbix-p < schema.sql

mysql -u zabbix-p < images.sql

mysql -u zabbix-p < data.sql

修改zabbix參數(shù):

vim zabbix_server.conf

DBHost=localhost //注意下面我再討論中發(fā)現(xiàn)的問(wèn)題

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

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

討論:為什么不用LNMP?

其實(shí)理論上是可以的,只是一直有道坎邁不過(guò),就是zabbix對(duì)nginx的兼容性。當(dāng)訪(fǎng)問(wèn)zabbix setup頁(yè)面的時(shí)候,總是會(huì)停留在第一步的頁(yè)面,點(diǎn)擊Next Step無(wú)反應(yīng)。檢查各服務(wù)的日志后會(huì)發(fā)現(xiàn)問(wèn)題報(bào)錯(cuò)的唯有MySQL上面,zabbix一直在報(bào)錯(cuò) [Note] Aborted connection 16830 to db: \'zabbix\' user: \'zabbix\' host: \'localhost\' (Got timeout reading communication packets) ,問(wèn)題顯然出現(xiàn)在zabbix對(duì)MySQL的連接上 。但是當(dāng)我進(jìn)入MySQL中查詢(xún)連接數(shù) show full processlist; 的時(shí)候會(huì)發(fā)現(xiàn),zabbix請(qǐng)求的進(jìn)程已經(jīng)連接到MySQL中了,所以肯定不是連接不上數(shù)據(jù)庫(kù)的問(wèn)題。

經(jīng)我查找,有友友這么解決:直接修改zabbix根目錄下的conf/zabbix.conf.php.example :

// Zabbix GUI configuration file.
global $DB;

$DB[\'TYPE\'] = \'MYSQL\';
$DB[\'SERVER\'] = \'localhost\';
$DB[\'PORT\'] = \'0\';
$DB[\'DATABASE\'] = \'zabbix\';
$DB[\'USER\'] = \'zabbix\';
$DB[\'PASSWORD\'] = \'\';
// Schema name. Used for IBM DB2 and PostgreSQL.
$DB[\'SCHEMA\'] = \'\';

$ZBX_SERVER = \'localhost\';
$ZBX_SERVER_PORT = \'10051\';
$ZBX_SERVER_NAME = \'\';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

解釋?zhuān)?/p>

復(fù)制一份zabbix.conf.php.example文件為zabbix.conf.php,因?yàn)閦abbix.conf.php.example在WEB頁(yè)面而設(shè)置后會(huì)生成zabbix.conf.php這樣的頁(yè)面,所以我們可以直接通過(guò)手動(dòng)修改該配置頁(yè)面,就可以直接訪(fǎng)問(wèn)zabbix的登錄頁(yè)了。但事實(shí)上,我并沒(méi)有成功。我發(fā)現(xiàn)WEB頁(yè)面會(huì)提示MySQL失去連接。

現(xiàn)在談到一個(gè)問(wèn)題,當(dāng)我在LAMP中進(jìn)行zabbix的WEB頁(yè)面配置時(shí)發(fā)現(xiàn),如果配置MySQL的地址為localhost,則不能成功進(jìn)入下一步設(shè)置,頁(yè)面會(huì)提示MySQL連接失敗,但是我改為127.0.0.1就可以成功連接并完成zabbix的所有setup頁(yè)面配置。由此我在這點(diǎn)聯(lián)想到:在LNMP環(huán)境中手動(dòng)修改配置文件不成功的原因是否也是如此。By the way,肯定有人疑問(wèn):服務(wù)器中一文件 /etc/hosts 會(huì)解釋 localhost 到 127.0.0.1 中,為毛使用 locahost 不行呢?并且,我在 zabbix_server.conf 配置DB MySQL 的地址是localhost,而在 WEB setup 頁(yè)面中配置的DB MySQL 的地址在 localhost 和 127.0.0.1 中只有 127.0.0.1 正常連接,并且WEB頁(yè)面中配置的和配置文件中添加的DB 地址不一樣。這個(gè)問(wèn)題嘛,我也的確沒(méi)有去研究,希望能有人給我解答,畢竟我也是個(gè)小白。然而,我在此和大家說(shuō)明一點(diǎn),在 MySQL 中,貌似由版本5.0開(kāi)始,(有些版本) \'%\' 不包括localhost,要單獨(dú)對(duì) @\'localhost\' 進(jìn)行賦值。對(duì)用了 % 則代表了所有的 host 都能遠(yuǎn)程訪(fǎng)問(wèn)該 MySQL 。

其中 MySQL 官方文檔有說(shuō)明:% 并不包括 localhost ,此處配置 % 遠(yuǎn)程其他 host 有權(quán)限訪(fǎng)問(wèn),那么在 MySQL 的配置文件中my.cnf,也需要做一些配置,將 bind_address=0.0.0.0 或者直接屏蔽掉此項(xiàng)。

當(dāng)主機(jī)填寫(xiě)為 localhost 時(shí) MySQL 會(huì)采用unix domain socket連接

當(dāng)主機(jī)填寫(xiě)為 127.0.0.1 時(shí) MySQL 會(huì)采用tcp方式連接

經(jīng)搜查表明 MySQL 設(shè)計(jì)到的很多應(yīng)用,比如wordpress這些默認(rèn)訪(fǎng)問(wèn)localhost的應(yīng)用,都會(huì)不可用,需要更改 host 為 127.0.0.1 才行。


文章名稱(chēng):編譯安裝ZABBIX3.0+LAMP
轉(zhuǎn)載來(lái)于:http://weahome.cn/article/cgjide.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部