日志信息通常對于我們維護人員有著極為重要的意義,能夠為我們提供故障排查、運維監控、歷史操作記錄等等很多必要的信息。為了方便此類信息的獲取,我們可以搭建日志服務器,并實現webGUI顯示以便更直觀形象的觀察收集它們。
一、拓撲圖
二、實驗環境
1、主機A:
操作系統:CentOS-6.5-x86_64
ip地址:192.168.5.237
啟用程序:ryslog、php、apache、mysql、loganalyzer
角色:rsyslog服務器端
2、主機B:
操作系統:CentOS-6.5-x86_64
IP地址:192.168.5.239
啟用程序:rsyslog
角色:rsyslog客戶端
3、主機C:
操作系統:windows 7 64 位旗艦版
IP地址:192.168.5.226
角色:通過瀏覽器安裝以及查看loganalyzer
三、實驗目的
在主機C上配置loganalyzer并能夠通過其查看日志信息。
四、依次做以下配置
(1)、主機A上編輯/etc/rsyslog.conf,啟用日志服務器功能,并驗證。
執行service rsyslog start 啟動rsyslog服務,并確認
(2)、在主機B上開啟rsyslog服務,并編輯/etc/rsyslog.conf,使其日志信息發往主機A,注意,編輯完后,執行service rsyslog restart 應用更改。
在主機B上執行如下操作
# yum -y install zsh
然后查看日志
# tail /var/log/messages
我們看到并沒有日志信息,只是顯示日志信息已發出。
到主機A上查看
已收到客戶端發來的客戶端信息
(3)、配置主機A,將服務器端收到的日志信息導出到mysql數據庫。
編輯rsyslog配置文件,使之能夠將日志信息導出到數據庫中(本文中,訪問數據庫的用戶定義:user:syslog passwd:syslogpass)
安裝mysql以及rsyslog支持mysql所用的軟件
# yum -y install mysql //安裝mysql
# yum -y install rsyslog-mysql //安裝mysql support支持
利用rsyslog-mysql 安裝時生成的腳本來創建數據庫相關信息
查看該腳本文件
# mysql < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
查看數據庫創建信息
創建rsyslog訪問數據庫Syslog的用戶信息
到主機B上執行yum -y reinstall csh,查看數據庫中屬否有新記錄日志信息。
(4)、配置LAMP環境
安裝相應軟件并啟動
# yum -y install php php-mysql httpd php-gd \\php-gd支持web頁面中的圖形顯示
# chkconfig httpd on
# service httpd start
編輯httpd的主頁并測試
# vim /var/www/html/index.php
測試如下:
展開loganalyzer至當前目錄,拷貝解壓后所得目錄中的./loganalyzer/src/目錄下的所有文件到apache根目錄下的syslog中
# mkdir /var/www/html/syslog
# cp ~/loganalyzer-3.6.5/src/* /var/www/html/syslog/
# chown -R apache:apache /var/www/html/syslog //修改該目錄下所有文件的屬組屬主為apache
# cp ~/loganalyzer-3.6.5/contrib/{configure.sh,secure.sh} /var/www/html/syslog/
# chmod +x /var/www/html/syslog/{configure.sh,secure.sh} //需要執行腳本來生成配置文件,因此要給它執行權限。
# ./configure.sh //此步驟將會生成config.php文件,用于瀏覽器登陸loganalyzer時實現初始化配置,因此要開放寫權限
# chmod 666 /var/www/html/syslog/config.php
使用瀏覽器訪問loganalyzer,初始化配置
注意:此處配置mysql的信息應與上文一致,本文使用Syslog數據庫,訪問數據庫:用戶名 syslog 密碼 mysqlpass
配置完成后,我們就能直觀查看日志信息了,如下圖:
還可以圖形顯示統計信息
原創文章,作者:Silently,如若轉載,請注明出處:http://www.www58058.com/6202
非常詳盡,還有后續主流工具功能對比嗎?
@stanley:正在研究中 ,謝謝老師鼓勵:shock: