導航:首頁 > 編程系統 > linux搭建nagios

linux搭建nagios

發布時間:2023-08-04 20:36:05

A. linux中安裝了一個插件,這個插件裝完後正常的情況在終端輸入./phpxujh -p pid可查看當前PID的運行情況,

目錄
開始之前
系統環境
監控內容
所需軟體包
CentOS7重要變化
配置開發環境
同步時間
關閉Selinux
使用CRT上傳軟體包
安裝郵件服務
監控主機安裝
常用到的命令
安裝nagios所需要的運行環境
增加用戶
安裝nagios
配置許可權
安裝插件
安裝nrpe
遠程主機安裝
常用到的命令
配置運行環境
安裝nagios-plugin
安裝nrpe
啟動nrpe
監控主機安裝PNP
配置開發環境
安裝pnp4nagios (版本號為0.6)
配置pnp4nagios
圖表展示
問題集合
在首次配置了nagios監控端後,在瀏覽器輸入地址後連接不上
啟動nrpe後卻不能互相通信
安裝pnp4nagios後出現The requested URL /pnp4nagios/graph was not found on this server.
出現「CHECK_NRPE: Error - Could not complete SSL handshake.」的錯誤
執行 ./configure時報錯:configure error cannot find ssl headers
解壓./configure 後,在nagios-4.0.8進行make all報錯
安裝nrpe時執行.configure出錯
錯誤:perfdata directory "/usr/local/pnp4nagios/var/perfdata/" is empty
開始之前
聲明:本文中的命令都經過了測試,但難免有所紕漏,如果你發現命令粘貼後運行有錯,可能是由於符號的格式(尤其是破折號)導致的,此時你應該自己手打一遍命令。對於本文中發現的錯誤和建議,請發送郵件給我:
[email protected],請在郵件主題里註明「關於nagios的問題(建議)」。
--------------------------------------分割線 --------------------------------------
在Ubuntu下配置Mrtg監控Nginx和伺服器系統資源 http://www.linuxidc.com/Linux/2013-08/88417.htm
使用 snmp+Mrtg 監控 Linux 系統 http://www.linuxidc.com/Linux/2012-11/73561.htm
Mrtg伺服器搭建(監控網路流量) http://www.linuxidc.com/Linux/2012-07/64315.htm
網路監控器Nagios全攻略 http://www.linuxidc.com/Linux/2013-07/87067.htm
Nagios搭建與配置詳解 http://www.linuxidc.com/Linux/2013-05/84848.htm
Nginx環境下構建Nagios監控平台 http://www.linuxidc.com/Linux/2011-07/38112.htm
在RHEL5.3上配置基本的Nagios系統(使用Nagios-3.1.2) http://www.linuxidc.com/Linux/2011-07/38129.htm
CentOS 5.5+Nginx+Nagios監控端和被控端安裝配置指南 http://www.linuxidc.com/Linux/2011-09/44018.htm
Ubuntu 13.10 Server 安裝 Nagios Core 網路監控運用 http://www.linuxidc.com/Linux/2013-11/93047.htm
--------------------------------------分割線 --------------------------------------
系統環境
一共3台機器,全都按照CentOS7最小化模式安裝系統
系統版本號
[root@localhost ~]# cat /etc/RedHat-release
CentOS Linux release 7.0.1406 (Core)
監控主機
(一台)
IP地址:192.168.1.204
主機名稱:nagios_server_204
遠程主機
(兩台)
IP地址:192.168.1.112
主機名稱:nagios_slave_112
IP地址:192.168.1.113
主機名稱:nagios_slave_113
分區情況
安裝時使用默認分區(使用 df 命令來查看)
[root@localhost ~]# df -h
監控內容
要監控的服務
監控命令
cpu負載
(check_linux_state.pl -C)
當前用戶登錄數量
(check_users)
磁碟使用情況
(check_disk)
總進程數
(check_procs)
內存使用情況
(check_linux_stats.pl -M)
負載均衡
(check_load)
磁碟IO
(check_linux_stats.pl -I)
網路流量
(check_linux_stats.pl -N)
打開的文件數量
(check_linux_stats.pl -F)
socket連接數
(check_linux_stats.pl -S)
進程使用的內存和CPU
(check_linux_stats.pl -T)
指定的網站是否可連接
(check_http)
系統在線時長
(check_uptime)
所需軟體包
監控主機
軟體包
下載地址
nagios-4.0.8.tar.gz
請到我的github地址里下載:
https://github.com/Kylinlin/install_nagios_automatically/tree/master/nagios_tools_for_server
註明:我的github項目install_nagios_automatically是一個一鍵自動化安裝nagios的項目(能運行,但還在完善中)
nagios-plugins-2.0.3.tar.gz
nrpe-2.15.tar.gz
pnp4nagios-0.6.25.tar.gz
Sys-Statistics-Linux-0.66.tar.gz
libxml2-2.7.1.tar.gz
遠程主機
軟體包
下載地址
nagios-plugins-2.0.3.tar.gz
請到我的github地址里下載:
https://github.com/Kylinlin/install_nagios_automatically/tree/master/nagios_tools_for_client
nrpe-2.15.tar.gz
Sys-Statistics-Linux-0.66.tar.gz
Centos7重要變化
Centos7相比較以前的Centos有一些涉及到常用命令的變化,如果不事先了解,會在使用命令的時候造成巨大的困擾
Centos7默認沒有ifconfig和netstat兩個命令了,ip addr命令代替了ifconfig,只要安裝上net-tools包就可以繼續使用ifconfig和netstat兩個命令了
systemctl命令的出現(systemctl可以看作是service和chkconfig的組合),雖然仍然可以使用以前的命令,但是會重定向到新的命令中,下面以http服務為例
job
以前的系統
CentOS7
服務開機啟動
chkconfig --level 3 httpd on
systemctl enable httpd.service
服務不開機啟動
chkconfig --level 3 httpd off
systemctl disable httpd
服務狀態
service httpd status
systemctl status httpd
所有服務的啟動狀態
chkconfig --list
systemctl
啟動服務
service httpd start
systemctl start httpd.service
停止服務
service httpd stop
systemctl stop httpd.service
重啟服務
service httpd restart
systemctl restart httpd.service
配置開發環境
同步時間
把監控系統里的所有機器都同步一次網路時間(非常重要)
[root@localhost ~]timedatectl #該命令用來檢查當前時間和時區
如果發現所有機器的時區不一致,此時就要使用命令
[root@localhost ~]timedatectl list-timezones #該命令列出了所有的時區
[root@localhost ~]timedatectl set-timezone Asia/Shanghai #該命令把時區設置為上海
ntpdate time.nist.gov #該命令同步網路當前的時間
如果提示沒有ntpdate命令,則安裝ntp,並且配置系統自動更新時間
[root@localhost ~]# yum install ntp -y
[root@localhost ~]# /usr/sbin/ntpdate time.nist.gov
[root@localhost ~]# echo '#time sync'>>/var/spool/cron/root
[root@localhost ~]# echo '*/10**** /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1'>>/var/spool/cron/root
關閉Selinux
不關閉selinux可能會導致一些難以察覺的錯誤,為了保險起見,首先關閉selinux:
[root@localhost ~]vi /etc/selinux/config

重啟機器
檢查selinux是否關閉:
[root@localhost ~]getenforce #如果顯示enforcing則沒有關閉
使用SecureCRT上傳軟體包
我在這里使用的SSH連接工具是SecureCRT7.2,通過這個工具上傳文件到Linux的步驟如下:
1. 首先在Linux中安裝傳送文件命令:
[root@localhost ~] yum install lrzsz -y
2. 然後在Linux中跳轉到/usr/local/src目錄下
[root@localhost ~] cd /usr/local/src
3. 運行CRT的傳送文件命令

安裝郵件服務
因為郵件報警服務需要安裝mail功能
[root@localhost ~]yum install –y mailx
[root@localhost ~]yum install –y sendmail
[root@localhost ~]systemctl restart sendmail.service
[root@localhost ~]mail –s Test [email protected](你的郵箱地址)
#此時進入輸入模式,輸入完郵件內容後按ctrl + d退出並且發送
監控主機安裝
常用到的命令
命令內容
命令格式
檢查nagios的配置文件是否有錯
/etc/init.d/nagios checkconfig
或者
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
啟動nagios
systemctl start nagios.service
或者
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
修改了nagios的配置文件後重新載入配置文件
/etc/init
安裝nagios所需要的運行環境
[root@localhost ~]# yum install gcc glibc glibc-common -y
[root@localhost ~]# yum install php php-gd perl -y
[root@localhost ~]# yum install httpd gd gd-devel openssl openssl-devel -y
[root@localhost ~]# systemctl enable httpd.service #設置CentOS開機啟動服務
增加用戶
[root@localhost ~]useradd -m nagios
並將nagios以及apache用戶加入到nagcmd組中
[root@localhost ~]groupadd nagcmd
[root@localhost ~]usermod -G nagcmd nagios
[root@localhost ~]usermod -a -G nagcmd apache #把apace用戶添加到與nagios的一個組(apache用戶會在安裝apache時自動創建)
安裝nagios
[root@localhost src]# tar -zxvf nagios-4.0.8.tar.gz
[root@localhost src]# cd nagios-4.0.8
首先初始化和建立編譯的環境
[root@localhost nagios-4.0.8]#./configure --with-command-group=nagcmd
如果能看到下面的基本配置信息則說明初始的環境已經成功配置完成:
之後按照提示執行命令來進行編譯:
[root@localhost nagios-4.0.8]# make all
[root@localhost nagios-4.0.8]# make install
[root@localhost nagios-4.0.8]# make install-init
[root@localhost nagios-4.0.8]# make install-config
[root@localhost nagios-4.0.8]# make install-commandmode
[root@localhost nagios-4.0.8]# make install-webconf
安裝完成之後,在/usr/local/nagios目錄下如果能夠看到這些目錄:
就表示Naigos安裝成功了。
Nagios的樣例配置文件默認安裝在/usr/local/nagios/etc目錄下,配置這些文件就可以使得nagios按要求運行(詳細的配置過程請參考我的另一篇博文:nagios服務配置詳解)
此時應該為email指定您想用來接收nagios警告信息的郵件地址,默認是本機的nagios用戶:
[root@localhost]# vi /usr/local/nagios/etc/objects/contacts.cfg
email nagios@localhost #把描紅的地方修改為你的email地址
創建一個登錄nagios web程序的用戶(用戶名配置為nagiosadmin則不需要配置許可權,設置為其他用戶名就要配置許可權),我在這里把用戶名設置為kylinlin,密碼為123456,這個用戶帳號在以後通過web登錄nagios認證時所用:
[root@localhost ~]# htpasswd -bc /usr/local/nagios/etc/htpasswd.users kylinlin 123456 #把描紅的地方修改為你的用戶名和密碼
配置許可權
如果在上面創建登陸nagios web程序的用戶名不是nagiosadmin(我在上面已經設置為kylinlin),在登陸nagios的web界面後(此時我們還不能登錄,但如果你忽略了這一小節的配置,那麼在後面的登陸中就會看到如下的界面),點擊Hosts或Services會顯示圖片紅色的錯誤提示

