rsyslog基于mysql的日志集中存儲,及loganalyzer日志分析工具的web配置
Rsyslog是Linux系統自帶的一款強大的日志系統,在業務量不是很大的情況下,能夠滿足大部分客戶的日志分類搜集功能,是廣大運維同事進行系統監控、分析不可或缺的利器。而在運維自動化高速發展的今天,如果我們還要“人工”智能的去每一個服務器上查看系統日志就顯得太LOW了,并且,對我們來說也是一個不小的負擔。
基于此,我們就簡單的來介紹一下,rsyslog結合mysql數據庫基于CS架構下的日志集中存儲,以及web界面日志分析工具loganalyzer的基礎配置。為了更清晰的展示其工作原理,這里采用rsyslog客戶端、rsyslog服務器、mysql服務器、loganalyzer客戶端四臺機器進行配置。
一、mysql服務器的配置。
安裝mysql-server(centos5/6),或者mariadb-server(centos7)。本文默認全部采用CentOS7.2系統。
yum install -y mariadb-server
啟動mariadb服務:
systemctl start mariadb
查看3306端口是否監聽:
ss -ntl
安裝rsyslog-mysql軟件包,會生成兩個文件
/usr/lib64/rsyslog/ommysql.so
/usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
使用mysql命令初始化rsyslog數據庫
mysql -uUSER -hHOST -pPASSWORD < /usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
登錄到mariadb服務器,使用show databases命令可以查看到多了一個Syslog數據庫。
使用GRANT命令授權rsyslog服務器對Syslog數據庫具有讀寫權限,這里簡化操作,我們授予全部權限,具體生成環境可根據具體情況授予滿足需求的最小權限。
GRANT ALL ON Syslog.* to 'user'@'SYSLOG_SERVER_IP' IDENTIFIED BY 'password'
至此,mysql服務器的配置已經完成。當然為了后續我們配置loganalyzer方便,我們需要授權loganalyzer服務器對數據具有相應的權限。
GRANT ALL ON Syslog.* to 'user'@'LOGANALYZER_SERVER_IP' IDENTIFIED BY 'password'
二、Rsyslog服務器的配置
安裝rsyslog-mysql軟件包,或將mysql服務器中的/usr/lib64/rsyslog/ommysql.so文件copy到本地對應路徑。
修改/etc/rsyslog.conf配置文件
啟用響應的udp或tcp模塊,并開啟514端口監聽
$ModLoad imudp
$UDPServerRun 514
或
$ModLoad imtcp
$InputTCPServerRun 514
啟用mysql模塊,并配置響應的日志級別,將日志輸出信息保存至mysql服務器的Syslog數據庫
$ModLoad ommysql // MODULES段
FACILITY.PRIORITY :ommysql:MYSQL_SERVER_IP,Syslog_DB,USER,PASS
查看514端口是否監聽
ss -ntul
重新啟動rsyslog服務
systemctl restart rsyslog
至此rsyslog服務器也配置完成
三、配置rsyslog客戶端
客戶端的配置,僅需修改/etc/rsyslog.conf文件,將相應的日志信息保存位置設置為遠程的rsyslog服務器即可
FACILITY.PRIORITY @RSYSLOG_SERVER_IP
重啟rsyslog服務即完成配置
systemctl restart rsyslog
至此,即完成了基于mysql即rsyslog的日志分布式集中存儲管理配置。
四、基于web界面的日志管理分析工具loganalyzer的配置
雖然上面已經完成了日志系統的配置,但當日志信息量較大時,對于日志信息的分析、查詢需要直接操作mysql數據庫,這就顯得比較麻煩了。不過有一款web界面化的日志分析管理工具loganalyzer會給我們帶來諸多便利。
LogAnalyzer 是一款syslog日志和其他網絡事件數據的Web前端。它提供了對日志的簡單瀏覽、搜索、基本分析和一些圖形化的圖表報告功能。數據可以從數據庫或一般的syslog文本文件中獲取。logAnalyzer采用php開發,所以日志服務器需要php的運行環境,所以我們需要配置帶GD庫的PHP環境(我們這里以LAMP為例)。
這里我們在相應的web服務器上安裝php軟件包,及相關組件
yum install -y php php-mysql php-gd httpd
下載loganalyzer源碼包,并解壓縮
將程序文件復制到web根目錄,并重命名
cp -r loganalyzer-VERSION/src /var/www/html/loganalyzer
創建文件,并修改權限為666
touch config.php
chmod 666 config.php
啟動apache,并訪問loganalyzer。
systemctl start httpd
在瀏覽器中訪問http://WEB_SERVER/loganalyzer,根據提示進行程序的安裝設置,并進行數據庫的配置,如下圖
安裝完成后的顯示界面如下圖所示: