部署rsyslog+loganalyzerLog Service器

來源:互聯網
上載者:User

標籤:rsyslog+loganalyzer   Log Service器   

一、簡要說明 

    日誌記錄了對伺服器系統的一切操作,因此,對伺服器日誌的管理,是我們每個營運人員每天的必要工作,也是評估伺服器安全狀況的有效手段之一,可是如何管理眾多伺服器的日誌?如果要是一台一台看的話,怕是不止盯的眼花繚亂,累也的累壞了。

    所以,我們要搭建一台Log Service器,要把所有伺服器的日誌通通存到這台遠程Log Service器上來,這樣,不僅可以集中管理、評估各伺服器的安全狀況,還可以減少各伺服器的磁碟佔用率。

    即使所有伺服器的日誌都儲存在一台伺服器上的mysql(也可存到本地磁碟)了,如何管理、分析這些日誌也是一個問題,好在有loganalyzer這個日誌分析工具,它會讓日誌分析變得so easy!

    伺服器說明:192.168.200.106是rsyslogLog Service器,其它伺服器均為rsyslog用戶端

二、部署rsyslog+loganalyzerLog Service器

    我們的首要工作即是配置好rsyslog伺服器,接下來的任務即是部署loganalyzer這個日誌分析工具,這就是一個LAMP,直接yum安裝,配置配置參數就搞定了。但此次,在公司部署的時候,卻碰到幾個問題,導致Log Service器不能正常擷取各伺服器的日誌資料,因此,部署過程中還是需要細心的,下面就進入正題。

1、配置rsyslogLog Service器

(1)安裝軟體包

    因為rsyslog要把日誌存到mysql中,所以要有mysql伺服器,還要有rsyslog設定檔載入串連mysql的模組

[[email protected] ~]# yum -y install rsyslog mysql-server rsyslog-mysql

(2)設定資料庫

[[email protected] ~]# rpm -ql rsyslog-mysql            #首先查看rsyslog-mysql安裝產生了那些檔案/lib64/rsyslog/ommysql.so/usr/share/doc/rsyslog-mysql-5.8.10/usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql   #此sql檔案就是需要匯入到資料庫中的資料檔案#[[email protected] ~]# service mysqld start             #啟動mysqld服務[[email protected] ~]# mysql                            #串連mysqlWelcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.1.73 Source distributionCopyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.mysql> mysql> mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || test               |+--------------------+3 rows in set (0.00 sec)  #此時,只有3個庫#mysql> source /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql;   #匯入rsyslog的資料檔案mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || Syslog             || mysql              || test               |+--------------------+4 rows in set (0.01 sec)mysql> use Syslog;              #Syslog即是記錄記錄檔的資料庫Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> show tables;+------------------------+| Tables_in_Syslog       |+------------------------+| SystemEvents           || SystemEventsProperties |+------------------------+2 rows in set (0.00 sec)##接下來,即是為rsyslog伺服器授權。此處一定是rsyslog伺服器的IP#如果寫成各伺服器的IP,那就錯了mysql> grant all on Syslog.* to ‘syslogroot‘@‘127.0.0.1‘ identified by ‘syslogpass‘;Query OK, 0 rows affected (0.00 sec)mysql> grant all on Syslog.* to ‘syslogroot‘@‘192.168.200.106‘ identified by ‘syslogpass‘;Query OK, 0 rows affected (0.04 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql> \qBye

(3)修改rsyslogLog Service器設定檔

[[email protected] ~]# grep -v "^$" /etc/rsyslog.conf | grep -v "^#"$ModLoad imuxsock$ModLoad imklog$ModLoad imudp            #載入udp的模組$UDPServerRun 514         #允許接收udp 514的連接埠傳來的日誌$ModLoad imtcp            #載入tcp的模組$InputTCPServerRun 514    #允許接收tcp 514的連接埠傳來的日誌$ModLoad ommysql          #載入mysql的模組$ActionFileDefaultTemplateRSYSLOG_TraditionalFileFormat$IncludeConfig /etc/rsyslog.d/*.conf*.*       :ommysql:192.168.200.106,Syslog,syslogroot,syslogpass      #添加此行,所有設施的所有日誌都記錄到此資料庫伺服器的Syslog資料庫中,以syslogroot使用者,syslogpass密碼訪問資料庫local7.*                          /var/log/boot.log$template SpiceTmpl,"%TIMESTAMP%.%TIMESTAMP:::date-subseconds% %syslogtag% %syslogseverity-text%:%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n":programname, startswith, "spice-vdagent"   /var/log/spice-vdagent.log;SpiceTmpl

