Atẹle Awọn akọọlẹ olupin ni Akoko-gidi pẹlu Ọpa "Log.io" lori RHEL/CentOS 7/6


Log.io jẹ ohun elo kekere ti o rọrun ṣugbọn ti o munadoko ti a kọ si ori Node.js ati Socket.io , eyiti ngbanilaaye lati ṣe atẹle log awọn olupin Linux awọn faili ni akoko gidi nipasẹ awọn ẹrọ ailorukọ iboju oju opo wẹẹbu.

Ikẹkọ yii yoo ṣe itọsọna fun ọ lori bawo ni o ṣe le fi sori ẹrọ ati atẹle eyikeyi awọn faili log agbegbe ni akoko gidi pẹlu Log.io ti a fi sii lori RHEL/CentOS 7/6.x nipa tito leto Log.io faili harvester lati ṣe atẹle eyikeyi awọn iyipada agbegbe lati wọle awọn faili.

Igbesẹ 1: Ṣafikun Awọn ibi ipamọ Epel

1. Awọn ibi ipamọ CentOS Epel n pese awọn idii alakomeji fun Node.js ati NPM - Awọn modulu Apoti Node . Fi awọn ibi ipamọ Epel sii nipa fifun pipaṣẹ wọnyi.

# yum install http://fedora.mirrors.telekom.ro/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
--------------------- On RHEL/CentOS 6.x - 32 Bit ---------------------
# yum install http://fedora.mirrors.telekom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm

--------------------- On RHEL/CentOS 6.x - 64 Bit ---------------------
# yum install http://fedora.mirrors.telekom.ro/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

2. Lẹhin ti o ti fi kun Epel Repos lori ẹrọ rẹ, ṣe igbesoke eto nipa ṣiṣe pipaṣẹ atẹle.

# yum update

Igbesẹ 2: Fi Node.js ati Awọn idii NPM sii

3. Node.js jẹ pẹpẹ siseto olupin-Javascript eyiti o fun ọ laaye lati ṣẹda awọn ohun elo nẹtiwọọki pẹlu iṣẹ ẹhin. NPM (Oluṣakoso Package Node) jẹ ni adaṣe oluṣakoso package fun Node.js. Nitorinaa, ni igbesẹ ti n tẹle lọ siwaju ki o fi Node.js ati binaries sori ẹrọ sori ẹrọ rẹ nipasẹ oluṣakoso package YUM nipa ipinfunni awọn ofin wọnyi.

# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - 
# yum install -y nodejs

Igbesẹ 3: Fi sori ẹrọ ati Tunto Ohun elo Log.io

4. Log.io ohun elo gbọdọ wa ni fi sori ẹrọ lori eto rẹ nipasẹ NPM nipa sisọ olumulo olumulo agbegbe to wulo, nipasẹ eyiti fifi sori ẹrọ gbọdọ waye. Lakoko ti o le lo eyikeyi olumulo eto to wulo lati fi sori ẹrọ Log.io, Mo funrararẹ ṣeduro fifi sori ohun elo nipasẹ gbongbo olumulo tabi olumulo eto miiran pẹlu awọn anfani ipilẹ.

Idi fun lilo ọna yii ni pe Log.io gbọdọ ni iraye si lati ka awọn faili log ti agbegbe ati olumulo kan pẹlu awọn anfani ti ko ni anfani ni gbongbo igbagbogbo ko le wọle ati ka diẹ ninu awọn faili log pataki.

Nitorinaa, buwolu wọle pẹlu akọọlẹ gbongbo ki o fi ohun elo Log.io sii nipasẹ akọọlẹ gbongbo nipasẹ ipinfunni aṣẹ atẹle (ti o ba lo olumulo miiran rọpo akọọlẹ gbongbo pẹlu olumulo eto rẹ gẹgẹbi).

# npm install -g log.io --user “root”

5. Lẹhin ti a ti fi sii ohun elo yi itọsọna iṣẹ rẹ si folda Log.io , eyiti o farapamọ, ki o ṣe atokọ atokọ kan lati wo oju-iwe akoonu folda lati le tunto ohun elo naa siwaju.

# pwd  		[Make sure you are on the right path]
# cd .log.io/
# ls

6. Bayi o to akoko lati tunto Log.io lati ṣe atẹle awọn faili log agbegbe ni akoko gidi. Jẹ ki a gba inu lori bi Log.io ṣe n ṣiṣẹ.

  1. Awọn oluṣowo faili fun awọn ayipada ninu awọn faili akọọlẹ agbegbe ti a ṣalaye ninu iṣeto rẹ ati firanṣẹ iṣiṣẹ rẹ nipasẹ socket.io TCP
    Ilana eyiti o tun firanṣẹ awọn ifiranṣẹ si olupin agbegbe Log.io tabi olupin latọna jijin miiran ti a ṣalaye pẹlu Adirẹsi IP rẹ (adiresi 0.0.0.0 ti a ṣalaye lori awọn ikede ti awọn olukore si gbogbo awọn olupin igbọran log.io) - faili harvester.conf
  2. Oluṣakoso Log.io sopọ lori gbogbo awọn atọkun nẹtiwọọki (ti ko ba ṣe pàtó bibẹẹkọ ni faili log_server.conf) ati duro de awọn ifiranṣẹ lati agbegbe tabi awọn apa ikore latọna jijin ati firanṣẹ iṣiṣẹ wọn si olupin Wẹẹbu log.io (0.0.0.0 tumọ si pe o n duro de awọn ifiranṣẹ lati eyikeyi agbegbe tabi awọn olukore latọna jijin) faili log_server.conf
  3. Olupin Wẹẹbu Log.io sopọ lori gbogbo awọn atọkun nẹtiwọọki, tẹtisi fun awọn isopọ awọn alabara wẹẹbu lori ibudo 28778 ati awọn ilana ati awọn abajade ti awọn ifiranṣẹ ti o gba ni inu lati olupin log.io - faili web_server.conf

Ṣii akọkọ ṣii faili harvester.conf fun ṣiṣatunkọ, eyiti nipasẹ aiyipada nikan n ṣetọju awọn faili log Apache, ki o rọpo alaye nodeName lati baamu orukọ olupin rẹ ati ṣalaye logStreams awọn alaye pẹlu kini awọn faili log inu ti o fẹ ṣe atẹle (ninu ọran yii Mo n ṣetọju awọn faili log pupọ gẹgẹbi iṣatunwo, awọn ifiranṣẹ ati awọn àkọọlẹ to ni aabo). Lo iyọkuro faili isalẹ bi itọsọna kan.

# nano harvester.conf

Faili olukawe yọ.

exports.config = {
  nodeName: "pxe-server",
  logStreams: {

audit: [
      "/var/log/audit/audit.log"
    ],

messages: [
      "/var/log/messages"
    ],

secure: [
      "/var/log/secure"
    ]

},
  server: {
    host: '0.0.0.0',
    port: 28777
  }
}

Paapaa ti o ko ba nilo iṣujade ti a fi ranṣẹ si olupin latọna jijin Log.io yi ayipada laini ogun lori ọrọ olupin lati firanṣẹ nikan iṣujade rẹ ni agbegbe nipa ṣiṣatunṣe adirẹsi 0.0.0.0 pẹlu adirẹsi loopback ( 127.0.0.1) .

7. Fun awọn idi aabo, ti o ko ba nireti ṣiṣejade awọn ikore latọna jijin si olupin rẹ Log.io ṣii log_server.conf faili ki o rọpo 0.0.0.0 adirẹsi pẹlu adirẹsi loopback ( 127.0.0.1 ).

# nano log_server.conf

8. Awọn ẹya aabo miiran bii ijẹrisi ijẹrisi, HTTPS tabi ihamọ ti o da lori awọn IP si olupin ayelujara Log.io le ṣee lo lori ẹgbẹ olupin wẹẹbu. Fun ikẹkọ yii Emi yoo lo nikan bi odiwọn aabo kan iwọle ijẹrisi.

Nitorinaa, ṣii web_server.conf faili, ṣoki gbogbo alaye auth nipa piparẹ gbogbo awọn iyọkuro ati awọn ami akiyesi ati paarọ olumulo ati kọja awọn itọsọna ni ibamu bi a ṣe daba lori sikirinifoto isalẹ.

# nano web_server.conf

Igbesẹ 4: Ṣafikun Ofin ogiriina ati Ibẹrẹ Log.io Ohun elo

9. Lati le ni iraye si wẹẹbu si olupin Log.io ṣafikun ofin lori RHEL / CentOS 7 Ogiriina lati ṣii TCP 28778 ibudo nipasẹ ipinfunni aṣẹ wọnyi.

# firewall-cmd --add-port=28778/tcp --permanent
# firewall-cmd --reload

Akiyesi: Awọn olumulo 6.x RHEL/CentOS le ṣii ibudo 28778 lori ogiriina iptable.

Igbesẹ 5: Bẹrẹ Ohun elo Log.io ki o tẹ Intanẹẹti Wẹẹbu

10. Lati bẹrẹ Log.io ohun elo ibojuwo idaniloju ni idaniloju pe ilana iṣẹ lọwọlọwọ rẹ jẹ ile gbongbo .log.io ati lo awọn ofin wọnyi ni atẹle atẹle lati bẹrẹ ohun elo.

------------ First start server, put it in background and press Enter key ------------
# log.io-server & 

------------ Start log harvester in background ------------
# log.io-harvester & 

11. Lẹhin ti a ti bẹrẹ olupin naa ṣii ẹrọ aṣawakiri kan, tẹ awọn olupin rẹ IP ti o tẹle pẹlu 28778 nọmba ibudo nipa lilo ilana HTTP lori adirẹsi URL ati iyara ti nbeere awọn ijẹrisi iwọle rẹ yẹ ki o han.

Tẹ olumulo ati ọrọ igbaniwọle rẹ ti o tunto lori igbesẹ 8 lati tẹsiwaju siwaju ati pe Log.io ohun elo yẹ ki o han bayi lori ẹrọ aṣawakiri rẹ ti o n ṣe afihan awọn faili log abojuto ni akoko gidi.

http://192.168.1.20:28778

Lori wiwo oju opo wẹẹbu ṣafikun awọn iboju tuntun ati ṣeto awọn ṣiṣan rẹ tabi awọn apa ni ibamu.

12. Lati da ohun elo Log.io ṣiṣẹ ṣiṣe aṣẹ wọnyi.

# pkill node

Igbesẹ 6: Ṣẹda Log.io Ṣakoso akosile

13. Lati lo aṣẹ kan ti o ṣakoso ohun elo Log.io pẹlu awọn iyipada mẹta ( bẹrẹ , da ati ipo ) ṣẹda iwe afọwọkọ atẹle ti a npè ni log.io lori /usr/agbegbe/bin itọsọna adaṣe ki o fi awọn igbanilaaye ipaniyan si iwe afọwọkọ yii.

# nano /usr/local/bin/log.io
# chmod +x /usr/local/bin/log.io

Ṣafikun iyasọtọ wọnyi si faili faili afọwọkọ yii.

#!/bin/bash

                start() {
                echo "Starting log.io process..."
                /usr/bin/log.io-server &
                /usr/bin/log.io-harvester &
                                         }

                stop() {
                echo "Stopping io-log process..."
                pkill node
                                         }                             

                status() {
                echo "Status io-log process..."
                netstat -tlp | grep node
                                         }

case "$1" in
                start)
start
        ;;
                stop)
stop
        ;;
                status)
status
                ;;
                *)
echo "Usage: start|stop|status"
        ;;
Esac

14. Lati bẹrẹ, da duro tabi wo iwọle ipo Log.io pẹlu akọọlẹ gbongbo (tabi olumulo ti o ti fi sori ẹrọ ohun elo Log.io) ati ṣiṣe awọn ofin wọnyi lati ṣakoso ohun elo ni irọrun.

# log.io start
# log.io status
# log.io stop

Gbogbo ẹ niyẹn! Ni ero mi Log.io jẹ ohun elo wẹẹbu ti o dara julọ ati ti o munadoko lati ṣe atẹle agbegbe tabi awọn olupin latọna jijin awọn faili log ni akoko gidi ati lati ni oju-iwoye lori ohun ti n lọ ni inu awọn ọna ṣiṣe ati paapaa lati ṣe aṣiṣe awọn iṣoro olupin nigbati awọn eto maa n di alaidani tabi awọn jamba, laisi iwulo lati lo kọnputa kan.