是因為nagios默認把全部的許可權給nagiosadmin,所以可以通過修改cgi.cfg文件賦予kylinlin許可權,切換到/usr/local/nagios/etc目錄下
[root@localhost etc]# sed -i 's#nagiosadmin#kylinlin#g' cgi.cfg #這條命令將nagiosadmin用戶名替換為kylinlin
[root@localhost etc]# grep kylinlin cgi.cfg #這條命令檢查是否修改成功

以上過程配置結束以後需要重新啟動httpd:
[root@localhost etc]# systemctl restart httpd.service
檢查其主配置文件的語法是否正確:
[root@localhost etc]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
或者使用下面這個命令來檢查語法
[root@localhost etc]# /etc/init.d/nagios checkconfig

顯示錯誤數為0才正確
配置成功
安裝插件
剛才已經提到Nagios主程序只是一個控制中心,而能夠起到服務監測和系統監測等功能的是眾多Nagios的插件,沒有插件的Nagios系統其實只是一個空殼。因此在安裝了Nagios平台之後我們還需要安裝插件。
Nagios插件同樣是在其官方網站下載,目前版本是1.4.15。我將下載的源碼包放到/usr/local目錄下,按照下面的步驟進行解壓,編譯和安裝:
[root@localhost src]# tar zxf nagios-plugins-2.0.3.tar.gz
[root@localhost src]# cd nagios-plugins-2.0.3
[root@localhost nagios-plugins-2.0.3]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
[root@localhost nagios-plugins-2.0.3]#make
[root@localhost nagios-plugins-2.0.3]#make install
通過下面的命令查看安裝了多少個插件
[root@localhost nagios-plugins-2.0.3]#ls /usr/local/nagios/libexec/|wc -l
然後把Nagios加入到服務列表中以使之在系統啟動時自動啟動:
[root@localhost nagios-plugins-2.0.3]# chkconfig --add nagios
[root@localhost nagios-plugins-2.0.3]# chkconfig nagios on
執行下面的命令來驗證Nagios的樣例配置文件:
[root@localhost ~]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