(4)修改完成後,重啟rsyslog服務

[[email protected] ~]# service rsyslog restartShutting down system logger:                               [  OK  ]Starting system logger:                                    [  OK  ]

2、配置rsyslog用戶端

(1)修改設定檔

[[email protected] ~]# grep -v "^$" /etc/rsyslog.conf | grep -v "^#"$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)$ModLoad imklog   # provides kernel logging support (previously done by rklogd)$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat$IncludeConfig /etc/rsyslog.d/*.conf*.*       @192.168.200.106*.*       :ommysql:192.168.200.106,Syslog,syslogroot,syslogpass$template SpiceTmpl,"%TIMESTAMP%.%TIMESTAMP:::date-subseconds% %syslogtag% %syslogseverity-text%:%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n":programname, startswith, "spice-vdagent"   /var/log/spice-vdagent.log;SpiceTmpl

(2)修改完成後,重啟rsyslog服務

[[email protected] ~]# service rsyslog restartShutting down system logger:                               [  OK  ]Starting system logger:                                    [  OK  ]

驗證用戶端記錄檔的存放

(1)使用logger產生一條日誌資訊

[[email protected] ~]# logger -p info "I‘m mariadb"

(2)在rsyslog伺服器上驗證

[[email protected] ~]# mysqlmysql> use Syslog;mysql> select * from SystemEvents\G*************************** 279. row ***************************                ID: 279        CustomerID: NULL        ReceivedAt: 2014-08-13 20:07:39DeviceReportedTime: 2014-08-13 20:07:40          Facility: 1          Priority: 6          FromHost: mariadb           Message:  I‘m mariadb        #我在做的時候,就是因為第二部的1的(2)中mysql授權時,寫的是用戶端IP,導致這裡擷取不到資料。        NTSeverity: NULL                #因此,在資料庫授權的時候,要授權的是rsyslogLog Service器的IP        Importance: NULL       EventSource: NULL         EventUser: NULL     EventCategory: NULL           EventID: NULL   EventBinaryData: NULL      MaxAvailable: NULL         CurrUsage: NULL          MinUsage: NULL          MaxUsage: NULL        InfoUnitID: 1         SysLogTag: root:      EventLogType: NULL   GenericFileName: NULL          SystemID: NULL         processid:           checksum: 0279 rows in set (0.00 sec)

到這裡,rsyslogLog Service器就部署完成了,但此時日誌處於rsyslogLog Service器的mysql資料庫中,並不方便查看與管理,所以我們再部署一個loganalyzer日誌分析器,來減小日誌管理的複雜度

三、部署loganalyzer日誌分析器

1、安裝LAMP環境

[[email protected] ~]# yum -y install httpd php php-mysql php-gd[[email protected] ~]# mkdir /var/www/html/loganalyzer/mkdir: created directory `/var/www/html/loganalyzer/‘

2、解壓loganalyzer源碼包

[[email protected] ~]# tar xf loganalyzer-3.6.5.tar.gz[[email protected] ~]# cd loganalyzer-3.6.5[[email protected] loganalyzer-3.6.5]# [[email protected] loganalyzer-3.6.5]# lsChangeLog  contrib  COPYING  doc  INSTALL  src[[email protected] loganalyzer-3.6.5]# mv src/* /var/www/html/loganalyzer/          #src下是php的網頁檔案[[email protected] loganalyzer-3.6.5]# ls contrib/configure.sh  secure.sh[[email protected] loganalyzer-3.6.5]# mv contrib/* /var/www/html/loganalyzer/      #contrib目錄下的兩個指令碼,可以開啟看看#[[email protected] loganalyzer-3.6.5]# cd /var/www/html/loganalyzer/[[email protected] loganalyzer]# sh configure.sh                                    #執行指令碼

