[[kategooria:õpetused]]
==Mis on MRTG?==
MRTG on vaba tarkvara serverite ja ka igasuguse muu info jälgimiseks. Tarkvara eesmärgiks on joonistada graafikuid kindla kasutaja poolt määratud ajavahemiku järel. Võimalik on jälgida nii serveri protsessori koormust kui ka vajadusel välise temperatuuri muutumist (selleks siis vaja muidugi vastavaid vahendeid). MRTG kasutab peamiselt oma graafikute joonistamisel tarkvara SNMP poolt kogutud infot.
MRTG on kirjutatud perlis ning välja lastud Gnu GPL litsentsi all.
Näide MRTG poolt joonistatud graafikust:
[[Pilt:Cpu-day.png]]
==Paigaldame vajaliku==
MRTG edukaks jooksutamiseks on peamiselt vaja kahte asja MRTGd ennast ning snmp-d, millelt MRTG oma peamise info saab. Eelduseks on loomulikult, et masinas jookseb juba veebiserver (Apatche Apache või mõni muu samalaadne), on olemas '''gd''', '''libpng''' ning '''zlib'''.
Kõige lihtsam moodus mrtg ning snmp paigaldamiseks on nende installimine distributsiooni pakihalduriga, olgu selleks siis yum, yast, apt-get või mõni muu samalaadne.
[root@localhost root]# service snmpd start
Sellega on algus tehtud. Kelle distributsioon taolisi pakihaldureid ei võimalda, siis MRTG installimisest täpsemalt võib leida aadressilt [http://peopleoss.ee.ethzoetiker.ch/~oetikermrtg/webtoolsdoc/mrtg-unix-guide.en.html http://oss.oetiker.ch/mrtg/doc/mrtg-unix-guide.en.html ].
==Esimene proov==
public@localhost</pre>
Käsu kergem lahtiseletus oleks järgmine: WorkDir: on juba eelmainitud asukoht, kuhu hakkab süsteem uusi faile looma, Options[_]: tähendab seda, et järgnevad valikud kehtivad kõigi sisestatud graafide graafikute kohta, seda märgib [_], output on juba kõigile iseenesest mõistetavalt koht, kuhu käskluse poolt toodetud fail välja kirjutatakse ning public@localhost on vajalik selleks, et ära määrata, millise masina infot kuulatakse.
Käskluse tulemuseks on pikk cfg fail, mis sisaldab meile palju ebavajalikku. Seega puhastan ma selle igasugustest ebavajalikest kommentaariridadest, nii et jääks vaid need võrguseadmed, mida ma ka tegelikult tahan jälgida:
<pre>
sysdescr "Linux 2.6.x"
syscontact sander85 <sander85@ÄT uno.PUNKT ee>
sysname Kodune töölaud
syslocation Misiganes :) </pre>
Järgmisena tuleb koostada leht, mis hakkab kogu seda infot meile kuvama, selleks kasutame käsklust '''indexmaker'''. Selles näites kirjutan üle juba eelnevalt mainitud asukohas olevad failid (/var/www/html/mrtg), sest sinna on määratud ka WorkDir. Kui on soov aga WorkDir-i muuta, siis peab vastavalt ümber liigutama ka kõik selles kaustas olevad pildifailid (mrtg-l.png jne).
[root@localhost root]# indexmaker /var/www/html/mrtg/mrtg.cfg --output /var/www/html/mrtg/index.html
See käsklus tekitab index.html faili, mida võib vaadata aadressilt http://sinuserver/mrtg/
Sellega peakski olema loodud ka esimene graafik (millel klikates avaneb pikem ülevaade kuulatavast objektist), mis joonistub vastavalt konfiguratsioonile paremalt ja mille edasiseks arenguks peate veel jätkuvalt jooksutama käsklust mrtg. Siiski on ületatud kõige keerulisem peatükk, kui siiani on kõik õnnestund, siis edasine on üldiselt lihtne.
==MRTG kasutamine crontab-i abil==
Selle peatüki lõpuks peaks MRTG info uuenema automaatselt vastavalt kasutaja määratud ajale. Kõigil lugejatel ei pruugi seda peatükki vaja olla, sest osade süsteemide puhul tehakse see ära juba MRTGd paigaldades. Küll on vaja aga lugeda neil, kellel paigaldamisel ei ole seda tehtud või neil, kes on vastavaid asukohti muutnud, sest sellisel juhul on vaja see sisestus ümber kirjutada.
Selleks tuleb kõigepealt kindlaks teha, et masinas jookseb crond service
<pre>[root@localhost root]# ps -A|grep crond
18550 ? 00:00:00 crond</pre>
Kui aga sellist vastust ei tule, siis tuleb cron paigaldada.
[root@localhost root]# urpmi crontabs
Järgnevalt tuleb luua fail kausta '''/etc/cron.d/'''. Mina kasutan selleks enda lemmikut joe-d. Faili nimi võib üldiselt olla suvaline, aga see peab olema selline, et hiljem otsides selle ise ka üles leiad. Seepärast nimetan mina ta lihtsalt nimega '''mrtg'''.
[root@localhost root]# joe /etc/cron.d/mrtg
Faili sisu on lühike üherealine käsklus, mis sunnib MRTG käivituma iga tund iga viie minuti tagant:
0-59/5 * * * * root /usr/bin/mrtg /var/www/html/mrtg/mrtg.cfg
Sellega peaks olema ka automatiseerimine igal juhul tehtud ja võib liikuda edasi ning lisada uusi kuulatavaid objekte.
==MRTG kasutamine edasijõudnutele==
Kui mõnel tekib küsimus, et miks viimane rida välja on kommenteeritud, siis vastus on lihtne, see on lihtsalt maitse asi ja jätsin selle rea alles, et ta oleks näitena olemas kui kellegil on soovi pidevalt maksimaalses skaalas jooksvaid graafe graafikuid jälgida :)
Kogu cfg faili sisu peale protsessori lisamist näeb minul välja järgnev:
# System: Kodune töölaud
# Description: "Linux 2.6.x"
# Contact: sander85 <sander85@ÄT uno.PUNKT ee>
# Location: Misiganes :)
######################################################################
<TABLE>
<TR><TD>System:</TD> <TD>Kodune töölaud in Misiganes :)</TD></TR>
<TR><TD>Maintainer:</TD> <TD>sander85 <sander85@ÄT uno.PUNKT ee></TD></TR>
<TR><TD>Description:</TD><TD>eth0 </TD></TR>
<TR><TD>ifType:</TD> <TD>ethernetCsmacd (6)</TD></TR>
# System: Kodune töölaud
# Description: "Linux 2.6.x"
# Contact: sander85 <sander85@ÄT uno.PUNKT ee>
# Location: Misiganes :)
######################################################################
<TABLE>
<TR><TD>System:</TD> <TD>Kodune töölaud in Misiganes :)</TD></TR>
<TR><TD>Maintainer:</TD> <TD>sander85 <sander85@ÄT uno.PUNKT ee></TD></TR>
<TR><TD>Description:</TD><TD>eth0 </TD></TR>
<TR><TD>ifType:</TD> <TD>ethernetCsmacd (6)</TD></TR>
Autor:[http://pingviin.org/profile.php?mode=viewprofile&u=69 Sander85]