B. jenkins怎麼監控linux性能

jenkins 不能監控linux性能,jenkins是分布式調用的軟體,可以定時執行任務,可以按要求順序執行腳本,但是本身不帶監控性能的功能,如果要監控linux的性能,應該用nagios。

nagios監控linux性能伺服器搭建詳解:
配置安裝環境-----搭建apache+php環境
首先需要先創建一個名為nagios的帳號並給定登錄口令,並創建一個用戶組名為nagcmd用於從Web介面訪問。將nagios用戶和apache用戶都加到這個組中
現在開始解壓安裝nagios源碼包。注意的是安裝一定要注意不要出先erro否則後面排錯的時候會非常的頭痛哦
配置WEB介面:在上一步中安裝了一個配置文件nagios.conf到了/etc/httpd/conf.d/目錄下,打開此文件,能看到裡面實際是定義了兩個別名。並設置了基於帳號的頁面訪問控制。
對應的應該創建一個的用戶用於Nagios的WEB介面登錄。記住設置好的登錄口令,一會兒會用到它。之後需要重啟apache .
簡單的配置nagios,讓它可以監控安裝了nagios程序的SERVER,也就是本機。nagios被安裝在了在/usr/local/nagios目錄下,可以看到如下命令bin------ 有一個重要的nagios命令,用於檢查nagios主配置文件nagios.cfg是否有語法等錯誤,libexec 此目錄下存放所有用於監控的命令(要安裝nagios-plugins插件才會有這些命令)share 此目錄就是上面WEB介面訪問的站點目錄,var 存放啟動nagios後的相關文件
安裝nagios 插件,解壓後編譯安裝
安裝插件完成後,會產生很多類似check_http的監控命令到/usr/local/nagios/libexec目錄下。
啟動nagios 服務。把Nagios加入到服務列表中以使之在系統啟動時自動啟動# chkconfig --add nagios # chkconfig nagios on驗證Nagios的樣例配置文件(只有此步正常,你才去啟動服務)/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg如果沒有報錯,可以啟動Nagios服務# service nagios start
登錄WEB介面,現在可以從WEB方式來接入Nagios的WEB介面了,需要在提示下輸入用戶名(nagiosadmin)和口令,剛剛設置的,這里用系統默認安裝的瀏覽器,用下面這個超鏈接http://localhost/nagios/ 點擊「服務詳情」的引導超鏈來查看本機的監視詳情。可能需要給點時間讓Nagios來檢測機器上所依賴的服務因為檢測需要些時間。
NRPE的安裝配置:
NRPE是nagios的一個擴展,它被用於被監控的伺服器上,向nagios監控平台提供該伺服器的一些本地的情況。例如,cpu負載、內存使用、硬碟使用等等。
1)需要在nagios監控平台伺服器上安裝NRPE
# tar xzf nrpe-2.8.1.tar.gz
# cd nrpe-2.8.1
# ./configure && make all && make install-plugin
如果安裝成功,就可以在/.../nagios/libexec 目錄中找到 "check_nrpe"這個插件。之後需要定義一個可以在監控平台使用的命令,這個定義一般在/.../nagios/etc/commands.cfg中,其內容如下:在commands.cfg加入:
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
這樣就可以在定義服務的時候使用這個命令了,舉個例子:
define service{
host_name remotehost
service_description CPU Load
...
check_command check_nrpe!check_load }
這個例子就定義了對remotehost伺服器cpu負載情況的監控。

