Solaris10下NDOUtils的安裝_第1頁
Solaris10下NDOUtils的安裝_第2頁
Solaris10下NDOUtils的安裝_第3頁
Solaris10下NDOUtils的安裝_第4頁
Solaris10下NDOUtils的安裝_第5頁
已閱讀5頁,還剩3頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Solaris10下NDOUtils的安裝 1. 資源準備 1.1. 數據庫NDOUtils目前僅支持MySql數據庫,對于PostgreSQL數據庫支持還在開發中,未來可能會支持更多的、眾所關注的數據庫。可以從MySql的官方網站()獲得一個穩定的MySql數據庫版本,同時也下載一個MySql客戶端mysql-gui-tools,方便對于MySql數據庫操作。我的操作系統是Solaris10,我選擇下載源碼進行編譯安裝,下載mysql-5.0.51b.tar.gz源碼,同時下載MySql的官方參考文檔。 1.2. NDOUtilsNDOUtils源碼可以從Nagios的官方網站獲得,同時可以

2、下載一份NDOUTILS的官方文檔(NDOUtils.pdf)。該文檔介紹了NDOUtils的設計目的,實現原理,和安裝過程。源碼:ndoutils-1.4b7.tar.gz 2. MySql的安裝MySql的安裝方法已經在MySql官方文檔中有詳細的講解,在這里我不做過的介紹,僅給出簡單的安裝過程。 2.1. 創建MySql的用戶和用戶組用戶和用戶組分別為mysql和mysql# groupadd mysql# useradd -g mysql mysql 2.2. Configure首先要解壓下載的源碼包,然后運行源碼中的Configure命令完成安裝前的配置工作。# gunzip ./m

3、ysql-5.0.51b.tar.gz# tar xvf ./mysql-5.0.51b.tar# cd ./mysql-5.0.51b# CFLAGS=-O3 CXX=gcc CXXFLAGS=-O3 -felide-constructors -fno-exceptions -fno-rtti ./configure -prefix=/usr/local/mysql -enable-assembler -with-mysqld-ldflags=-all-static這里指定安裝路徑是/usr/local/mysql。 2.3. 編譯、安裝不改變路徑。# make# make install#

4、 cp support-files/my-f /etc/f# cd /usr/local/mysql# bin/mysql_install_db -user=mysql# chown -R root .# chown -R mysql var# chgrp -R mysql .# bin/mysqld_safe -user=mysql &# cd bin# ./mysql -u root -p -h localhost使用mysql命令登錄數據庫檢查是否安裝成功(root用戶密碼為空)。 2.4. 創建NDOUtils后臺數據庫以及登錄用戶根據NDOUtils的設計實現原理,其將Nagios監

5、控程序收集到的信息(信息以文本方式存在)導入到后臺數據庫中,以便后續使用這些歷史數據進行分析、預測以及實現其他具體業務功能。此處創建的數據庫和登錄用戶就是為NDOUtils程序保存監控信息所使用的。我們在這里創建數據庫名為nagiosdb,登錄用戶和密碼均為nagiosmysql。當然也可以使用其他數據庫名和用戶名,但是要記錄下來,因為在后續的NDOUtils數據庫初始化,以及NDOUtils配置文件中都要用到這些信息。具體的操作如下:/進入MySql的安裝目錄# cd /usr/local/mysql/進入bin目錄# cd ./bin/運行mysql,使用root用戶登錄數據庫,密碼為空#

6、 ./mysql -u root -p -h localhost mysql CREATE DATABASE nagiosdb;mysql GRANT ALL ON nagiosdb.* TO nagiosmysqllocalhost IDENTIFIED BY nagiosmysql;mysql exit/退出登錄,使用剛剛創建的用戶登錄剛剛創建的數據庫# ./mysql -u nagiosmysql -p -h localhost -D nagiosdbEnter password: Welcome to the MySQL monitor. Commands end with ; or

7、g.Your MySQL connection id is 4Server version: 5.0.51b-log Source distribution Type help; or h for help. Type c to clear the buffer. mysql 3. NDOUtils安裝 3.1. 安裝前準備圖3.1.1圖3.1.1展示了一個NDOUtils各組件之間是如何協同工作的。該圖僅僅是NDOUtils的一個最簡單的配置實現方式,但它包含了所有必需的要素,同時也非常明晰的展示出各組件之間的關系。Nagios主監控實例是必不可少的,一個用于存放信息的后臺數據庫也是必須的。

8、Nagios主監控實例與NDOUtils進程之間通過TCP或Unix Domain Socket進行通信,具體實現是Nagios通過NDOUtils提供的NDOMOD模塊完成與NDOUtils進程的通信。通過對于NDOUtils實現原理的了解,我們可以知道在安裝NDOUtils之前有哪些準備工作需要完成,首先需要有Nagios軟件,一個后臺數據庫,目前只有MySql可用。另外還有一些NDOUtils用到的一些類庫,如OpenSSL、Perl、DBI等。這里用到的NDOUtils版本是ndoutils-1.4b7,Nagios是3.0.3。其余的軟件包如下Data-Dumper-2.121DBI

9、-1.607DBD-mysql-4.007perl-5.8.8-sol10-x86-local 3.2. 安裝NDOUtils首先解壓源代碼包,釋放到某一目錄,將此目錄表示為NDOUTILS_DIR(便于后續描述安裝過程)。 3.2.1. Configure# cd $NDOUTILS_DIR# ./configure -prefix=/usr/local/nagios -enable-mysql -with-mysql-lib=/usr/local/mysql/lib/mysql -with-mysql-inc=/usr/local/mysql/include這里需要指定MySql的incl

