Keskse logihalduse tarvis kliendile Rsyslogi paigladmaine ja seadistamine puppeti abil

From EIK wiki

Sissejuahtus

Antud juhend toetub Sten Ausi poolt loodud "Linuxi administreerimine - Labor 2 (keskse logihalduse rakendamine)"[1] juhenduile, kus autor näitab tutvustab logihalduse seadistamist server ja kleindi poolel. Käesolev juhend automatiseerib kliendi seadistamise osa puppeti abil. Kliente on tihti palju ja seetõttu on tüütu kõiki ükshaaval seadistada.

Eesmärk

Juhendi eesmärgik on näidata, kuidas on võimalik lihtsustada puppeti abil keskse logihalduse kliente seadistamist.

Eeldused

Puppet on seadistatud.[2]

Logihalduse server on seadistatud.[3]

Tarkvara valik

Server: Ubuntu Server 64bit, versioon: 12.04.3 LTS

Klient: Ubuntu client 64bit, versioon 13.04


Virtuaalmasinate seadistused

Selle konkreetse lahenduskäigu puhul on kasutusel kolm virtuaalmasinat:

1) Puppet server: Ubuntu Server 64bit versioon 12.04.3 LTS.

puppet.planet.zz 192.168.56.200

2) Keskne logiserver: Ubuntu Server 64bit versioon 12.04.3 LTS.

rsyslog.planet.zz 192.168.56.210

3) Klient: Ubuntu Desktop 64bit versioon 13.

client.planet.zz 192.168.56.101

Pupetmasteri konfiguratsioon

Puppet masterisse tuleb lisada stdlib moodul. Antud moodul on vajalik, et klientide konfiguratsiooni failidesse ridu lisada.

puppet module install puppetlabs/stdlib


Muudatused site.pp failis. Antud lahenduse puhul kasutame kahte erinevat klassi konfigureerimiseks. Rsyslog.pp paigladab rsyslogi ja conf.pp abil teeme vajalikud muudatused klinetide /etc/rsyslog.conf faili.

nano /etc/puppet/manifests/site.pp


Site.pp sisu

import "classes/*"
node 'basenode' {
  include rsyslog
  include rsys_client_conf
 
}


node "desktop.planet.zz" inherits 'basenode' {
#desktop.planet.zz on antud näite kliendi nimi. Selle võib asendada oma kliendi nimega.
}

Rsyslog.pp sisu

nano /etc/puppet/manifests/classes/rsyslog.pp


class rsyslog {
        package { 'rsyslog': ensure => latest }
        #latest võib asendada soovitud versiooniga. Rsyslogi versiooni saab kontrollida käsuga: puppet resource package rsyslog
}

rsys_client_conf.pp sisu

nano /etc/puppet/manifests/classes/rsys_client_conf.pp


class rsys_client_conf {

             
                file_line { 'rsys_client_conf':
                ensure => present,
                #Antud ip aadress ja port(192.168.56.210:10514) asendada logiserveris kasutuses olevatega
                line => "*.* @@192.168.56.210:10514 ",
                path => '/etc/rsyslog.conf',
}
}

Kokkuvõte

Paigaldasime antud konfiguratsiooni muudatused puppeti abil klienti ja veendusime, et kõik vajalikud muudatused said tehtud.

Alternatiivne võimalus puppeti abil rsyslogi paigldamiseks on kasutades moodulit: saz/rsyslog (Lisa info: [4])