2)如何在被監控伺服器上安裝NRPE。
首先,需要准備的包有兩個:NRPE和nagios-plugin。首先安裝插件:
# /usr/sbin/useradd nagios
# passwd nagios
# tar xzf nagios-plugins-1.4.9.tar.gz
# cd nagios-plugins-1.4.9
# ./configure --prefix=/usr/local/nagios && make && make install
# chown nagios.nagios /usr/local/nagios/
# chown -R nagios.nagios /usr/local/nagios/libexec/
然後安裝NRPE:
tar xzf nrpe-2.8.1.tar.gz
cd nrpe-2.8.1
./configure &&make all&&make install-plugin&&make install-daemon
&& make install-daemon-config
安裝好了,可以到/usr/local/nagios/下面檢查一下,應該生成了4個目錄:bin、etc、libexec、share。之後我們要配置 一下,目的是讓NRPE可以以守護進程的形式監聽5666埠,為特定地址的nagios平台提供服務。
首先,需要修改/usr/local/nagios/etc/nrpe.cof。
找到「allowed_hosts=127.0.0.1」將其改為:allowed_hosts=127.0.0.1,$Nagios監控平台的地址或域名
3)啟動NRPE守護進程:(可以將此命令加入/etc/rc.local,以便開機自動啟動)
# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
此命令生成的日誌會在系統的日誌(/var/log/message)中。如果沒有出錯,就基本搞定了。驗收一下,在本機上:# /usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 或者在nagios監控平台伺服器上:
# /usr/local/nagios/libexec/check_nrpe -H $目標主機地址
正常的返回值為被監控伺服器上安裝的NRPE的版本信息:
NRPE v2.8.1
如果看到這些,NRPE安裝成功了。
那麼,通過NRPE,可以監控到哪些信息呢? 只要在被監控伺服器上有的插件(/usr/local/nagios/libexec中的所有插件),都可以使用。也就是說,你想監控什麼,只要有對應的插件,就可以實現。
在被監控端的 nrpe.cfg 文件中,可以看到這樣的配置:
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
這是用來檢查 CPU 負載的。

C. linux Nagios 啟動不起來是怎麼回事

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 這條命令,查看哪裡配置錯了,路徑有可能不對,你對應上就行了

D. linux常用安裝軟體的命令