10、ude文件和lib文件路徑。 3.2.2. Make# cd /usr/local/include# ln -s /usr/local/mysql/include/mysql ./mysql# cd /usr/local/lib# ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so ./libmysqlclient.so# ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 ./libmysqlclient.so.15需要將/usr/local/lib添加到LD_LIBRARY_PATH變

11、量中。# cd $NDOUTILS_DIR# vi ./src/Makefilendo2db-2x: ndo2db.c $(NDO_INC) $(NDO_OBJS) $(COMMON_INC) $(COMMON_OBJS) dbhandlers-2x.o $(CC) $(CFLAGS) $(DBCFLAGS) -D BUILD_NAGIOS_2X -o ndo2db-2x ndo2db.c dbhandlers-2x.o ./common/snprintf.o $(COMMON_OBJS) $(NDO_OBJS) $(LDFLAGS) $(DBLDFLAGS) $(LIBS) $(SOCKET

12、LIBS) $(DBLIBS) $(MATHLIBS) $(OTHERLIBS) ndo2db-3x: ndo2db.c $(NDO_INC) $(NDO_OBJS) $(COMMON_INC) $(COMMON_OBJS) dbhandlers-3x.o $(CC) $(CFLAGS) $(DBCFLAGS) -D BUILD_NAGIOS_3X -o ndo2db-3x ndo2db.c dbhandlers-3x.o ./common/snprintf.o $(COMMON_OBJS) $(NDO_OBJS) $(LDFLAGS) $(DBLDFLAGS) $(LIBS) $(SOCKE

13、TLIBS) $(DBLIBS) $(MATHLIBS) $(OTHERLIBS)其中Makefile文件被標出的部分為所需添加的內容,如果不引入該文件ndo2db-3x和ndo2db-2x將編譯失敗,因為這兩個C文件中都用了asprintf方法,而沒有定義該方法,這個方法是在Nagios的 common/snprintf.c文件中定義的??梢詫nprintf.c編譯好的snprintf.o文件直接拷貝過來,并引入Makefile文件中。這樣編譯才能通過。# cd $NDOUTILS_DIR# cp -R ./nagios-3.0.3/common ./ #拷貝 snprintf.o文件#

14、make編譯完成,請注意在這之后不要運行make install。 3.2.3. 設置# cd $NDOUTILS_DIR/src# cp ndomod-3x.o ndo2db-3x log2ndo file2sock /usr/local/nagios/bin# cd $NDOUTILS_DIR/config# cp ndomod.cfg ndo2db.cfg /usr/local/nagios/etc將編譯后的可執行文件和配置文件拷貝到Nagios的相應目錄下。并修改配置文件。# cd /usr/local/nagios/etc# vi ./ndo2db.cfgdb_name=nagios

15、dbdb_user=nagiosmysqldb_pass=nagiosmysql修改NDOUtils配置文件ndo2db.cfg,這里主要修改數據庫名、用戶名和密碼(db_name、db_user、db_pass),將其設置成我們之前在安裝MySql時創建的數據庫和用戶。其余保持默認配置即可。# cd /usr/local/nagios/etc# vi ./nagios.cfg# Uncomment the line below if youre running Nagios 2.x#broker_module=/usr/local/nagios/bin/ndomod-2x.o config_

16、file=/usr/local/nagios/etc/ndomod.cfg # Uncomment the line below if youre running Nagios 3.xbroker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg修改Nagios配置文件,追加上述各行,并確認event_broker_options=-1。event_broker_options=-1這樣配置工作基本完成,下一步就可以初始化數據庫了,但在初始化數據庫之前先要安裝Perl以及D

17、BI,因為NDOUtils的數據庫初始化腳本installdb中需要BDI與數據庫建立連接。 3.3. 安裝Perl及DBI、DBDPerl的安裝可以參考官方文檔,這里僅列出簡要的安裝過程。Perl:# gunzip ./perl-5.8.8-sol10-x86-local.gz # pkgadd -d ./perl-5.8.8-sol10-x86-local# cd /usr/bin# ln -sf /usr/local/bin/perl ./perl# perl -v This is perl, v5.8.8 built for i86pc-solaris Copyright 1987-2

18、006, Larry Wall Perl may be copied only under the terms of either the Artistic License or theGNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found onthis system using man perl or perldoc perl. If you have access

19、 to theInternet, point your browser at /, the Perl Home Page.Data-Dumper:# gunzip ./Data-Dumper-2.121.tar.gz # tar xvf ./Data-Dumper-2.121.tar # cd ./Data-Dumper-2.121# perl ./Makefile.PL # make# make installDBI:# gunzip ./DBI-1.607.tar.gz # tar xvf ./DBI-1.607.tar# cd ./DBI-1.607#

20、 perl ./Makefile.PL # make# make installDBD-mysql:# gunzip ./DBD-mysql-4.007.tar.gz # tar xvf ./DBD-mysql-4.007.tar# cd ./DBD-mysql-4.007# perl Makefile.PL -libs=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -cflags=-I/usr/local/mysql/include/mysql -testhost=localhost# make# make test# make installMake test中如果沒有出現問題則表明安裝成功。 3.4. 初始化NDOUtils后臺數據庫在NDOUtils的源代碼中有個db目錄,其中存放了用于初始化數據的sql腳本和一個建庫初始化shell腳本。# cd $NDOUTILS_DIR# export PATH=$PATH:/usr/local/mysql/bin# cd ./db# ./installdb -u nagiosmysql -p nagiosmysql -h localhost -d nagiosdb運行installdb腳本,這里需要指定用戶名、密

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論