拓撲:
mariadb
192.168.1.200 Centos 7.2
rsyslog服務器
192.168.1.101 主機名爲logmaster,系統爲Centos 6.8
node主機
192.168.1.102 主機名爲node1, 系統爲Centos 6.8
192.168.1.103 主機名爲node2, 系統爲Centos 6.8
httpd主機(用於部署loganalyzer)
192.168.1.202 Centos 7.2
實驗目的:
所有主機將本地的儲存在/log/message相關的日誌發送給rsyslog服務器,並存放在mariadb中
使用loganalyzer查看存放在mariadb中的日誌記錄
loganalyzer只允許logadmin組的成員訪問
一、配置node主機:
在兩臺node主機上做相同操作
cp /etc/rsyslog.conf{,.bak} //先備份
vim /etc/rsyslog.conf //配置rsyslog
service rsyslog restart //重啓rsyslog
二、配置rsyslog服務器:
在192.168.1.101上操作
yum install -y rsyslog-mysql //安裝連接mysql的模塊
head/usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql //查看sql腳本
cp /etc/rsyslog.conf{,.bak} //先備份
vim /etc/rsyslog.conf
service rsyslog restart //重啓rsyslog服務
三、部署mariadb:
192.168.1.200上操作
yum install -y mariadb-server
systemctl start mariadb //啓動服務
mysql //連接數據庫
GRANT ALL ON Syslog.* TO 'logadmin'@'192.168.1.%'IDENTIFIED BY 'logpass';
//授權,要和sql腳本以及rsyslog配置中定義的一致
exit //退出mysql
四、rsyslog連接數據庫:
在rsyslog服務器上操作
yum install -y mysql //安裝mysql客戶端
mysql -h 192.168.1.200-ulogadmin -plogpass < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
//連接數據庫,使用sql腳本創建DataBase和Table
測試
yum install -y tree //在任意node主機上使用yum安裝一個軟件
五、部署loganalyzer
在192.168.1.202上操作
1. 部署lamp
yum install -y httpd php php-mysql php-gd
2. 配置虛擬主機
① 創建組和用戶用於管理日誌
htpasswd -c -m/etc/httpd/conf.d/.htpasswd logadmin1
htpasswd -m/etc/httpd/conf.d/.htpasswd logadmin2 //創建兩個用戶
vim /etc/httpd/conf.d/.htgroup //創建管理組
② 配置虛擬主機
mkdir -p/mydata/www/loganalyzer //創建站點目錄
vim/etc/httpd/conf.d/loganalyzer.conf //配置虛擬主機
systemctl start httpd //啓動httpd服務
測試
vim/mydata/www/loganalyzer/test.php //測試lamp是否可以正常工作
rm -f/mydata/www/loganalyzer/test.php //刪除測試用文件
3. 部署loganalyzer
① 準備源碼包
tar -xzvf loganalyzer-3.6.5.tar.gz
cp -r loganalyzer-3.6.5/src/* /mydata/www/loganalyzer/
cp -r loganalyzer-3.6.5/contrib/*/mydata/www/loganalyzer/
chmod +x /mydata/www/loganalyzer/*.sh
//複製網站文件到虛擬主機目錄,且給腳本文件添加執行權限
bash /mydata/www/loganalyzer/configure.sh
bash /mydata/www/loganalyzer/secure.sh
//執行兩個腳本文件
rm -f /mydata/www/loganalyzer/*.sh //執行後可刪除
chmod 666 /mydata/www/loganalyzer/config.php
//給由腳本生成的配置文件添加權限
② 安裝loganalyzer
注:
1. 可以給每臺node主機安裝rsyslog-mysql以直接連接數據庫,不需要先把日誌傳送給rsyslog服務器
2. 修改hostname後,需要重啓rsyslog才能在日誌中正常顯示主機名
3. httpd2.4貌似不能同時限制客戶端ip地址和登錄賬戶