官术网_书友最值得收藏!

2.2 安裝與配置相關組件和服務

“原材料”準備好了,但距離Cacti成功運行還有一步之遙,必須正確、完整地安裝配置Cacti所需的環境和服務,本節分為Windows和Linux兩個平臺來介紹安裝和配置Cacti系統需要的基礎環境和服務。

2.2.1 Windows Server平臺的環境搭建

以Windows Server 2008 R2 Standard版本為例,基于IIS的Windows平臺的Cacti環境配置流程如圖2-1所示。

圖2-1 基于IIS的Cacti環境配置流程

當然,在Windows平臺上,可以使用Apache的Httpd組件來代替Windows自帶的IIS組件,那么,基于Apache Httpd的Windows平臺的Cacti環境配置流程如圖2-2所示。

圖2-2 基于Apache Httpd的Cacti環境配置流程

在圖2-2中,可以發現一個叫作“APPServ”的模塊,它是一個為用戶打包好的,集成了Apache、PHP、MySQL的程序,有了它就不需要手動繁瑣地安裝和配置,“APPServ”部分也將在本章介紹。

下面進入Cacti基礎環境配置的實戰部分。

1.PHP的安裝與配置

可以從http://windows.php.net/download/下載最新版的PHP安裝程序,通常該程序是一個ZIP壓縮包,本書把壓縮包解壓至E:\php。

這里需要注意一點,如果目前的環境使用Windows自帶的IIS作為Web服務,則PHP程序需要下載Non-Thread-Safe(NTS)版本,這是一個“大坑”,選擇錯誤的版本,會導致后續在配置PHP時,缺少相關的配置文件和功能模塊,所以切記要選對版本。圖2-3為PHP官方網站的聲明截圖。

如果目前的環境使用Apache的Httpd來作為Web服務,則PHP程序需要下載VC6版本,這也是一個“大坑”,選擇錯誤,會導致Apache環境中的PHP模塊加載不上,或者出現加載錯誤,切記要選擇正確的版本。圖2-4為PHP官方網站的聲明截圖。

同時,如果Apache選擇集成了OpenSSL的版本,如httpd-2.0.65-win32-x86-openssl-0.9.8y之類的,則PHP要選擇Thread Safe的版本;如果Apache選擇no-ssl,如httpd-2.0.65-win32-x86-no_ssl,則PHP也必須選擇no thread safe版本。

(1)Windows IIS環境下的PHP的安裝配置

PHP軟件的安裝步驟和操作如表2-3所示。這里需要說明的是,對于軟件的安裝及配置,本書都將以類似于表2-3的表格形式呈現出來。

圖2-3 PHP官方網站關于IIS匹配PHP版本的聲明

圖2-4 PHP官方網站關于Apache匹配PHP版本的聲明

表2-3 Windows IIS環境下PHP軟件的安裝步驟說明

下面配置系統環境變量,依次選擇“開始”→“控制面板→系統和安全→系統”,彈出如圖2-5所示的界面。

選擇“更改設置”,會彈出如圖2-6所示的對話框。

點擊“環境變量”按鈕,彈出如圖2-7所示的對話框。

圖2-5 操作系統的系統配置

圖2-6 配置系統屬性

圖2-7 配置環境變量

在“環境變量”對話框中的“系統變量”列表框中選擇“Path”選項,點擊“編輯”按鈕,彈出如圖2-8所示的對話框。

圖2-8 編輯系統變量

在變量值的最后加入“;E:\php\;E:\php\extras\mibs”,千萬不要忘記加入語句最前面的分號!

還需要注意一點,如果使用的是PHP 4版本,“E:\php\extras\mibs”路徑應該設置為“E:\php\mibs”,如果使用的是PHP 5版本,則“E:\php\extras\mibs”保持不變。

下面修改PHP的配置文件內容,如果使用的是PHP 4或更早的版本,那么將配置腳本2-1中的內容,復制后粘貼到E:\php\php.ini.dist文件的最后即可,不要忘記把E:\php\php.ini.dist文件重命名為php.ini。

配置腳體2-1 修改PHP配置文件增加擴展功能

如果使用的是PHP 5或以前版本,將配置腳本2-2中的內容復制后粘貼到C:\php\php.ini.dist的最后即可,也不要忘記重命名文件為php.ini。

配置腳體2-2 修改PHP配置文件增加擴展功能

上面增加的內容主要是為了讓PHP程序可以支持更多的擴展包,當然,這些擴展包可不是真的用來“擴展”的,它們是Cacti系統可以運行的必備組件。

注意,除了以上的修改內容以外,如果在配置文件中出現了“session.save_path=c:\tmp”這樣的內容,就需要去掉它。

