Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Prechádzame na RRDTOOL

Softwarový prostriedok MRTG pre tvorbu grafických prehľadov sa teší širokej popularite administrátorov. Postupom vývoja sa však usúdilo, že má limitácie v počte zobrazovaných premenných v časových radoch, ako aj v možnosti ich grafického stvárnenia, tak tvorcovia už dávnejšie začali pracovať na projekte RRDTOOL, ktorý má ukončením rady MRTG2 s nástupom MRTG3 do značnej miery zmeniť prístup k danej problematike.

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Nová rada MRTG3 má byť celá založená na RRDTOOL, takže je lepšie sa do prechodu pustiť už teraz a vychutnať si široké možnosti tohto nástroja priamo vo svojom monitorovacom systéme. Na základe viacerých žiadostí čitateľov root.cz sa budeme tejto problematike v tomto miniseriáli venovať.

Dnes si ukážeme na jednoduchom príklade logiku, ktorou tento nástroj pracuje, a v ďalších častiach si presne zdokumentujeme jednotlivé možnosti a ukážeme si na praktických príkladoch jednotlivé možnosti použitia a nové formy stvárnenia, ako aj vyhodnocovanie.

Prvou zmenou oproti mrtg je prístup k spracovaniu. Spracovanie v podstate pozostáva z prvotného vytvorenia Round Robin databázy (z toho vznikol aj názov RRDTOOL), následne prichádza cyklické plnenie databázy údajmi v časovom rade a následne nezávisle od plnenia na základe požiadavky tvorba grafického výstupu s možnosťou špecifikovania časového rozsahu. Nie je tomu teda tak, ako pri mrtg, kde sa zber údajov automaticky spájal s tvorbou grafov, ale sú to dve samostatné činnosti. Ďalšou zmenou je zadávanie hodnôt aj s časovým údajom vo formáte timestamp. Možno vás prekvapí, že zmizli staré známe konfiguračné súbory, takže plnenie je nutné obstarať vlastnými skriptami. Vďaka knižniciam pre perl to nie je problémom a po prvom pokuse na modeli uvidíte, že je to úplne jednoduché. Na základnej konštrukcii je možné stavať ľubovoľné grafické aplikácie, takže hor sa do práce.

Po stiahnutí z domovskej stránky a skompilovaní, ktoré by malo prebehnúť na strojoch, kde už predtým bolo mrtg úspešne inštalované, bezproblémovo, si vytvoríme prvý modelový skript, ktorý nám bude do vytvorenej databázy ukladať časy odozvy pri pingovaní testovacieho hosta v sieti a pri každom zbere nových dát vytvorí grafické stvárnenie. Modelový skript bude vyzerať nasledovne:

#! /usr/bin/perl

  use lib qw( /rrdtool/perl-shared/blib/lib /rrdtool/perl-shared/blib/arch );
  use lib qw( /usr/local/rrdtool-1.0.33/lib/perl /rrdtool/lib/perl );
  use RRDs;

  my $start=time;
  my $rrd=   "/home/httpd/mrtg.domena.sk-443/html/rrdtool/test/pingtest.rrd";
  my $name = "/home/httpd/mrtg.domena.sk-443/html/rrdtool/test/pingtest.png";

  if (not -f $rrd){
  RRDs::create ($rrd, "--start",$start-1, "--step",300,
          "DS:pingtime:GAUGE:600:U:U",
          "RRA:AVERAGE:0.5:1:200",
  );
  my $ERROR = RRDs::error;
  die "$0: unable to create `$rrd': $ERROR\n" if $ERROR;
  };

  my $t;
  $t=`ping -c3 111.111.111.111 | grep round-trip|awk
    '{\$c=split(\$4,i,"/");print i[1]}'`;

  RRDs::update $rrd,"$start:$t";

  RRDs::graph "$name",
    "--title", "Demo ping prehladu",
    "--start", "now-1d",
    "--end", "now",
    "--imgformat","PNG",
    "--width=600",
    "--height=300",
    "DEF:a=$rrd:pingtime:AVERAGE",
    "LINE2:pingtime#00b6e4:real",
    "COMMENT:Aktuálna hodnota odozvy=$t",
  ;
  if ($ERROR = RRDs::error) {
    print "ERROR: $ERROR\n";
  };