一、在線安裝
1、軟體管理中心安裝。(ubuntu)1)更新源sudo apt-get update2)打開軟體中心,搜索你要安裝的軟體,雙擊安裝即可。例如安裝apache,如下圖
2、命令行安裝方式
1)更新,命令:apt-get update
2)查找你要安裝的軟體,apt-cache search 「軟體名」
3)apt-get install 軟體名
以上在線的兩種方式都提到了apt-get 方式,那麼它的工作原理簡單說明一下,apt-get相關的有兩個重要文件:1、是/etc/sources.list,2、是/var/lib/apt/lists/目錄.
當我們執行apt-get update程序分析sources.list看這個文件里是否有對應的Packages/Sources/Release列表文件,如果有更新則下載之,存入/var/lib/apt/lists/目錄(其實就是保持與當前系統版本軟體源表最新);apt-get install 安裝相應的包 ,下載並安裝。
這種方式的好處在於:如果你想要載入的應用需要依賴另一個應用程序才能正常工作,apt-get會幫你找到並載入所需的程序庫或應用代碼,這種方式是比較常用的的。比如我們執行apt-get install mysql-server,可以看到相關的依賴包(如圖)
二、線下安裝
之所以叫線下的安裝方式,也就是說你要把軟體下載到本地去安裝。一般我們下載的文件後綴名都是zip、tar.gz等壓縮包,解壓後會看到rpm、bin、deb、run之類擴展名文件。很多軟體都會提供不同LINUX版本的安裝格式,你可以根據自己的系統下載不同擴展名的軟體。
1、rpm安裝包:這時一款老牌的安裝格式,是紅帽創建的安裝格式,現在已成為一種標准,常用在opensuse/turbo/redhat版本),安裝方法rpm -ivh 軟體名.rpm (如果只是安裝一個i參數就夠了,如果還要看安裝進度和軟體信息就加個vh)
2、deb安裝包:DEB是Debian軟體包格式的文件擴展名,常用在centos/ubuntu,在蘋果系統里也常見此安裝方式。安裝方法:dpkg -i 軟體名.deb
3、run安裝包:以QT(一種編程工具)的安裝文件為例,
1)授權: chmod x qt-unified-linux-x64-2.0.2-2-online.run
2)執行:./qt-unified-linux-x64-2.0.2-2-online.run即可安裝。
4、bin安裝包:bin包是一個自解壓格式的安裝包,要想執行它,需要先賦予它可執行的許可權。
(以安裝jdk為例)# chmod x jdk-6u21-linux-i586.bin# ./jdk-6u21-linux-i586.bin
5、編譯後安裝方式:
舉例安裝nagios插件(nagios是一種開源的監控軟體,需要多種插件支持監控模塊)
1)cd /tmp/nagios-plugins-* //先進入目錄
2)./configure --with-nagios-user=nagios --with-nagios-group=nagios // 配置,即安裝的用戶安裝的路徑都可在此設置,這一步一般用來生成 Makefile,為下一步的編譯做准備
3)make //編譯過程如果 在 make 過程中出現 error ,你就要記下錯誤代碼,缺少什麼包就按照什麼包。
4) make install //如果make無問題就可以直接安裝了。
這種安裝方法的好處是你可以自定義安裝路徑、安裝賬號等參數,常見開源平台下載的源碼安裝方式。
6、其它,還有一些軟體解壓後生成的文件夾內包含很多文件,一般文件夾內有install.sh、setup.py等安裝文件方式,此種方式類似windows的exe安裝方式,你需要先授權該文件的可執行許可權,在執行安裝。以上基本上囊括了所有的Linux環境下的軟體安裝方式,供各位參考。

E. linux 上nagios登陸上去但是打不開網頁(我就是剛安裝好登陸一下,還沒有配置監視主機等)

應該是沒有來許可權的問題,在啟源動nagios之前需要創建用戶,而新創建的用戶必須和cgi.cfg文件中authorized_for_****這些配置項中的用戶名稱一樣,這通常是因為你創建的用戶名稱不一致造成。
創建用戶命令:htpasswd -c /etc/nagios/htpasswd.users nagiosadmin(一般默認好像是這個,你自己看看)
有問題可以咨詢

閱讀全文

與linux搭建nagios相關的資料

熱點內容
macbookpro如何修改文件內容 瀏覽:965
java穩定排序 瀏覽:53
oppo文件管理的圖片 瀏覽:335
plc編程步數怎麼計算 瀏覽:142
ipad看電腦文件 瀏覽:935
成都製作pdf文件 瀏覽:735
怎麼樣點開電腦裡面的網路連接 瀏覽:755
微信怎麼退出賬號 瀏覽:32
w微信開發者工具 瀏覽:325
資料庫還原附加 瀏覽:713
打包成exe執行文件 瀏覽:652
信豐營銷app有哪些 瀏覽:463
蘋果文件下載項如何下載 瀏覽:179
ps摳婚紗教程 瀏覽:203
如何在移動硬碟上隱藏文件夾 瀏覽:451
瑞虎8老車機怎麼刷app 瀏覽:992
學ui設計要學java嗎 瀏覽:275
淘寶票房數據源怎麼調整 瀏覽:470
iphone5s升級ios卡黑屏 瀏覽:622
u盤沒用的文件刪不了怎麼辦 瀏覽:561

友情鏈接