您好,登錄后才能下訂單哦!
nagios監控_落英繽紛
作為系統運維工程師,最擔心的不是系統出現什么故障,而是不能在第一時間獲知系統出現故障或宕機了,尤其是遇到節假日,系統管理員就很緊張。要改變這種被動的局面,這里我以網絡監控軟件Nagios為例來介紹一下軟件的的配置及使用,并將郵件報警融合進來以實現服務器故障時即時通知管理員。 雖然Nagios十分受用,但配置起來確是麻煩,基于這樣的原因,我將盡可能詳細地向大家講述我用Nagios的過程以及心得,希望對初學者有所幫助。下面以Centos 5.4 為例來部署 安裝所需軟件 一、解決安裝Nagios的依賴關系: Nagios基本組件的運行依賴于httpd、gcc和gd。可以通過以下命令來檢查nagios所依賴的rpm包是否已經完全安裝: # yum -y install httpd gcc glibc glibc-common gd gd-devel php php-mysql mysql mysql-server 此外,要想完整的安裝關運行本文中所描述的環境,您得準備一個功能完備的LAMP運行環境。 說明:以上軟件包您也可以通過編譯源代碼的方式安裝,只是后面許多要用到的相關文件的路徑等需要按照您的源代碼安裝時的配置逐一修改。此外,您還得按需啟動必要的服務,如httpd,mysqld等。 二、創建一個名為nagios的帳號并給定登錄口令 # /usr/sbin/useradd nagios # passwd nagios 創建一個用戶組名為nagcmd用于從Web接口執行外部命令。將nagios用戶和apache用戶都加到這個組中。 # /usr/sbin/groupadd nagcmd # /usr/sbin/usermod -G nagcmd nagios # /usr/sbin/usermod -G nagcmd apache 把apache加入到nagcmd組,以便于在通過web Interface操作nagios時能夠具有足夠的權限. 三、編譯安裝nagios: # tar zxf nagios-3.3.1.tar.gz # cd nagios # ./configure --with-command-group=nagcmd --enable-event-broker # make all # make install # make install-init # make install-config # make install-commandmode 說明: 第一步執行make install安裝主要的程序、CGI及HTML文件, 第二步執行make install-init的步驟,它的作用是把nagios做成一個運行腳本,使nagios隨系統開機啟動,這是一個很方便的措施。 第三步執行 make install-config 把配置文件的例子復制到nagios的安裝目錄。 第四步執行 make install-commandmode 給外部命令訪問nagios配置文件的權限。 nagios檢查 #ls /usr/local/nagios/ =================== bin etc sbin share var #看到這5個目錄就ok了 安裝完后 查看一下在/usr/local/nagios下是否存在etc、bin、 sbin、 share、 var這五個目錄,如果存在則可以表明程序被正確的安裝到系統了。這5個目錄的作用是:
為email指定您想用來接收nagios警告信息的郵件地址,默認是本機的nagios用戶: # vi /usr/local/nagios/etc/objects/contacts.cfg email nagios@localhost #這個是默認設置 我的: email 159XXXX7742@139.com 在httpd的配置文件目錄(conf.d)中創建Nagios的Web程序配置文件: # make install-webconf 創建一個登錄nagios web程序的用戶,這個用戶帳號在以后通過web登錄nagios認證時所用: # htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin 以上過程配置結束以后需要重新啟動httpd: # service httpd restart 將nagios的信息加到apache中,打開vi /usr/httpd/conf/httpd.conf(這個是我的apache安裝配置文件的路徑)文件,在文件最后添加如下代碼: ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin <Directory "/usr/local/nagios/sbin"> Options ExecCGI AllowOverride None Order allow,deny Allow from all AuthName "Nagios Access" AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user </Directory> Alias /nagios /usr/local/nagios/share <Directory "/usr/local/nagios/share"> Options None AllowOverride None Order allow,deny Allow from all AuthName "Nagios Access" AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user </Directory> 四、編譯、安裝nagios-plugins nagios的所有監控工作都是通過插件完成的,因此,在啟動nagios之前還需要為其安裝官方提供的插件。 # tar zxf nagios-plugins-1.4.13.tar.gz # cd nagios-plugins-1.4.13 # ./configure --with-nagios-user=nagios --with-nagios-group=nagios # make # make install 五、配置并啟動Nagios 啟動nagios服務 Nagios的基礎平臺和插件都安裝完成之后,下一步就是啟動nagios的服務了。不要著急,在啟動之前,我們還要做點準備工作。 準備各種配置文件。還記得在基礎系統安裝的時候,敲過這樣一個命令吧:make install-config 。這個命令的作用是生成配置文件的樣式文件。你可以在 nagios/etc/ 目錄下找到這些文件,其名字類似commands.cfg-sample 。我們首先要做的就是將這些文件變成我們初始的配置文件。 #cp nagios.cfg-sample nagios.cfg #cp commands.cfg-sample commands.cfg #cp cgi.cfg-sample cgi.cfg #cp localhost.cfg-sample localhost.cfg 總之,就是把那些sample去掉,讓它們真正的上崗。最后,我們修改cgi.cfg文件: use_authentication=1 (默認) default_user_name=nagios authorized_for_system_information=nagiosadmin,nagios authorized_for_configuration_information=nagiosadmin,nagios authorized_for_system_commands=nagiosadmin,nagios authorized_for_all_services=nagiosadmin,nagios authorized_for_all_hosts=nagiosadmin,nagios authorized_for_all_service_commands=nagiosadmin,nagios authorized_for_all_host_commands=nagiosadmin,nagios 我是用nagios這個名字做為默認用戶的,所以在上述幾個配置項中,我都在最后添加了這個用戶。 (1)把nagios添加為系統服務并將之加入到自動啟動服務隊列: # chkconfig --add nagios # chkconfig nagios on (2)檢查其主配置文件的語法是否正確: # /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 如果沒有問題的話,會有如下顯示: Total Warnings: 0 Total Errors: 0 (3)如果上面的語法檢查沒有問題,接下來就可以正式啟動nagios服務了: # /etc/rc.d/init.d/nagios start (4)配置selinux 如果您的系統開啟了selinux服務,則默認為拒絕nagios web cgi程序的運行。您可以通過下面的命令來檢查您的系統是否開啟了selinux: #getenforce 如果上面命令的結果顯示開啟了selinux服務,您可以通過下面的命令暫時性的將其關閉: #setenforce 0 如果您想在以后完全關閉selinux,可以通過編輯/etc/sysconfig/selinux文件,將其中的selinux后面的值“force”修改為“disable”即可。 不關閉SELinux或是永久性變更它的方法是讓CGI模塊在SELinux下指定強制目標模式: # chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ # chcon -R -t httpd_sys_content_t /usr/local/nagios/share/ (5)通過web界面查看nagios: http://your_nagios_IP/nagios |
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。