(2)Windows Apache環境下的PHP的安裝配置

前面介紹了關于版本的問題,筆者在安裝Cacti環境的過程中,版本幾乎成了頭號敵人,有時候報錯原因非常詭異,根本找不到問題點,但是嘗試著換一個軟件版本,問題就解決了,我們真的不想大家還像我們以前一樣,一點點地死磕版本。回到正題上來,如果使用Apache的Httpd作為Web服務器的話,則需要安裝的PHP版本也要做出相應的改動,本書中使用的是php-5.2.10-Win32-VC6-x86,它可以兼容Apache httpd-2.0.65-win32-x86-openssl-0.9.8y版本的Web服務器。

PHP的安裝過程,請參考如表2-4所示的內容。

表2-4 Windows Apache環境下PHP軟件的安裝步驟說明

PHP在Apache環境下的配置,與在Windows環境下沒有什么區別。

首先需要更改系統的環境變量,然后修改PHP的配置文件,這兩部分內容在前面已經介紹過,這里就不再贅述了。

2.IIS的安裝與配置(也可以使用Apache,二者選其一)

IIS是Windows操作系統內置原生的Web程序,在使用它之前,需要進行一些配置,使IIS能夠和PHP對接,協同工作。

首先確認操作系統已經正確安裝了IIS功能,并且啟用了CGI功能,如圖2-9所示。

IIS 7.5為了易于PHP程序的安裝,增設了PHP Manager模塊。這個模塊極大地簡化了PHP的配置工作,只要簡單安裝,IIS就會自動完成相關配置,其下載地址為http://phpmanager.codeplex.com/releases/view/69115。

表2-5是PHP Manager模塊的安裝步驟說明。

圖2-9 打開或關閉Windows功能窗口

表2-5 PHP Manager軟件的安裝步驟

下面講解如何將IIS和PHP對接。

重新打開IIS的管理控制臺,會發現多了一個叫作PHP Manager的圖標,如圖2-10所示。

圖2-10 IIS管理配置界面

雙擊“PHP Manager”圖標,打開如圖2-11所示的界面,會發現IIS服務中還沒有加載PHP的相關支持程序,選擇“Register new PHP version”。

圖2-11 PHP Manager的管理配置界面

在如圖2-12所示的對話框中選擇“phpcgi.exe”文件的保存路徑,點擊“確定”按鈕,IIS會自動加載PHP的相關程序,如圖2-13所示。

圖2-12 注冊PHP程序

圖2-13 配置完成之后的PHP Manager管理界面

點擊“Check phpinfo()”鏈接,彈出如圖2-14所示的對話框,點擊“確定”按鈕,測試IIS和PHP的連通性。

如果彈出如圖2-15所示的畫面,則說明IIS和PHP已經成功對接了。

圖2-14 選擇站點和URL地址

圖2-15 PHP測試頁

3.Apache的安裝與配置(也可以使用IIS,二者選其一)

除了Windows原生的IIS組件可以作為Web服務器之外,Apache的Httpd也是一個很好的選擇,它同樣可以提供Web訪問的服務。IIS和Apache兩者選其一即可,作者不建議在同一個系統上安裝兩個Web服務器,這樣會給后續的工作造成諸如“端口占用”的棘手問題。

這里選擇httpd-2.0.65-win32-x86-openssl-0.9.8y版本的軟件,按照之前在PHP安裝配置部分關于版本選擇的說明,這里需要選擇PHP的對應版本是具有Thread safe功能的,并且是VC6版本的php-5.2.10-Win32-VC6-x86。

Apache的安裝過程,請參考如表2-6所示的步驟說明。

表2-6 Apache軟件的安裝步驟說明

下面需要配置Httpd的文件,Httpd的配置文件通常放在安裝目錄當中,名稱為httpd.conf,當然,如果怕弄錯配置文件,可以在開始菜單中找到正確的配置文件,如圖2-16所示。

圖2-16 Apache配置文件在開始菜單的位置

在介紹配置方法前,需要說明一點,因為版本不同,Apache的配置文件有幾種不同的配置方案,下面分別介紹。

1)如果使用的是Apache 1.3.x和PHP 4版本,那么將配置腳本2-3中的內容加入配置文件中。

配置腳體2-3 Apache程序的配置腳本

2)如果使用的是Apache 2.x和PHP 4版本,那么將配置腳本2-4中的內容加入配置文件中。

配置腳體2-4 修改PHP配置文件增加擴展功能

3)如果使用的是Apache 2.x和PHP 5版本,那么將配置腳本2-5中的內容加入配置文件中。

配置腳體2-5 修改PHP配置文件增加擴展功能

