CentOS 6.8下利用Rsyslog+LogAnalyzer+MySQL部署日誌伺服器
一、簡介
LogAnalyzer 是一款syslog日誌和其他網路事件資料的Web前端。它提供了對日誌的簡單瀏覽、搜尋、基本分析和一些圖表報告的功能。資料可以從資料庫或一般的syslog文字檔案中獲取,所以LogAnalyzer不需要改變現有的記錄架構。基於當前的日誌資料,它可以處理syslog日誌訊息,Windows事件日誌記錄,支援故障排除,使使用者能夠快速查詢日誌資料中看出問題的解決方案。
LogAnalyzer 獲取客戶端日誌會有兩種儲存模式,一種是直接讀取客戶端/var/log/目錄下的日誌並儲存到服務端該目錄下,一種是讀取後儲存到日誌伺服器資料庫中,推薦使用後者。
LogAnalyzer 採用php開發,所以日誌伺服器需要php的執行環境,本文采用LAMP。
二、系統環境
Rsyslog Server OS:CentOS 6.8
Rsyslog Server IP:192.168.1.107
Rsyslog 版本:rsyslog-5.8.10-8.el6.i686
LogAnalyzer 版本:LogAnalyzer 3.6.5 (v3-stable)
LAMP 版本:httpd-2.2.15-30.el6.centos.i686 + mysql-5.1.73-3.el6_5.i686 + php-5.3.3-27.el6_5.i686
防火牆已關閉/iptables: Firewall is not running.
SELINUX=disabled
Rsyslog Client OS:RHEL 6.4
Rsyslog Client IP:192.168.1.108
三、安裝並設定LAMP環境
3.1 安裝LAMP環境
# yum -y install httpd mysql* php*
3.2 啟動服務並加入開機啟動
啟動Apache
# /etc/init.d/httpd start
# chkconfig httpd on
啟動資料庫
# /etc/init.d/mysqld start
# chkconfig mysqld on
3.3 設定MySQL root 密碼
# mysqladmin -uroot password 'abc123'
3.4 測試php執行環境
# cd /var/www/html/
[root@TS html]# cat > index.php <<EOF
> <?php
> phpinfo();
> ?>
> EOF
開啟瀏覽器訪問:http://192.168.1.107/index.php
LAMP環境配置完畢。
四、檢查並安裝伺服器端軟體
4.1 檢查是否安裝了rsyslog軟體
# rpm -qa|grep rsyslog //預設系統都安裝了該軟體
4.2 安裝rsyslog 連線MySQL資料庫的模組
# yum install rsyslog-mysql –y
rsyslog-mysql 為rsyslog 將日誌傳送到MySQL 資料庫的一個模組,這裡必須安裝。
五、配置伺服器端
5.1 匯入rsyslog-mysql 資料庫檔案
# cd /usr/share/doc/rsyslog-mysql-5.8.10/
# mysql -uroot -pabc123 < createDB.sql
檢視做了哪些操作
# mysql -uroot –p
mysql> show databases;
mysql> show tables;
匯入資料庫操作建立了Syslog 庫並在該庫中建立了兩張空表SystemEvents 和SystemEventsProperties。
5.2 建立rsyslog 使用者在mysql下的相關許可權
# mysql -uroot –p
mysql> grant all on Syslog.* to rsyslog@localhost identified by '123456';
mysql> flush privileges;
mysql> exit
5.3 配置服務端支援rsyslog-mysql 模組,並開啟UDP服務埠獲取網內其他LINUX系統日誌
# vi /etc/rsyslog.conf
$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog,123456
在 #### MODULES #### 下新增上面兩行。
說明:localhost 表示本地主機,Syslog 為資料庫名,rsyslog 為資料庫的使用者,123456為該使用者密碼。
5.4 開啟相關日誌模組
# vi /etc/rsyslog.conf
$ModLoad immark #immark是模組名,支援日誌標記
$ModLoad imudp #imupd是模組名,支援udp協議
$UDPServerRun 514 #允許514埠接收使用UDP和TCP協議轉發過來的日誌
5.5 重啟rsyslog 服務
# /etc/init.d/rsyslog restart
六、配置客戶端
6.1 檢查rsyslog 是否安裝
# rpm -qa|grep rsyslog
6.2 配置rsyslog 客戶端傳送本地日誌到服務端
# vi /etc/rsyslog.conf
*.* @192.168.1.107
行尾新增上面這行內容,即客戶端將本地日誌傳送到伺服器。
6.3 重啟rsyslog 服務
# /etc/init.d/rsyslog restart
6.4 編輯/etc/bashrc,將客戶端執行的所有命令寫入系統日誌/var/log/messages中。
# vi /etc/bashrc
在檔案尾部增加一行
export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'
設定其生效
# source /etc/bashrc
客戶端配置完畢。
七、測試Rsyslog Server是否可以正常接受Client端日誌
Client 端測試:
Server 端偵測:
說明接收正常,包括你重啟機器的一些Log都可以檢視到。
八、安裝LogAnalyzer
# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz
# tar zxf loganalyzer-3.6.5.tar.gz
# cd loganalyzer-3.6.5
# mkdir -p /var/www/html/loganalyzer
# rsync -a src/* /var/www/html/loganalyzer/
九、在瀏覽器安裝嚮導中安裝LogAnalyzer
9.1 開啟瀏覽器訪問:http://192.168.1.107/loganalyzer/
提示沒有配置檔案,點選 here 利用嚮導生成。
9.2 第一步,測試系統環境
點選 “Next”,進入第二步。
提示錯誤:缺少config.php 檔案,並且許可權要設定為666,可以使用contrib目錄下的configure.sh 指令碼生成。
檢視configure.sh 檔案內容
需要在/var/www/html/loganalyzer/ 下建立config.php 檔案,並設定其許可權為666。
# touch /var/www/html/loganalyzer/config.php
# chmod 666 /var/www/html/loganalyzer/config.php
做完上面的操作之後,執行 ReCheck 操作,config.php 檔案可寫,點選 Next 進入下一步。
9.3 第三步,基礎配置
在User Database Options 中,填入上面設定的引數,然後點選 Next.
9.4 第四步,建立表
點選 Next 開始建立表。
9.5 第五步,檢查SQL結果
9.6 第六步,建立管理使用者
9.7 第七步,建立第一個系統日誌source.
9.8 第八步,完成
十、測試
LogAnalyzer 首頁
點選任何一條記錄,檢視詳情。
檢視Statistics
登入測試
在Admin Center 裡可以進行一些系統設定。
Rsyslog + LogAnalyzer 日誌伺服器部署完畢。
相關文章
- Centos部署Loki日誌聚合系統CentOSLoki
- 最新Centos7.6 部署ELK日誌分析系統CentOS
- [日誌分析篇]-利用ELK分析jumpserver日誌-日誌拆分篇Server
- 日誌伺服器伺服器
- 雲伺服器centOS如何部署php伺服器CentOSPHP
- 部署Sentry日誌監控系統
- 利用 ELK 處理 Percona 審計日誌
- 利用binlog日誌恢復mysql資料MySql
- 利用DNS日誌進行MySQL盲注DNSMySql
- 通過helm部署EFK收集應用日誌,ingress-nginx日誌解析。應用日誌Nginx
- linux伺服器部署SpringBoot專案並檢視專案執行日誌Linux伺服器Spring Boot
- 日誌伺服器搭建之多伺服器日誌轉發與格式化處理伺服器
- Dell伺服器匯出日誌伺服器
- 如何利用NLog輸出結構化日誌,並在Kibana優雅分析日誌?
- ELK 日誌分析系統 ----------- 部署ElasticSearch群集Elasticsearch
- 利用oracle的日誌挖掘實現回滾Oracle
- Centos7下ELK+Redis日誌分析平臺的叢集環境部署記錄CentOSRedis
- centos7.9伺服器部署nginx1.27.0CentOS伺服器Nginx
- 利用uWSGI和nginx進行伺服器部署Nginx伺服器
- Hybris伺服器啟動日誌分析伺服器
- shell在手分析伺服器日誌不愁?伺服器
- Netweaver和CloudFoundry的伺服器日誌Cloud伺服器
- 爬蟲日誌監控 -- Elastc Stack(ELK)部署爬蟲AST
- GoAccess 開源日誌輕工具部署與分析Go
- Docker Compose部署 EFK(Elasticsearch + Fluentd + Kibana)收集日誌DockerElasticsearch
- 利用ELK搭建Docker容器化應用日誌中心Docker應用日誌
- Git 伺服器 利用 hook 實現自動部署Git伺服器Hook
- CentOS 7.0下nginx實現每天定時分割日誌CentOSNginx
- docker筆記48-部署EFK日誌系統Docker筆記
- 使用Docker快速部署ELK分析Nginx日誌實踐DockerNginx
- thinkphp 利用中介軟體 實現日誌操作記錄PHP
- Syslogserver(日誌伺服器) 安裝和使用GseServer伺服器
- Linux伺服器日誌備份到本地Linux伺服器
- 雲伺服器IIS7伺服器日誌分析方法伺服器
- Centos下部署NTP時間伺服器同步環境CentOS伺服器
- CentOS7配置中文支援與部署GitLab伺服器CentOSGitlab伺服器
- 日誌分析-apache日誌分析Apache
- 利用 Laravel 中介軟體給後臺加個操作日誌Laravel
- DM7使用dmrestore工具利用歸檔日誌還原REST