nagios監控工具
創新互聯是一家專注于網站建設、網站設計與策劃設計,左云網站建設哪家好?創新互聯做網站,專注于網站建設10年,網設計領域的專業建站公司;建站業務涵蓋:左云等地區。左云做網站價格咨詢:18982081108
Nagios是一款開源的計算機系統和網絡監視工具,能有效的監控windows,linux和unix的主機狀態,在系統和服務器狀態異常的時候發送電子郵件或短信報警,第一時間通知網站運維成員,在狀態恢復后發出正常的電子郵件或短信通知。
Nagios四種監控狀態:
v 0(OK)表示狀態正常/綠色
v 1(WARNING)表示出現警告/×××
v 2(CRITICAL)表示出現非常嚴重的錯誤/紅色
v 3(UNKNOWN)表示未知錯誤/深×××
Nagios通過NRPE插件來遠程管理服務。
Nagios配置思想:
要監控那臺主機,監控主機上那些服務,我要在什么時間段內做監控,當被監控端出現故障時我要給那個聯系人發送郵件通知。
Nagios配置文件路徑:/usr/local/nagios/etc/
Nagios的配置文件解析:
v Nagios.cfg:主配置文件,定義其他配置文件存放位置
v Hostgroups.cfg:主機組配置文件,定義主機組
v Contacts.cfg:聯系人配置文件,定義聯系人和聯系人組
v Commands.cfg:命令配置文件,定義使用那些命令做監控
v Timeperiods.cfg:時間段配置文件,定義在那個時間范圍做監控
v Templates.cfg:模板文件,用于資源引用
v Localhost.cfg:本地主機配置文件,用于監控本地
部署nagios監控系統:
v 關閉防火墻
#iptbles -F
#setenforce 0
v 創建nagios運行用戶和組,創建安裝目錄,授權目錄
#useradd -s /sbin/nologin nagios
#mkdir /usr/local/nagios
#chown -R nagios.nagios /usr/local/nagios
v 編譯安裝nagios軟件
#tar xzvf nagios-4.0.1.tar.gz
#cd agios-4.0.1
#./configure --prefix=/usr/local/nagios
#make all
#make install
#make install-init
#make install-commandmode
#make install-config
#chkconfig --add nagios
#chkconfig nagios on
v 安裝nagios-plugins插件
#tar xzvf nagios-plugins-1.5.tar.gz
#cd nagios-plugins-1.5
#./configure --prefix=/usr/local/nagios
#make && make install
v 安裝NRPE插件
#yum -y install openssl-devel
#tar xzvf nrpe-2.15.tar.gz
#cd nrpe-2.15
#./configure
#make all
#make install-plugin
v 安裝配置apche和PHP
#yum -y install httpd php
#vim /etc/httpd/conf/httpd.conf
添加相關內容:Nagios的web頁面需要經過授權才可以訪問所以!
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>
#service httpd restart
v 創建web頁面的用戶為nagiosadm密碼為nagiosadm
# /usr/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadm
v 配置nagios系統
#vim /usr/local/nagios/etc/nagios.cfg
添加參數:
cfg_dir=/usr/local/nagios/etc/conf 指定主機文件目錄
cfg_file=/usr/local/nagios/etc/objects/hostgroups.cfg 指定主機組文件位置
#mkdir /usr/local/nagios/etc/conf/ 創建目錄
# cp localhost.cfg /usr/local/nagios/etc/conf/192.168.254.129.cfg 拷貝主機文件
#vim /usr/local/nagios/etc/conf/192.168.254.129.cfg 主機文件
修改內容:
define host{ 被監控主機
use linux-server 調用模板參數
host_name web 主機名
alias web 別名
address 192.168.254.129 被控主機地址
}
define service{ 被監控主機服務
use local-service 調用模板參數
host_name web 主機名
service_description PING 服務描述
check_command check_ping!100.0,20%!500.0,60% 使用的命令
}
#vim /usr/local/nagios/etc/objects/hostgroups.cfg
define hostgroup{ 被監控主機組
hostgroup_name webs 主機組名
alias webs 主機組別名
members web 成員主機(調用主機)
}
#vim /usr/local/nagios/etc/objects/templates.cfg 模板文件
define host{
name generic-host 模板名(主機)
notifications_enabled 1 通告開關
event_handler_enabled 1 事件處理開關
flap_detection_enabled 1 移動檢測開關
process_perf_data 1 過程性能數據開關
retain_status_information 1 保持狀態信息開關
retain_nonstatus_information 1 保持無狀態信息開關
notification_period 24x7 通告周期(調用時間)
register 0 不注冊
}
define service{
name generic-service 模板名(服務)
active_checks_enabled 1 存活檢查開關
passive_checks_enabled 1 被動檢查開關
parallelize_check 1 并行化檢查開關
obsess_over_service 1 癡迷服務開關
check_freshness 0 檢查新的服務開關
notifications_enabled 1 通告開關
event_handler_enabled 1 事件處理開關
flap_detection_enabled 1 移動監測開關
process_perf_data 1 過程性能數據開關
retain_status_information 1 保持狀態信息開關
retain_nonstatus_information 1 保持無狀態信息開關
is_volatile 0 服務是否不穩定
check_period 24x7 檢查周期(調用時間)
max_check_attempts 3 最大檢查嘗試時間(分鐘)
normal_check_interval 10 正常檢查間隔(分鐘)
retry_check_interval 2 重試檢查間隔(分鐘)
contact_groups admins 聯系人組(調用聯系人)
notification_options w,u,c,r 通告告警級別
notification_interval 60 通告間隔(分鐘)
notification_period 24x7 通告周期(調用時間)
register 0 不注冊
}
define contact{
name generic-contact 模板名(聯系人)
service_notification_period 24x7 服務通告周期(調用時間)
host_notification_period 24x7 主機通告周期(調用時間)
service_notification_options w,u,c,r,f,s 服務告警級別
host_notification_options d,u,r,f,s 主機在什么狀態下發送通知
service_notification_commands notify-service-by-email服務發送通知郵箱(調用命令)
host_notification_commands notify-host-by-email 主機發送通知郵箱(調用命令)
register 0 不注冊
}
define host{
name linux-server 模板名(主機)
use generic-host 調用了模板中的參數
check_period 24x7 檢查周期(調用時間)
check_interval 5 檢查間隔(分鐘)
retry_interval 1 重試間隔(分鐘)
max_check_attempts 10 最大嘗試時間(分鐘)
check_command check-host-alive 檢查命令(調用命令)
notification_period workhours 通告周期(調用時間)
notification_interval 120 通告間隔(分鐘)
notification_options d,u,r 主機在什么狀態下發送通知
contact_groups admins 聯系人組(調用聯系人)
register 0 不注冊
}
define service{
name local-service 模板名(服務)
use generic-service 調用模板中的參數
max_check_attempts 4 最大檢查嘗試時間(分鐘)
normal_check_interval 5 正常檢查間隔(分鐘)
retry_check_interval 1 重試檢查間隔(分鐘)
register 0 不注冊
}
#vim /usr/local/nagios/etc/objects/timeperiods.cfg 時間文件
define timeperiod{
timeperiod_name 24x7 定義時間段名
alias 24 Hours A Day, 7 Days A Week 定義時間別名
sunday 00:00-24:00 星期天
monday 00:00-24:00 星期一
tuesday 00:00-24:00 星期二
wednesday 00:00-24:00 星期三
thursday 00:00-24:00 星期四
friday 00:00-24:00 星期五
saturday 00:00-24:00 星期六
}
define timeperiod{
timeperiod_name workhours 定義時間段名
alias Normal Work Hours 定義時間別名
monday 09:00-17:00 星期一
tuesday 09:00-17:00 星期二
wednesday 09:00-17:00 星期三
thursday 09:00-17:00 星期四
friday 09:00-17:00 星期五
}
#vim /usr/local/nagios/etc/objects/contacts.cfg 聯系人文件
define contact{
contact_name nagiosadmin 聯系人名
use generic-contact 調用模板
alias Nagios Admin 別名
email 867218859@qq.com 郵箱地址
}
define contactgroup{
contactgroup_name admins 聯系人組
alias Nagios Administrators 聯系人組別名
members nagiosadmin 成員
}
注釋:上面的是詳細的配置文件詳解
配置nagios文件經驗:
對于全新的nagios只需要根據需求
定義主機文件:要監控那臺主機,該主機上用命令監控那些服務
定義聯系人:要給那個聯系人發送通知,指定郵箱地址
定義時間段:在那個時間段發送通知
即可完成配置
check_ping!100.0,20%!500.0,60%意思是:使用check_ping命令檢測中,如果延遲延遲>=100或丟包率超過20%則觸發warning警告,如果延遲>=500,或丟包率超過60%,則觸發critical警告;否則不觸發警告。‘!’表示分割,‘,’表示或者
告警級別:w:warning警告 u:unknown未知錯誤 c:critical嚴重錯誤
主機狀態:d:down關機 u:unreachable不可達 r:recovery恢復
v 關閉身份驗證
#vim /usr/local/nagios/etc/cgi.cfg
修改內容:
Use-authentication = 0
v 部署被控端
# yum -y install openssl openssl-devel
#useradd nagios -s /sbin/nologin
#mkdir /usr/local/nagios
#tar xzvf nagios-plugins-1.5.tar.gz
# cd nagios-plugins-1.5
#./configure --prefix=/usr/local/nagios
#make && make install
#tar xzvf nrpe-2.15.tar.gz
#cd nrpe-2.15
#./configure --prefix=/usr/local/nagios
#make all && make install-plugin && make install-daemon && make install-daemon-config
#vim /usr/local/nagios/etc/nrpe.cfg
添加相關內容:指定監控服務器
allowed_hosts=127.0.0.1,192.168.254.128
commond[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
commond[check_load]=/usr/local/nagios/libexc/check_load -w 15,10,5 -c 30,25,20
# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d 啟動nrpe服務
# netstat -lnupt | grep 5666 nrpe服務端口
v 監控端測試nrpe是否正常
# /usr/local/nagios/libexec/check_nrpe -H 192.168.254.129
v 重啟服務
# service nagios restart
Linux使用Sendmail發送郵件:
# yum -y install sendmail postfix mailx
# systemctl restart sendmail
發送郵件的方式:
# echo ‘內容’| mail -s‘主題’ 郵箱地址
# mail -v867218859@qq.com
>主題:
>內容:
按快捷方式Ctrl+D。
Linux使用外部IMAP郵箱身份發送郵件方式:
郵箱協議:
SMTP:用于郵件的發送 端口號:25
POP3:用于接收郵件 端口號:110
IMAP:網絡郵箱協議,用于郵件在線傳輸。
# yum -y install mailx
# vim /etc/mail.rc
添加相關參數:
set from=13590163240@163.com
set imap=imap.163.com
set imap-auth=login
set imap-auth-user=13590163240@163.com
set imap-auth-password=xyz110110
發送郵件的方式:
# echo ‘內容’| mail -s‘主題’ 郵箱地址
# mail -v867218859@qq.com
>主題:
>內容:
按快捷方式Ctrl+D。
解決mail郵件不能發送問題
報錯信息 | 解決方法 |
#Cat /var/log/maillog DSN: Service unavailable | 更換hostname: 1.編輯/etc/sysconfig/network,更改hostname 2.把hostname寫入/etc/hosts 3.執行hostnamewww.a.com臨時修改 |
當前名稱:50.nagios監控工具
本文地址:http://vcdvsql.cn/article36/pphgpg.html
成都網站建設公司_創新互聯,為您提供網站設計、App開發、小程序開發、標簽優化、域名注冊、做網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