3、配置httpd

    修改DocumentRoot網頁根目錄

[[email protected] ~]# vim /etc/httpd/conf/httpd.conf DocumentRoot "/var/www/html/loganalyzer"#[[email protected] ~]# service httpd start

4、配置httpd和mysql開機啟動

[[email protected] ~]# chkconfig mysqld on[[email protected] ~]# chkconfig httpd on

5、建立loganalyzer資料庫,並授權

[[email protected] ~]# mysqlEnter password:mysql> create database loganalyzer;Query OK, 1 row affected (0.04 sec)mysql> grant all on loganalyzer.* to [email protected]‘192.168.200.106‘ identified by ‘dianyi123‘;Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)

6、安裝loganalyzer

(1)安裝介面

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/45/D3/wKioL1PsIlfiOLZeAABquvXDTC4299.png" title="1.PNG" alt="wKioL1PsIlfiOLZeAABquvXDTC4299.png" />

(2)step 1

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/45/D2/wKiom1PsIVTTUlnbAADM3WKzmDk997.png" title="2.PNG" alt="wKiom1PsIVTTUlnbAADM3WKzmDk997.png" />

(3)step 2

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/45/D3/wKioL1PsIonz2zexAADqKOiUPOM107.png" title="3.PNG" alt="wKioL1PsIonz2zexAADqKOiUPOM107.png" />

(4)setp 3

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/45/D2/wKiom1PsIYaixqQbAAEZ8AIpcvc759.png" title="4.PNG" alt="wKiom1PsIYaixqQbAAEZ8AIpcvc759.png" />

(5)setp 4

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/45/D3/wKioL1PsIraDnTUFAADZM7ZNkGk359.png" title="5.PNG" alt="wKioL1PsIraDnTUFAADZM7ZNkGk359.png" />

(6)setp 5

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/45/D4/wKioL1PsIs7RkNMTAAKJgP4gbwE940.png" title="6-1.PNG" alt="wKioL1PsIs7RkNMTAAKJgP4gbwE940.png" />

(7)step 6

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/45/D4/wKioL1PsIumTCKMbAAB_sTB70ns683.png" title="7.PNG" alt="wKioL1PsIumTCKMbAAB_sTB70ns683.png" />

(8)setp 7

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/45/D4/wKioL1PsIv_ADEgwAADnh60ziIo232.png" title="8.PNG" alt="wKioL1PsIv_ADEgwAADnh60ziIo232.png" />

(9)setp 8

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/45/D2/wKiom1PsIf3SUHv8AABN8J_yFCY473.png" title="9.PNG" alt="wKiom1PsIf3SUHv8AABN8J_yFCY473.png" />

(10)開始報錯

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/45/D4/wKioL1PsIynRWp_OAAEdNAQ1GfY306.png" title="10-error.PNG" alt="wKioL1PsIynRWp_OAAEdNAQ1GfY306.png" />

排錯階段

1、重新安裝

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/45/D4/wKioL1PsI1XjP7MxAABIUlA92OQ550.png" title="11.PNG" alt="wKioL1PsI1XjP7MxAABIUlA92OQ550.png" />

2、修改表名為正確的表名

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/45/D4/wKioL1PsI2jhZr3gAADcNzodDiY820.png" title="12.PNG" alt="wKioL1PsI2jhZr3gAADcNzodDiY820.png" />

3、安裝完成,enjoy it

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/45/D4/wKioL1PsI4Xzsae8AAJd-IwfiuI760.png" title="13.PNG" alt="wKioL1PsI4Xzsae8AAJd-IwfiuI760.png" />



本文出自 “nmshuishui的部落格” 部落格,請務必保留此出處http://nmshuishui.blog.51cto.com/1850554/1539784

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.