Linux日誌伺服器
Linux 下的rsyslog有向遠端傳送日誌的功能,出於安全和審計需要,可以將伺服器的日誌集中起來管理。加上圖形化的日誌分析工具,我們可以很直觀的發現日誌中的問題,配合常規的監控系統,以實現基於日誌的顆粒化運維。
日誌伺服器的運作機制大致是這樣的:
1、客戶端將日誌傳送到伺服器,服務端的日誌裡於是出現了客戶端的日誌
2、服務端將日誌匯入mysql,通過php程式進行日誌分析並顯示在網頁上。
環境:CentOS 6.3 x64
服務端:loganalyzer.test.org 192.168.1.249
客戶端:apache01.test.org 192.168.1.21
一、配置基本的日誌伺服器
1、在服務端開啟接收日誌選項,編輯/etc/rsyslog.conf,取消下面兩行註釋:
$ModLoad imtcp $InputTCPServerRun 514
這會讓rsyslog監聽本地tcp 514埠,請注意iptables防火牆要開啟該埠。
同理,如果需要監聽udp 514埠,則啟用下面這段程式碼
$ModLoad imudp $UDPServerRun 514
2、在客戶端修改開啟傳送日誌選項,編輯/etc/rsyslog.conf ,在行末新增如下內容:
*.* @@192.168.1.249
也可以寫域名,但是為了減少依賴和服務的可靠性,建議使用IP地址。
全部日誌傳送的話,感覺有很多垃圾,比如cron日誌,可以選擇性的傳送一些日誌
*.info;mail.none;cron.none @@192.168.1.249
注意:上面有兩個@,如果服務端採用udp協議,則只需要一個@
1
*.* @192.168.1.249
tcp更穩定可靠,udp更快速高效, 請根據需要選擇。
3、重啟rsyslog服務
/etc/init.d/rsyslog restart
不出意外,在服務端應該就可以看到客戶端的日誌了。
二、在服務端配置loganalyzer
1、安裝LAMP
yum -y install httpd mysql-server php php-mysql php-gd php-xml php-xmlrpc php-mbstring php-mcrypt php-snmp --enablerepo=epel sed -i `/ServerTokens/{s/OS/Minor/g}` /etc/httpd/conf/httpd.conf sed -i `/ServerSignature/{s/On/Off/g}` /etc/httpd/conf/httpd.conf echo "<?php phpinfo();phpinfo(INFO_MODULES);?>" >/var/www/html/index.php sed -i `/;date.timezone/{s/;//g;s/=/= Asia/Shanghai/g}` /etc/php.ini
2、配置rsyslog-mysql
yum install rsyslog-mysql -y chkconfig --level 2345 mysqld on /etc/init.d/mysqld start mysql_secure_installation
找到 /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql,
匯入資料庫:
# mysql -u root -p </usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
這會建立一個資料庫loganalyzer,和兩個表 SystemEvents / SystemEventsProperties
授予許可權
mysql -u root -p -e "GRANT ALL PRIVILEGES ON loganalyzer.* TO rsyslog@localhost IDENTIFIED BY `rsyslogpassword`;" mysql -u root -p -e "flush privileges;"
編輯/etc/rsyslog.conf
在檔案末尾新增兩行讓系統日誌匯入到mysql中去
$ModLoad MySQL *.* >127.0.0.1,loganalyzer,rsyslog,rsyslogpassword
後面三個字元段的格式是:【資料庫名】【使用者名稱】【密碼】,之間用逗號分開
重啟服務
/etc/init.d/rsyslog restart
配置檢查
tail /var/log/message 是否有資料庫連線報錯
登入mysql,檢查Syslog資料庫中的SystemEvents是否依然為空
# mysql -u root -p -e "select * from loganalyzer.SystemEvents;"
3、配置loganalyzer第一、二、三步直接next,然後跳到第七步,選擇下列值(注意大小寫!!)
第八步,完成配置
如果不幸配置失敗,可以清空檔案config.php來重新配置loganalyerzer 。
相關文章
- Linux伺服器日誌備份到本地Linux伺服器
- 日誌伺服器伺服器
- Linux日誌Linux
- linux日誌管理Linux
- linux系統伺服器,nginx日誌切割儲存教程。Linux伺服器Nginx
- 日誌伺服器搭建之多伺服器日誌轉發與格式化處理伺服器
- Linux 檢視日誌Linux
- Linux C日誌logLinux
- Linux 日誌管理指南Linux
- Linux 日誌基礎Linux
- linux _壓縮日誌Linux
- linux基礎日誌Linux
- 常用伺服器日誌分析命令伺服器
- Dell伺服器匯出日誌伺服器
- Linux伺服器常見的日誌檔案儲存位置!Linux伺服器
- 『學了就忘』Linux日誌管理 — 92、日誌輪替Linux
- Linux伺服器日誌過大有什麼影響?如何應對?Linux伺服器
- Linux-ELK日誌收集Linux
- linux查詢日誌技巧Linux
- Linux 日誌終極指南Linux
- Linux日誌系統(一)Linux
- Linux下的重要日誌Linux
- linux 分享日誌指令碼Linux指令碼
- linux的日誌檔案Linux
- linux日誌管理(三)(轉)Linux
- Linux日誌搜尋 grepLinux
- RHEL 6.5 搭建Rsyslog日誌伺服器和Loganalyzer日誌分析工具伺服器
- Hybris伺服器啟動日誌分析伺服器
- shell在手分析伺服器日誌不愁?伺服器
- 日誌記錄 PHP下往linux目錄下寫日誌PHPLinux
- 『學了就忘』Linux日誌管理 — 93、日誌輪替補充Linux
- 如何在 Linux 中管理日誌Linux
- Linux日誌服務初識Linux
- Linux動態列印kernel日誌Linux
- linux日誌檔案說明Linux
- LINUX檢視系統日誌Linux
- Linux 日誌分析命令詳解Linux
- Linux日誌管理詳解(轉)Linux