按照不同的Apache版本配置好之后,測試Apache和PHP兩個組件之間的連通性。在E:\httpd\Apache2\htdocs目錄中手動創建一個測試文件,名稱可以是test.php,在這個文件中輸入配置腳本2-6中的內容。

配置腳體2-6 修改PHP配置文件增加擴展功能

打開瀏覽器,在地址欄中輸入http://localhost/test.php。看看是否有輸出,也許會沒有輸出,僅僅是一個空白頁,這通常情況下是由權限問題、環境變量設置問題、模塊加載造成的。首先需要查看Apache的錯誤日志,這里通過一個比較復雜的例子來說明。

當查看日志記錄2-1時,發現Apache啟動時已經成功加載了PHP模塊,但是輸出了錯誤。

日志記錄2-1 Apache的日志記錄

這是為什么呢?查詢相關手冊得知,原來在安裝PHP程序時,選擇了完全安裝,但是這些鏈接庫是有相互依賴關系的,造成了沖突,那么怎么解決呢?

很簡單,手動修改PHP配置文件,將日志中提到的模塊注釋掉,如圖2-17所示。

圖2-17 Apache配置文件中注釋掉的相關擴展模塊

重啟Apache服務,Bingo!測試成功。

圖2-18 PHP測試頁

4.MySQL的安裝與配置

MySQL是負責整體Cacti系統的元數據存儲的部分,下面介紹它在Cacti系統環境中的安裝配置參考表2-7的內容。

表2-7 MySQL軟件的安裝步驟

安裝好MySQL之后,不一定只在本地對它進行維護,也有一些場景要通過另外一臺設備遠程連接,但是MySQL默認的屬性不允許遠程連接,這就需要對它進行修改,請參考配置腳本2-7中的內容。

配置腳體2-7 開啟MySQL數據庫實例的遠程連接

然后重啟MySQL服務即可。

5.AppServ的安裝與配置(傻瓜安裝模式)

有人看到上面描述的安裝配置過程,估計是要暈掉的,Cacti的安裝環境這么麻煩,算了,算了,不用了!

其實這些配置過程都非常基礎,但工作量比較大。有沒有什么簡便快速的方法可以讓Web服務器運行起來呢?有的,那就是AppServ。這是一個能夠幫助用戶快速搭建Web環境的軟件包。

可以從官方網站上下載,然后點擊安裝程序,進行安裝。安裝過程請參考表2-8中的內容。

表2-8 MySQL軟件的安裝步驟

程序安裝結束之后還沒有完,還記得我們曾經做過的那些配置么?對,如果使用AppServ來快速構建Web環境,一樣也逃不了修改配置文件的命運,還是老老實實修改配置吧,正好讓我們一起再復習一遍。

1)Apache的配置:添加配置腳本2-8中的語句到httpd.conf文件中。

配置腳體2-8 Apache的配置

2)PHP的配置:添加配置腳本2-9中的語句到php.ini文件中。

配置腳體2-9 PHP的配置

重啟AppServ服務,輸入http://localhost/phpinfo.php進行測試,如圖2-19所示。

圖2-19 PHP測試頁

安裝配置完成。下一步就是配置MySQL數據庫。這一點請參考上面的MySQL部分,這里不再贅述了。

6.RRDTool的安裝與配置

從官方網站RRDTool:http://www.cacti.net/downloads/rrdtool/win32/下載RRDTool的程序包,這個程序包不用安裝,下載完成后解壓縮,將解壓出來的文件中的所有文件復制到“C:/cacti”路徑下即可。

7.Net-SNMP的安裝與配置

在Net-SNMP的官方網站http://net-snmp.sourceforge.net/下載最新版本的Win64安裝文件,并將它安裝到“E:/net-snmp”路徑下。這個過程沒有什么難點,注意將安裝路徑修改正確即可。

至此,已經將在Windows平臺上構建Cacti系統的環境準備好了。在正式安裝Cacti主體程序之前,還需要學習如何在Linux平臺上搭建基礎環境。

2.2.2 Linux平臺環境的搭建

在Linux環境下,Cacti的操作系統環境比較容易安裝,不論Linux是何版本,都要確認以下的軟件是否在Linux操作系統中。

Httpd

PHP

PHP-MySQL

PHP-SNMP

MySQL

Net-SNMP

本書的操作系統版本是RedHat Enterprise 5.6,在安裝操作系統時,為了后續的軟件調試方便,選擇完全安裝,也就是說,Cacti所需的軟件環境,大部分都已經在原生的操作系統中了,不需要額外安裝。

1.PHP的安裝配置

通過php –m命令確認PHP都加載了哪些模塊,如圖2-20所示。

無論怎樣,都要確保PHP環境中已經加載了如下模塊。

圖2-20 php –m命令的輸出結果

MySQL

SNMP

XML

Session

Sockets

LDAP (如果后續需要LDAP認證,則需要用到該模塊)

GD (有些插件可能會用到)

從圖2-20中,大家可能會感到奇怪,為什么GD模塊沒有被加載上呢?其實主要原因是采用了系統自帶的PHP程序,默認配置下,不會自動加載GD模塊,需要手動獨立添加模塊來加載該模塊。

目前大部分的操作系統已經將這個工作做得極為簡化,以我們手中的操作系統為例,只要安裝光盤中的php-gd-5.1.6-27.el5_5.3.x86_64.rpm安裝包即可,系統會自動加載文件,如果所用的環境不支持這種方式,也不要著急,下面介紹一種純粹手動添加模塊的方法。

以安裝tidy模塊為例,需要先通過網絡下載tidy的安裝包,通常就是源碼包,對這個源碼包進行解壓、編譯、安裝,請參考配置腳本2-10的內容。

配置腳體2-10 編譯安裝tidy程序包

進入PHP源程序目錄中的ext目錄,這里存放著各個擴展模塊的源代碼,選擇需要的模塊,如tidy模塊。執行phpsize程序來生成安裝所需的編譯文件,注意,phpsize在PHP安裝目錄的bin目錄下,如“/usr/local/php5/bin/phpsize”。運行時,可能會報錯,phpsize執行的錯誤輸出如日志記錄2-2所示。

日志記錄2-2 phpsize執行的錯誤輸出

這時候,需要安裝autoconf,此軟件放在操作系統的安裝光盤中,通常以RPM包方式保存,安裝光盤中的autoconf程序即可。完成上述操作后,需要生成配置文件,并編譯生成模塊,參考配置腳本2-11。

配置腳體2-11 phpsize的編譯命令

tidy.so被復制到PHP對應的目錄php.ini中,設置擴展目錄“extension_dir="/usr/local/ php5/lib/php/extensions/no-debug-non-zts-20090626/”,添加擴展模塊引用“extension = tidy.so”。

至此模塊添加完成。

2.Apache的安裝配置(Httpd)

1)開始配置Web服務,找到存放Httpd配置文件的路徑,通常該路徑是/etc/httpd/conf/ httpd.conf,使用vi命令對它進行編輯,請參考配置腳本2-12。

配置腳體2-12 修改Apache的配置文件

2)重新啟動Apache Httpd服務即可。

按照Windows部分的介紹,手動創建一個測試文件,名為test.php,在該文件中輸入配置腳本2-13的內容。

配置腳體2-13 修改test.php的配置文件

3)打開瀏覽器,在地址欄中輸入http://localhost/test.php,彈出如圖2-21所示的頁面,說明Apache+PHP的環境已經配置成功了。

3.MySQL的安裝配置

在Linux操作系統下配置MySQL比較簡單,系統已經安裝好了MySQL程序,只需要設置如配置腳本2-14所示的超級用戶root的密碼,之后重啟MySQL服務即可。

圖2-21 PHP測試頁

配置腳體2-14 設置root用戶的密碼

4.RRDTool的安裝配置

在Linux環境下安裝RRDTool軟件很簡單,從官方網站下載RRDTool的RPM安裝包,安裝即可。

這里需要注意一下,作者在安裝RRDTool軟件的過程中發現該軟件在安裝過程中不斷報錯,我們在嘗試了很多次之后,發現一個比較可行的解決方案,請參考配置腳本2-15。

配置腳體2-15 安裝RRDTool軟件

以上問題都解決之后。記住!需要把rrdtool、rrdtool-devel、perl-rrdtool這3個包在同一時間使用rpm命令安裝,來排除它的依賴性問題。

5.建立Cacti用戶

如配置腳本2-16所示,需要在Linux操作系統中建立Cacti用戶以保證整體系統的安全性,畢竟沒有哪個實際的生產環境會讓你用root用戶“胡作非為”的。

配置腳體2-16 建立Cacti用戶

至此,基于Linux操作系統的Cacti基礎環境已經配置成功了,下面開始安裝Cacti主體程序。

主站蜘蛛池模板: 罗源县| 西峡县| 沙湾县| 石城县| 方正县| 富顺县| 密云县| 安庆市| 光山县| 桃园县| 富裕县| 伊金霍洛旗| 张家口市| 石泉县| 连山| 辽阳市| 福清市| 牟定县| 彭山县| 尼木县| 腾冲县| 昌都县| 宁陵县| 海门市| 永和县| 靖州| 横峰县| 肃宁县| 阜平县| 会同县| 佳木斯市| 卢龙县| 九台市| 泽库县| 登封市| 河北区| 沾化县| 土默特右旗| 克什克腾旗| 武威市| 平原县|