參考文檔: 本文簡單介紹smokeping的安裝配置操作。 一.環境 1. OS Server:10.11.4.250/CentOS-7-x86_64-1511 2. Smokeping版本 smokeping-2.6.11:http://oss.oetiker.ch/smokeping/pub/s ...
參考文檔:
- 官網:http://oss.oetiker.ch/smokeping/
- 參考:http://jaminzhang.github.io/monitoring/smokeping-deploy-practice/#top15
本文簡單介紹smokeping的安裝配置操作。
一.環境
1. OS
Server:10.11.4.250/CentOS-7-x86_64-1511
2. Smokeping版本
smokeping-2.6.11:http://oss.oetiker.ch/smokeping/pub/smokeping-2.6.11.tar.gz
二.安裝Smokeping
1. 安裝EPEL
#epel版本有可能變更,變更後不一定能下載 [root@smokeping ~]# rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm [root@smokeping ~]# yum install foo -y
2. 安裝依賴&環境
#其中本人遇到的問題有,未預安裝"wqy*"導致中文顯示的問題;沒有預安裝"perl-Sys-Syslog",在"gmake install"階段有報錯 [root@smokeping ~]# yum install -y rrdtool wqy* fping echoping curl bind-utils httpd httpd-devel perl perl-FCGI perl-CGI perl-CGI-SpeedyCGI perl-CGI-SpeedyCGI perl-libwww-perl perl-Socket6 perl-Net-Telnet perl-Net-OpenSSH perl-Net-DNS perl-LDAP perl-IO-Socket-SSL perl-ExtUtils-MakeMaker rrdtool-perl perl-Sys-Syslog perl-RadiusPerl perl-Time-HiRes perl-RRD-Simple libxml2-devel libpng-devel glib pango pango-devel freetype freetype-devel fontconfig cairo cairo-devel libart_lgpl libart_lgpl-devel mod_fastcgi
3. 編譯安裝
#請註意在configure前需要先build相應的perl模塊,否則有報錯。 [root@smokeping ~]# cd /usr/local/src/ [root@smokeping src]# wget http://oss.oetiker.ch/smokeping/pub/smokeping-2.6.11.tar.gz [root@smokeping src]# tar -zxvf smokeping-2.6.11.tar.gz [root@smokeping src]# cd smokeping-2.6.11 [root@smokeping smokeping-2.6.11]# ./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty [root@smokeping smokeping-2.6.11]# ./configure --prefix=/usr/local/smokeping [root@smokeping smokeping-2.6.11]# gmake install
三.配置Smokeping
1. config文件配置
#創建程式運行相關目錄並賦權 [root@smokeping smokeping-2.6.11]# cd /usr/local/smokeping/ [root@smokeping smokeping]# mkdir var cache data [root@smokeping smokeping]# chown apache:apache var/ cache/ data/ #生成cgi文件與config文件 [root@smokeping smokeping]# cp /usr/local/smokeping/htdocs/smokeping.fcgi.dist /usr/local/smokeping/htdocs/smokeping.fcgi [root@smokeping smokeping]# cp /usr/local/smokeping/etc/config.dist /usr/local/smokeping/etc/config
1)General配置
#修改 cgiurl,General及Alerts等是config文件多個section之一 [root@smokeping smokeping]# sed -i 's|some.url|10.11.4.250|g' /usr/local/smokeping/etc/config
2)Alerts配置
#someloss部分註釋預設配置,重設監測機制 [root@smokeping smokeping]# vim /usr/local/smokeping/etc/config +someloss type = loss # in percent #pattern = >0%,*12*,>0%,*12*,>0% #comment = loss 3 times in a row pattern = ==0%,>2%,>2%,>2% comment = 每次發出60個包,連續3次輪詢檢查丟包率在2%以上 #新增rtt監測機制 +rttdetect type = rtt # in milliseconds pattern = <55,<55,<55,>55,>55,>55 comment = 每次發出60個包,連續3次輪詢檢查延時超過55毫秒
3)Database配置
# 預設300秒 ping 20次,修改為120秒 ping 30次 [root@smokeping smokeping]# sed -i 's|step = 300|step = 120|g' /usr/local/smokeping/etc/config [root@smokeping smokeping]# sed -i 's|pings = 20|pings = 30|g' /usr/local/smokeping/etc/config
4)Presentation配置
#在presentation下添加utf-8中文字元集 *** Presentation *** charset = utf-8 #在presentation下detail部分,註釋預設歷史數據展示時間,重設數值 + detail width = 600 height = 200 unison_tolerance = 2 #"Last 3 Hours" 3h #"Last 30 Hours" 30h #"Last 10 Days" 10d #"Last 400 Days" 400d "Last 10 Minutes" 10m "Last 30 Minutes" 30m "Last 4 Hours" 4h "Last 12 Hours" 12h "Last 1 Days" 24h "Last 3 Days" 3d "Last 1 Weeks" 7d "Last 1 Mouths" 30d "Last Half years" 180d "Last 1 years" 365d
2. 修改賬號文件許可權
#修改密碼文件許可權為root只讀 [root@smokeping smokeping]# chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist
3. Apache配置
#設置登錄賬戶及密碼 [root@smokeping smokeping]# htpasswd -c /usr/local/smokeping/htdocs/htpasswd mcloudadmin New password: Re-type new password: #httpd文件配置,在“DocumentRoot "/var/www/html"”段下新增smokeping相關配置,請註意路徑等強相關設置的前後一致性 [root@smokeping smokeping]# vim /etc/httpd/conf/httpd.conf DocumentRoot "/var/www/html" Alias /cache "/usr/local/smokeping/cache/" Alias /cropper "/usr/local/smokeping/htdocs/cropper/" Alias /smokeping "/usr/local/smokeping/htdocs/smokeping.fcgi" <Directory "/usr/local/smokeping"> AllowOverride None Options All AddHandler cgi-script .fcgi .cgi Order allow,deny Allow from all AuthName "Smokeping" AuthType Basic AuthUserFile /usr/local/smokeping/htdocs/htpasswd Require valid-user DirectoryIndex smokeping.fcgi </Directory>
4. 設置iptables
[root@smokeping smokeping]# vim /etc/sysconfig/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT [root@smokeping smokeping]# service iptables restart
5. 設置開機啟動
[root@smokeping smokeping]# echo "/usr/local/smokeping/bin/smokeping &">> /etc/rc.local
四.添加Smokeping監控點
1. 註意事項
添加smokeping監控點本質上還是修改config文件,主要修改"Targets"章節。
註意事項:
- 監控點不能在web前端添加,只能通過後臺config文件添加;
- 配置文件:/usr/local/smokeping/etc/config;
- 修改config文件後,服務必須重啟;
- 監控節點可以分目錄層級,+為第一級目錄,++為第二級目錄,+++為第三級目錄,依次類推,可以發現config文件的其他章節也是採用這樣的層級目錄形式;
- 層級目錄必須採用英文描述;
- 根據目錄層級,在/usr/local/smokeping/data/目錄下生成相應目錄及子目錄文件夾。
2. 配置示例
#以下是一個簡單的兩層目錄層級配置示例: [root@smokeping smokeping]# vim /usr/local/smokeping/etc/config *** Targets *** probe = FPing menu = Top title = 網路質量監測系統 remark = SmokePing.<br> \ 您在這裡可以觀察到網路質量. + IDC menu = IDC網路質量 title = 網路質量監控統計 ++ All_Monitor menu = 網路質量總圖 title = 網路質量總圖 host = /IDC/CoreSwitch /IDC/AccessSwitch ++ CoreSwitch menu = 監控點至核心 title = 監控點至核心 alerts = someloss host = 10.10.24.1 ++ AccessSwitch menu = 監控點至接入 title = 監控點至接入 alerts = someloss host = 10.11.4.1
五.驗證
1. 啟動服務
[root@smokeping ~]# systemctl start httpd [root@smokeping ~]# /usr/local/smokeping/bin/smokeping &
2. URL登陸
URL登錄:http://10.11.4.250/smokeping
輸入前文設置的apache賬號/密碼登錄,即可登錄smokeping控制台。
1)HomePage
可以看到,登錄賬號為前文設置的mcloudadmin,首頁及左側目錄都是在config文件的"Targets"章節做的設置。
2)目錄層級
3)歷史數據展示時間
在config文件Presentation章節的detail部分設置。
4)監測取樣點
在config文件Database章節。