Ako vidíte, jeho funkcia je jednoduchá. Máme dve premenné $rrd a $name, v ktorých máme uložené názov RRD databázy a názov výsledného grafického súboru. RRDTOOL sprievodné html dokumenty nevytvára, ako tomu bolo pri MRTG, texty je možné vkladať priamo do generovaného grafického súboru. Nasleduje kontrola existencie databázy. Ak neexistuje, vytvoríme si ju. V tomto prípade s jednou premennou s názvom pingtime, pre ktorú sa bude generovať päťminútová priemerná hodnota. Nasleduje získanie aktuálnej hodnoty odozvy a jej uloženie do premennej $t. Na rade je zápis do databázy. Všimnite si že dáta sa zapisujú vo formáte time:premenná1:pre­menná2:premen­ná3:…, takže je možné do databázy plniť údaje aj v dávkach z rôznych logových súborov, vždy však v časovom slede. Nakoniec prichádza na rad tvorba grafického výstupu, kde môžeme mnohými parametrami ovplyvňovať výsledok. V príklade použijeme nadpis, časový rozsah za posledných 24 hodín, čo je možné ľubovoľne špecifikovať, výsledný formát súboru (podporované sú .gif a .png), veľkosť výsledného obrázku, a premennú, ktorej graf sa má vytvoriť. My máme iba jednu, ktorú zobrazíme ako líniu hrúbky 2 s legendou umiestnenou pod grafom. Škálovanie osi hodnôt necháme pre automatickú definíciu v závislosti na hodnotách. Do komentára si umiestnime aktuálnu hodnotu odozvy.

Pri spúšťaní v crone v 5 minútovom intervale môže výsledok vyzerať nasledovne:

davame_internetu_obsah
       

Graf

A máme za sebou úspešný prvý príklad na ktorom sme si ukázali, že RRDTOOL, ktorý vypadá na prvý pohľad oproti MRTG zložito, je v podstate jednoduchý. Nabudúce si vysvetlíme jednotlivé voľby, ktoré máme k dispozícii a poukazujeme si mnohé praktické využitia, ktoré v MRTG nebolo možné realizovať, ako napríklad grafické stvárnenie priemernej, maximálnej a minimálnej hodnoty, súčtovanie jednotlivých hodnôt čiastkových premenných, detekciu a stvárnenie nezistenej hodnoty v časových úsekoch, ako aj spoluprácu s vyhodnocovaním prevádzky postfix mail servera.

Školení: Hackujeme operační systém Android

 

Školení vám ukáže, jak se dostat k Linuxu (tzv. "rootování"), který se pod hezkou tváří Androida skrývá a jak ho naplno využít. Pomůže vám to při záloze dat, zvětšování prostoru pro aplikace nebo sdílení připojení k internetu a pokud chcete z telefonu dostat opravdové maximum, ukážeme vám, jak v něm vyměnit kompletní systém za lepší.

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 2,98

Přehled názorů

problemy RRD
Cohen 20. 12. 2001 15:07
Nový
└ 
Re: problemy RRD
Milan Gigel 20. 12. 2001 16:43
Nový
Pro MRTG+RRDTool neni treba znat RRDTool
Pavel Ruzicka 20. 12. 2001 18:22
Nový
├ 
Re: Pro MRTG+RRDTool neni treba znat RRDTool
Yenya 21. 12. 2001 11:08
Nový
└ 
Re: Pro MRTG+RRDTool neni treba znat RRDTool
Petr Prazak 21. 12. 2001 14:40
Nový
Překlep v příkladu
Pavel Francírek 13. 1. 2002 15:31
Nový
knihovny
mastix 18. 3. 2002 11:57
Nový
Nefunguje naplneni prom t
anonymní uživatel 16. 8. 2006 14:52
Nový
└ 
Re: Nefunguje naplneni prom t
Jarda Plzak 28. 8. 2006 10:08
Nový
 
├ 
Re: Nefunguje naplneni prom t
Jarda Plzak 28. 8. 2006 10:51
Nový
 
└ 
Re: Nefunguje naplneni prom t
ghost 5. 9. 2006 12:47
Nový
Rozliseni osy Y
pavel plojhar 30. 11. 2010 00:03
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem