Kufuatilia Seva Inaingia Katika Wakati Halisi kwa Zana ya Log.io kwenye RHEL/CentOS 7/6


Log.io ni programu ndogo rahisi lakini yenye ufanisi iliyojengwa juu ya Node.js na Socket.io, ambayo inaruhusu kufuatilia kumbukumbu za seva za Linux. faili kwa wakati halisi kupitia wijeti za skrini ya kiolesura cha wavuti.

Mafunzo haya yatakuongoza jinsi unavyoweza kusakinisha na kufuatilia faili zozote za kumbukumbu za ndani kwa wakati halisi ukitumia Log.io iliyosakinishwa kwenye RHEL/CentOS 7/6.x kwa kusanidi Log.io b> faili ya mvunaji ili kufuatilia mabadiliko yoyote ya ndani kwenye faili za kumbukumbu.

Hatua ya 1: Ongeza Hifadhi za Epel

1. Hazina za CentOS Epel hutoa vifurushi jozi kwa Node.js na NPM - Moduli Zilizofungwa za Nodi. Sakinisha hazina za Epel kwa kutoa amri ifuatayo.

# 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. Baada ya kuongeza Epel Repos kwenye mfumo wako, fanya uboreshaji wa mfumo kwa kutekeleza amri ifuatayo.

# yum update

Hatua ya 2: Sakinisha Node.js na Vifurushi vya NPM

3. Node.js ni jukwaa la programu la upande wa seva la Javascript ambalo hukuruhusu kuunda programu za mtandao zenye utendaji wa nyuma. NPM (Kidhibiti cha Kifurushi cha Node) ndiye kidhibiti kifurushi cha Node.js. Kwa hivyo, katika hatua inayofuata endelea na usakinishe jozi za Node.js na NMP kwenye mfumo wako kupitia msimamizi wa kifurushi cha YUM kwa kutoa amri zifuatazo.

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

Hatua ya 3: Sakinisha na Usanidi Programu ya Log.io

4. Programu ya Log.io lazima isakinishwe kwenye mfumo wako kupitia NPM kwa kubainisha mtumiaji halali wa mfumo wa ndani, ambapo usakinishaji lazima ufanyike. Ingawa unaweza kutumia mtumiaji yeyote wa mfumo halali kusakinisha Log.io, mimi binafsi ninapendekeza usakinishe programu kupitia root mtumiaji au mtumiaji mwingine wa mfumo aliye na upendeleo wa mizizi.

Sababu ya kutumia mbinu hii ni kwamba Log.io lazima iwe na ufikiaji wa kusoma faili za kumbukumbu za ndani na mtumiaji aliye na haki za msingi zisizo za haki hawezi kufikia na kusoma baadhi ya faili muhimu za kumbukumbu.

Kwa hivyo, ingia na akaunti ya mizizi na usakinishe programu ya Log.io kupitia akaunti ya mizizi kwa kutoa amri ifuatayo (ikiwa unatumia mtumiaji mwingine kubadilisha akaunti ya mizizi na mtumiaji wa mfumo wako ipasavyo).

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

5. Baada ya programu kusakinishwa badilisha saraka yako ya kufanya kazi hadi Log.io folda, ambayo imefichwa, na ufanye orodha ya saraka ili kuibua maudhui ya folda ili kusanidi programu zaidi.

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

6. Sasa ni wakati wa kusanidi Log.io ili kufuatilia faili za kumbukumbu za ndani kwa wakati halisi. Wacha tujue jinsi Log.io inavyofanya kazi.

  1. Faili ya mvuna hutazama mabadiliko katika faili za kumbukumbu za ndani zilizobainishwa katika usanidi wake na kutuma matokeo yake kupitia socket.io TCP
    itifaki ambayo hutuma zaidi ujumbe kwa seva ya ndani ya Log.io au seva nyingine yoyote ya mbali iliyotangazwa na Anwani yake ya IP ( 0.0.0.0 anwani iliyobainishwa kwenye matangazo ya vivunaji kwa seva zote zinazosikiliza za log.io) - faili harvester.conf
  2. Seva ya Log.io hujifunga kwenye violesura vyote vya mtandao (ikiwa haijabainishwa vinginevyo katika faili ya log_server.conf) na husubiri ujumbe kutoka kwa vivunaji vya ndani au vya mbali na kutuma matokeo yao kwa seva ya Wavuti ya log.io (0.0.0.0 inamaanisha kuwa husubiri ujumbe kutoka kwa wavunaji wa ndani au wa mbali) log_server.conf
  3. Seva ya Wavuti ya Log.io hufunga violesura vyote vya mtandao, husikiliza miunganisho ya wateja wa wavuti kwenye mlango 28778 na kuchakata na kutoa ujumbe unaopokea ndani kutoka kwa seva ya log.io - faili web_server.conf /li>

Kwanza fungua faili ya harvester.conf ili kuhaririwa, ambayo kwa chaguo-msingi hufuatilia faili za kumbukumbu za Apache pekee, na ubadilishe taarifa ya nodeName ili kufanana na jina la mpangishaji wako na kufafanua logStreams > taarifa zilizo na faili gani za kumbukumbu za ndani unataka kufuatilia (katika kesi hii ninafuatilia faili nyingi za kumbukumbu kama vile ukaguzi, ujumbe na kumbukumbu salama). Tumia dondoo la faili hapa chini kama mwongozo.

# nano harvester.conf

Nukuu ya faili ya wavunaji.

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
  }
}

Pia ikiwa hauitaji kivunaji kutumwa kwa seva ya Log.io ya mbali badilisha laini ya mwenyeshi kwenye taarifa ya seva ili kutuma pekee matokeo yake ndani ya nchi kwa kurekebisha anwani 0.0.0.0 na anwani ya kurudi nyuma (127.0.0.1).

7. Kwa sababu za kiusalama, ikiwa hutarajii pato la vivunaji vya mbali kwa seva ya ndani ya Log.io fungua log_server.conf faili na ubadilishe 0.0.0.0 b> anwani yenye anwani ya kurudi nyuma (127.0.0.1).

# nano log_server.conf

8. Vipengele vingine vya usalama kama vile kuingia kwa vitambulisho, HTTPS au kizuizi kulingana na IPs kwenye seva ya wavuti ya Log.io vinaweza kutumika kwenye upande wa seva ya wavuti. Kwa mafunzo haya nitatumia tu kama kipimo cha usalama kuingia kwa kitambulisho.

Kwa hivyo, fungua faili ya web_server.conf, toa maoni kwa taarifa yote ya auth kwa kufuta mikwaju yote na nyota na ubadilishe mtumiaji na kupita b> maagizo ipasavyo kama inavyopendekezwa kwenye picha ya chini ya skrini.

# nano web_server.conf

Hatua ya 4: Ongeza Kanuni ya Firewall na Anzisha Programu ya Log.io

9. Ili kupata ufikiaji wa wavuti kwa seva ya Log.io ongeza sheria kwenye RHEL/CentOS 7 Firewall ili kufungua TCP 28778 bandari kwa kutoa amri ifuatayo.

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

Kumbuka: Watumiaji wa RHEL/CentOS 6.x wanaweza kufungua mlango 28778 kwenye ngome ya iptable.

Hatua ya 5: Anzisha Programu ya Log.io na uweke Kiolesura cha Wavuti

10. Ili kuanza Log.io programu ya ufuatiliaji wa kumbukumbu hakikisha kwamba saraka yako ya sasa ya kufanya kazi ni nyumbani kwa mzizi .log.io na tumia amri zifuatazo kwa mpangilio ufuatao ili kuanza. maombi.

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

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

11. Baada ya seva kuanzishwa fungua kivinjari, weka IP ya seva zako ikifuatiwa na 28778 nambari ya mlango kutumia itifaki ya HTTP kwenye anwani ya URL na kidokezo cha kudai kitambulisho chako cha kuingia kinapaswa kuonekana.

Ingiza mtumiaji na nenosiri lako lililowekwa kwenye hatua ya 8 ili kuendelea zaidi na programu ya Log.io sasa inapaswa kuonekana kwenye kivinjari chako ikiwasilisha faili za kumbukumbu zinazofuatiliwa kwa wakati halisi.

http://192.168.1.20:28778

Kwenye kiolesura cha Wavuti ongeza skrini mpya na upange mitiririko au nodi zako ipasavyo.

12. Kusimamisha programu ya Log.io endesha amri ifuatayo.

# pkill node

Hatua ya 6: Unda Log.io Dhibiti Hati

13. Ili kutumia amri inayosimamia programu ya Log.io yenye swichi tatu ( anza, simamisha na hali) tengeneza hati ifuatayo iitwayo log.io kwenye /usr/local/bin saraka inayoweza kutekelezwa na uongeze ruhusa za utekelezaji kwa hati hii.

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

Ongeza dondoo ifuatayo kwenye faili hii ya hati.

#!/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. Kuanza, kusitisha au kutazama kuingia kwa hali ya Log.io kwa kutumia akaunti ya mizizi (au mtumiaji ambaye programu ya Log.io imesakinishwa) na endesha tu amri zifuatazo ili kudhibiti programu kwa urahisi.

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

Ni hayo tu! Kwa maoni yangu Log.io ni programu bora na bora ya wavuti ya kufuatilia faili za kumbukumbu za seva za ndani au za mbali ni wakati halisi na kupata mtazamo juu ya kile kinachoendelea ndani ya mifumo na haswa kutatua shida za seva wakati. mifumo huwa haijibu au huanguka, bila hitaji la kutumia koni.