Monitorování serveru: Porovnání verzí

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání
 
(Není zobrazeno 42 mezilehlých verzí od 6 dalších uživatelů.)
Řádek 12: Řádek 12:
  
 
== Nástavení modulu linuxového jádra ==
 
== Nástavení modulu linuxového jádra ==
Abychom mohli přistupovat k údajům o teplotě procesoru, základní desky, otáčkám ventilátorů aj. je nutné při konfiguraci linuxového jádra zapnout podporu pro '''I2C''' Hardware monitoring. Pokud je váš hardware muzejní kousek, můžete se přesvědčit, zda-li je monitorování chipsetu podporováno na stránce: [http://secure.netroedge.com/~lm78 http://secure.netroedge.com/~lm78/].  
+
Abychom mohli přistupovat k údajům o teplotě procesoru, základní desky, otáčkám ventilátorů aj. je nutné při konfiguraci linuxového jádra zapnout podporu pro '''I2C''' Hardware monitoring. Pokud je váš hardware muzejní kousek, můžete se přesvědčit, zda-li je monitorování chipsetu podporováno na stránce: [http://secure.netroedge.com/~lm78 lm_sensors].  
  
Dále je nutné přidat do jádra podporu pro jednotlivé chipy. Nejjednodušší je přidat všechny podporované chipy jako moduly. Ušetříme si tím mnohé trápení. Pokud nechcete sami laborovat s nastavením konfigurace jádra, je možné si stáhnout a nainstalovat již odzkoušené verze jádra pro několik základních architektur z ftp hkfree: [ftp://ftp.hkfree.org/linux/wifi/ ftp://ftp.hkfree.org/linux/wifi/].
+
Dále je nutné přidat do jádra podporu pro jednotlivé chipy. Nejjednodušší je přidat všechny podporované chipy jako moduly. Ušetříme si tím mnohé trápení. Pokud nechcete sami laborovat s nastavením konfigurace jádra, je možné si stáhnout a nainstalovat již odzkoušené verze jádra pro několik základních architektur z [ftp://ftp.hkfree.org/linux/wifi/ ftp hkfree].
  
 
== Nastavení monitorovací utility ==
 
== Nastavení monitorovací utility ==
K tomu, abychom zjistili, které moduly jádra náhrat použijeme monitorovaní utilitu '''lm_sensors''' opět z [http://secure.netroedge.com/~lm78 http://secure.netroedge.com/~lm78/]. Nainstaluje buč příslušný balík, či sami zkompilujeme a nainstalujeme. Po instalaci máme k dispozici utilitu '''sensors-detect'''. Spustíme, dojde k vyzkoušení veškerých modulů pro monitorování. Pro ty, které fungují na našem systému, nám utilita vygeneruje příslušné řádky jednak pro '''/etc/modprobe.conf''' a jednak pro startovací skripty, kde se dané moduly nahrávají.  
+
K tomu, abychom zjistili, které moduly jádra náhrat použijeme monitorovaní utilitu [http://secure.netroedge.com/~lm78/ lm_sensors]. Nainstaluje buč příslušný balík, či sami zkompilujeme a nainstalujeme.  
 +
 
 +
$ ./configure
 +
$ make user
 +
$ make user_install
 +
 
 +
Po instalaci máme k dispozici utilitu <code>sensors-detect</code>. Spustíme, dojde k vyzkoušení veškerých modulů pro monitorování. Pro ty, které fungují na našem systému, nám utilita vygeneruje příslušné řádky jednak pro <code>/etc/modprobe.conf</code> a jednak pro startovací skripty, kde se dané moduly nahrávají.  
  
 
Zdali vše funguje vyzkoušíme pomocí příkazu:
 
Zdali vše funguje vyzkoušíme pomocí příkazu:
Řádek 34: Řádek 40:
 
  temp2:      +41°C  (low  =    -1°C, high =    -1°C)  sensor = thermistor
 
  temp2:      +41°C  (low  =    -1°C, high =    -1°C)  sensor = thermistor
 
  vid:      +1.20 V
 
  vid:      +1.20 V
 +
 +
Dále můžeme sledovat teplotu hardisků a zjišťovat jestli se nám obzvlášť pod náporem FTP serveru nepřehřívají. K tomu nám poslouží monitorovaní nástroj [http://www.guzu.net/linux/hddtemp.php hddtemp].
  
 
== Nastavení grafického zobrazení ==
 
== Nastavení grafického zobrazení ==
 
Nyní nás čeká nastavení softwaru, který nám bude graficky zobrazovat statistiky jednak o hardwaru, ale i softwaru (zátež linky, ping, počet přenesených dat jednotlivých uživatelů atd.)
 
Nyní nás čeká nastavení softwaru, který nám bude graficky zobrazovat statistiky jednak o hardwaru, ale i softwaru (zátež linky, ping, počet přenesených dat jednotlivých uživatelů atd.)
  
Pro samotný sběr monitorovacích údajů použijeme asi nejrozšířenější utilitu: '''rrdtool'''. Opět si buč nainstalujeme již hotové baličký nebo stáhneme z [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/].
+
Pro samotný sběr monitorovacích údajů použijeme asi nejrozšířenější utilitu: [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ rrdtool]. Opět si buč nainstalujeme již hotové baličký nebo stáhneme z [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ rrdtool].
  
 
V současné době je již k dispozici řada 1.2.x. Nicměné se nám může stát, že program, který bude zpracovávat takto sebraná data, nebude rozumět novému vnitřnímu formátu, který tato sada používá. Proto zůstaneme u bezproblémové řady 1.0.x.
 
V současné době je již k dispozici řada 1.2.x. Nicměné se nám může stát, že program, který bude zpracovávat takto sebraná data, nebude rozumět novému vnitřnímu formátu, který tato sada používá. Proto zůstaneme u bezproblémové řady 1.0.x.
  
Jelikož se v následujícím odstavci dočteme, že pro zobrazení takto sebraných výsledků použijeme program napsaný v Perlu, musíme také nainstalovat perlovou rrdtool knihovnu. To nám zajistí příkaz:
+
Jelikož se v následujícím odstavci dočteme, že pro zobrazení takto sebraných výsledků použijeme program napsaný v Perlu, musíme také nainstalovat perlovou nainstalujeme již hotové baličký nebo stáhneme z [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ rrdtool] knihovnu. To nám zajistí příkaz:
  
 
  $ make site-perl-install
 
  $ make site-perl-install
  
Po instalaci se rrdtool nacházejí v adresáři: <code>/usr/local/rrdtool-1.0.x/</code>.
+
Po instalaci se nainstalujeme již hotové baličký nebo stáhneme z [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ rrdtool] nacházejí v adresáři: <code>/usr/local/rrdtool-1.0.x/</code>.
 +
 
 +
V případě, že chceme používat novou řadu nainstalujeme již hotové baličký nebo stáhneme z [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ rrdtool] 1.2.x je nutné při configuraci zapnout zapnout volbu:
 +
 
 +
$ ./configure --enable-perl-site-install
 +
 
 +
Poslední co nám zbývá je nástroj, který nám ze všech těch monitorovacích údajů, udělá přehlednou stránku s grafama. Těchno nástrojů existuje spousta viz.: [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/rrdworld/ rrdworld].  
  
Poslední co nám zbývá je nástroj, který nám ze všech těch monitorovacích údajů, udělá přehlednou stránku s grafama. Těchno nástrojů existuje spousta viz.: [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/rrdworld/ http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/rrdworld/].  
+
Pro naše účely použijeme sice už dnes poněkud zastaralý, ale efektivní nástroj: [http://hotsanic.sourceforge.net/ HoTSaNIC]. Poslední dostupná verze (CVS snapshot) je 0.5.0-pre6.  
  
Pro naše účely použijeme sice už dnes poněkud zastaralý, ale efektivní nástroj: '''HotSaNIC''' [http://hotsanic.sourceforge.net/  http://hotsanic.sourceforge.net/]. Poslední dostupná verze (CVS snapshot) je 0.5.0-pre6.  
+
Stáhneme [http://hotsanic.sourceforge.net/  HoTSaNIC] a rozbalíme třeba do adresáře <code>/opt/hotsanic-0.5.0-pre6/</code>. Tím je veškerá instalace hotová.  
  
Stáhneme HotSaNIC a rozbalíme třeba do adresáře <code>/opt/hotsanic-0.5.0-pre6/</code>. Tím je veškerá instalace hotová. Přejdeme ke konfiguraci.
+
Pokud hodláme používat nainstalujeme již hotové baličký nebo stáhneme z [http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ rrdtool] 1.2.x musíme patchnout [http://hotsanic.sourceforge.net/  HoTSaNIC], kvůli chybě v generování IRQ statistik:
  
Konfigurace hotsanicu se zkládá ze dvou částí.
+
$ cd /opt/hotsanic;  patch -p0 < irq_hostanic.patch
 +
 
 +
'''irq_hostanic.patch'''
 +
<code>
 +
--- ../backup/hotsanic-0.5.0-pre6/modules/system/diagrams.pl    2004-09-19 12:07:58.000000000 +0200
 +
+++ modules/system/diagrams.pl  2005-12-19 00:11:40.000000000 +0100
 +
@@ -487,8 +487,7 @@
 +
          "AREA:irqall_min#ffffff:\\g",
 +
          "LINE1:irqall_max#".$MODULECONFIG{COLOR_INT_ALL_MAX}.":",
 +
          "LINE1:irqall_min#".$MODULECONFIG{COLOR_INT_ALL_MIN}.":",
 +
-        "LINE1:irqall_avg#".$MODULECONFIG{COLOR_INT_ALL_AVG}.":",
 +
-        "COMMENT:Averages (min/max):\\n");
 +
+        "LINE1:irqall_avg#".$MODULECONFIG{COLOR_INT_ALL_AVG}.":");
 +
        for (my $int=0;$int<16;$int++) {
 +
          my $intnum=$int;
 +
          if ($int<10) { $intnum="0$int"; }
 +
</code>
 +
 
 +
Nyní přejdeme ke konfiguraci. Konfigurace hotsanicu se zkládá ze dvou částí.
  
 
* konfigurace jádra hotsanicu
 
* konfigurace jádra hotsanicu
Řádek 64: Řádek 96:
  
 
Nyní budeme dotázáni, které služby hodláme monitorovat a zobrazovat.
 
Nyní budeme dotázáni, které služby hodláme monitorovat a zobrazovat.
Doporučuju sledovat zejména subsystémy: traffic, system, ping, sensors a networks.
+
Doporučuju sledovat zejména subsystémy: apcusv, traffic, system, ping, sensors a networks.
 
Po dokončení konfigurace dojde k vytvoření konfiguračního souboru <code>settings</code>,
 
Po dokončení konfigurace dojde k vytvoření konfiguračního souboru <code>settings</code>,
který pro případné změny můžeme editovat i ručně a spouštěcí script <code>rrdgraph</code>.
+
který pro případné změny můžeme editovat i ručně a spouštěcí script <code>rrdgraph</code>. Nesmíme hlavně zapomenout nakonfigurovat proměnou <code>WEBDIR="/www/tools/info"</code>, ukazující na adresář, do kterého budou generovány HTML soubory s grafama.
  
 
Spoušetní HotSaNICu přidáme do init scriptů, tak aby nám naběhl při spuštění systémů. Do adresáře <code>/etc/init.d/</code> případně <code>/etc/rc.d/</code> soubor s následujícím obsahem:
 
Spoušetní HotSaNICu přidáme do init scriptů, tak aby nám naběhl při spuštění systémů. Do adresáře <code>/etc/init.d/</code> případně <code>/etc/rc.d/</code> soubor s následujícím obsahem:
Řádek 101: Řádek 133:
 
  esac
 
  esac
 
</code>
 
</code>
 +
 +
HotSaNIC využívá pro generování náhledů grafů software [http://www.imagemagick.org/ imagemagick]. Proto je vhodné nainstalovat patřičný balík či zkompilovat. Máme k dispozici i nouzové řešení a to nastavit v konfiguraci HotSaNICu zmenčování jen pomocí atributů elementu IMG ve výsledém HTML souboru (nedoporučuji).
 +
 +
HotSaNIC si veškeré obslužné práce (generování grafů) obstarává sám v daných časových intervalech. Pokud bychom chtěli některé výsledky vidět okamžitě, můžeme pustit regenerování ručně.
 +
$ makeindex.pl
 +
Vygeneruje titulní index.html.
 +
 +
$ diagrams.pl
 +
Vygeneruje všechny grafy.
 +
 +
$convert.pl
 +
Vygeneruje náhledy ke grafům.
 +
 +
Tímto jsme úspěšně nakonfigurovali jádro hotsanicu a můžeme přejít ke konfiguraci jednotlivých modulů.
  
 
=== konfigurace jednotlivých modulů ===
 
=== konfigurace jednotlivých modulů ===
 
HotSaNIC podporuje monitorování následujících subsystému:
 
HotSaNIC podporuje monitorování následujících subsystému:
* apcusv
+
* '''apcusv''' - záloha napajení
* apps
+
* '''apps''' - vytižení daných procesů
* bind
+
* '''bind''' - DNS
* diskio
+
* '''diskio''' - zátěž disku
* dnet
+
* '''dnet''' -
* mailq
+
* '''mailq''' - MAIL
* netstat
+
* '''netstat''' - TCP spojení
* networks
+
* '''networks''' - traffic uživatelů
* ntp
+
* '''ntp''' - TIME shift
* part
+
* '''part''' -
* ping
+
* '''ping''' - PING
* sensors
+
* '''sensors''' - CPU/... temperature
* shoutcast
+
* '''shoutcast''' -
* system
+
* '''system''' - zátěž systému
* traffic
+
* '''traffic''' - traffic
* worms
+
* '''worms''' - útok červů
 +
 
 +
V adresářích <code>modules</code> jsou adresaře pro každý z níže uvedených modulů. V každém z nich je konfiguračních soubor <code>setting</code>. V každém z adresářů je defaultní konfigurační soubor <code>.settings.default</code>, kde můžeme najít přehled všech možných konfiguračních direktiv (obzvláště pro nastavování scalingu). V následujích kapitolách je přehled základních nastavení pro jednotlivé konfigurační soubory.
 +
 
 +
==== apcusv ====
 +
<nowiki># </nowiki>cesta k souboru apcacces, musí nám běžet také apcupsd
 +
APCACCESS="/sbin/apcaccess"
 +
 
 +
==== apps ====
 +
<nowiki># jméno procesu a popis</nowiki>
 +
APP="httpd,apache"
 +
APP="proftpd,ftp"
 +
 
 +
==== bind ====
 +
 
 +
==== diskio ====
 +
Příklad konfigurace:
 +
 
 +
nejprve zjistim ID disku:
 +
 
 +
<pre>
 +
$ cat /proc/diskstats
 +
104    0 cciss/c0d0 28620311 262117 480954637 144392372 27258894 57877269 680496776 208876052 0 268644572 353404992
 +
104    1 cciss/c0d0p1 62 401 1069 420 40 32 576 2356 0 2564 2776
 +
104    2 cciss/c0d0p2 1483315 101904 21012416 14258620 14997887 37423217 419037344 1659521196 0 112408352 1673795000
 +
104    3 cciss/c0d0p3 27136927 159732 459941065 130133284 12260967 20454020 261458856 2844319796 0 186114948 2974575520
 +
  11    0 sr0 0 0 0 0 0 0 0 0 0 0 0
 +
  2    0 fd0 0 0 0 0 0 0 0 0 0 0 0
 +
</pre>
 +
 
 +
konfigurace v tomto případě bude vypadat takto:
 +
<pre>
 +
KERNEL="2.6"
 +
SOURCE="diskstats"
 +
DEV="104_0,cciss/c0d0"
 +
</pre>
 +
 
 +
==== dnet ====
 +
 
 +
==== mailq ====
 +
 
 +
==== netstat ====
 +
 
 +
==== networks ====
 +
 
 +
==== ntp ====
 +
 
 +
==== part ====
 +
 
 +
==== ping ====
 +
editujte modules/ping/settings a pridejte
 +
<pre>
 +
<nowiki>#</nowiki> configure multiple destinations of the form:
 +
<nowiki>#</nowiki> HOST=<host>,<description>
 +
<nowiki>#</nowiki>
 +
HOST=10.107.4.100,charon.hkfree.org
 +
<nowiki>#</nowiki>atd.
 +
</pre>
 +
 
 +
'''TIP:'''<BR>
 +
Kdyby se Vam '''nevytvarely grafy''', ale data v souborech rrd byly. Tak zeditujte soubor v adresari hotsanicu modules/ping/diagrams.pl<BR>
 +
VIMari, at pouzji tento command:<BR>
 +
:<nowiki>:</nowiki>%s/n:",$/n",/gc
 +
ostatni at nahradi radky koncici na  ''n:",'' za ''n",''
 +
bez teto upravy jsem to nerozchodil!!!
 +
 
 +
( RRDtool 1.2.6 , /usr/src/hotsanic-0.5.0-pre5.tgz, perl5.8.7 )
 +
 
 +
==== sensors  ====
 +
<nowiki>#</nowiki> cesta ke vstupním hodnotám (podle načteného modulu jádra),
 +
<nowiki>#</nowiki> jméno db, popisek, pozice ve vstupním souboru, násobící koeficient,   
 +
<nowiki>#</nowiki> přičítací koeficient, jednotky
 +
SENSOR="/usr/sbin/hddtemp -n /dev/hda |",hda,HDD1,1,1,0,°C,40,60
 +
SENSOR="/sys/bus/i2c/drivers/w83627hf/1-0290/temp3_input,mb,MB temp,1,.001,0,C"
 +
 
 +
==== shoutcast ====
 +
 
 +
==== system ====
 +
IRQ=<number>,<short description>
 +
 
 +
==== traffic ====
 +
 
 +
==== worms ====
  
 
== Nastavení softwarových alarmů ==
 
== Nastavení softwarových alarmů ==

Aktuální verze z 12. 4. 2010, 09:30

Autor: Lore

Motivace

Automatizované monitorování systému a hardwaru je zajisté jedna z vlastností, která by neměla chybět na žádném profesionálně udržovaném serveru. Upozorní nás včas na případné problémy, které by mohli často vést i k hadrwarovému porušení celého serveru. Dále vídíme dlouhodobý stav žátěže, podle něhož můžeme server upgradovat (přídání většího ventilátoru, paměti atd.)

Úkázkové řešení

Na mnohých serverech hkfree běží monitoring jak systému tak i hardwaru. Jedno z efektivních a nenáročních řesení lze najít na: http://pouchov.hkfree.org/info/.

Nástavení modulu linuxového jádra

Abychom mohli přistupovat k údajům o teplotě procesoru, základní desky, otáčkám ventilátorů aj. je nutné při konfiguraci linuxového jádra zapnout podporu pro I2C Hardware monitoring. Pokud je váš hardware muzejní kousek, můžete se přesvědčit, zda-li je monitorování chipsetu podporováno na stránce: lm_sensors.

Dále je nutné přidat do jádra podporu pro jednotlivé chipy. Nejjednodušší je přidat všechny podporované chipy jako moduly. Ušetříme si tím mnohé trápení. Pokud nechcete sami laborovat s nastavením konfigurace jádra, je možné si stáhnout a nainstalovat již odzkoušené verze jádra pro několik základních architektur z ftp hkfree.

Nastavení monitorovací utility

K tomu, abychom zjistili, které moduly jádra náhrat použijeme monitorovaní utilitu lm_sensors. Nainstaluje buč příslušný balík, či sami zkompilujeme a nainstalujeme.

$ ./configure
$ make user
$ make user_install

Po instalaci máme k dispozici utilitu sensors-detect. Spustíme, dojde k vyzkoušení veškerých modulů pro monitorování. Pro ty, které fungují na našem systému, nám utilita vygeneruje příslušné řádky jednak pro /etc/modprobe.conf a jednak pro startovací skripty, kde se dané moduly nahrávají.

Zdali vše funguje vyzkoušíme pomocí příkazu:

$ sensors

To nám ukáže zhruba následují informace o hardwaru na serveru.

it8712-isa-0290
Adapter: ISA adapter
in0:       +1.74 V  (min =  +4.08 V, max =  +4.08 V)
in1:       +0.00 V  (min =  +4.08 V, max =  +4.08 V)
in2:       +3.26 V  (min =  +4.08 V, max =  +4.08 V)
in3:       +2.93 V  (min =  +4.08 V, max =  +4.08 V)
fan1:     2616 RPM  (min =    0 RPM, div = 4)
temp1:       +57°C  (low  =    -1°C, high =    -1°C)   sensor = thermistor
temp2:       +41°C  (low  =    -1°C, high =    -1°C)   sensor = thermistor
vid:       +1.20 V

Dále můžeme sledovat teplotu hardisků a zjišťovat jestli se nám obzvlášť pod náporem FTP serveru nepřehřívají. K tomu nám poslouží monitorovaní nástroj hddtemp.

Nastavení grafického zobrazení

Nyní nás čeká nastavení softwaru, který nám bude graficky zobrazovat statistiky jednak o hardwaru, ale i softwaru (zátež linky, ping, počet přenesených dat jednotlivých uživatelů atd.)

Pro samotný sběr monitorovacích údajů použijeme asi nejrozšířenější utilitu: rrdtool. Opět si buč nainstalujeme již hotové baličký nebo stáhneme z rrdtool.

V současné době je již k dispozici řada 1.2.x. Nicměné se nám může stát, že program, který bude zpracovávat takto sebraná data, nebude rozumět novému vnitřnímu formátu, který tato sada používá. Proto zůstaneme u bezproblémové řady 1.0.x.

Jelikož se v následujícím odstavci dočteme, že pro zobrazení takto sebraných výsledků použijeme program napsaný v Perlu, musíme také nainstalovat perlovou nainstalujeme již hotové baličký nebo stáhneme z rrdtool knihovnu. To nám zajistí příkaz:

$ make site-perl-install

Po instalaci se nainstalujeme již hotové baličký nebo stáhneme z rrdtool nacházejí v adresáři: /usr/local/rrdtool-1.0.x/.

V případě, že chceme používat novou řadu nainstalujeme již hotové baličký nebo stáhneme z rrdtool 1.2.x je nutné při configuraci zapnout zapnout volbu:

$ ./configure --enable-perl-site-install

Poslední co nám zbývá je nástroj, který nám ze všech těch monitorovacích údajů, udělá přehlednou stránku s grafama. Těchno nástrojů existuje spousta viz.: rrdworld.

Pro naše účely použijeme sice už dnes poněkud zastaralý, ale efektivní nástroj: HoTSaNIC. Poslední dostupná verze (CVS snapshot) je 0.5.0-pre6.

Stáhneme HoTSaNIC a rozbalíme třeba do adresáře /opt/hotsanic-0.5.0-pre6/. Tím je veškerá instalace hotová.

Pokud hodláme používat nainstalujeme již hotové baličký nebo stáhneme z rrdtool 1.2.x musíme patchnout HoTSaNIC, kvůli chybě v generování IRQ statistik:

$ cd /opt/hotsanic;  patch -p0 < irq_hostanic.patch

irq_hostanic.patch

--- ../backup/hotsanic-0.5.0-pre6/modules/system/diagrams.pl    2004-09-19 12:07:58.000000000 +0200
+++ modules/system/diagrams.pl  2005-12-19 00:11:40.000000000 +0100
@@ -487,8 +487,7 @@
         "AREA:irqall_min#ffffff:\\g",
         "LINE1:irqall_max#".$MODULECONFIG{COLOR_INT_ALL_MAX}.":",
         "LINE1:irqall_min#".$MODULECONFIG{COLOR_INT_ALL_MIN}.":",
-        "LINE1:irqall_avg#".$MODULECONFIG{COLOR_INT_ALL_AVG}.":",
-        "COMMENT:Averages (min/max):\\n");
+        "LINE1:irqall_avg#".$MODULECONFIG{COLOR_INT_ALL_AVG}.":");
       for (my $int=0;$int<16;$int++) {
         my $intnum=$int;
         if ($int<10) { $intnum="0$int"; }

Nyní přejdeme ke konfiguraci. Konfigurace hotsanicu se zkládá ze dvou částí.

  • konfigurace jádra hotsanicu
  • konfigurace jednotlivých modulů

konfigurace jádra hotsanicu

V adresáři HotSaNICu pustíme konfigurační dávku:

$ ./setup.pl

Nyní budeme dotázáni, které služby hodláme monitorovat a zobrazovat. Doporučuju sledovat zejména subsystémy: apcusv, traffic, system, ping, sensors a networks. Po dokončení konfigurace dojde k vytvoření konfiguračního souboru settings, který pro případné změny můžeme editovat i ručně a spouštěcí script rrdgraph. Nesmíme hlavně zapomenout nakonfigurovat proměnou WEBDIR="/www/tools/info", ukazující na adresář, do kterého budou generovány HTML soubory s grafama.

Spoušetní HotSaNICu přidáme do init scriptů, tak aby nám naběhl při spuštění systémů. Do adresáře /etc/init.d/ případně /etc/rc.d/ soubor s následujícím obsahem:

#!/bin/bash
#
# Startup script for the HotSaNIC
#
hotsanic=/opt/hotsanic/rrdgraph
prog=hotsanic
start() {
        echo -n $"Starting $prog: "
        $hotsanic start
}
stop() {
       echo -n $"Stopping $prog: "
       $hotsanic stop
}
case "$1" in
 start)
       start
       ;;
 stop)
       stop
       ;;
 restart)
       stop
       start
       ;;
  *)
       echo $"Usage: $prog {start|stop|restart}"
       exit 1
esac

HotSaNIC využívá pro generování náhledů grafů software imagemagick. Proto je vhodné nainstalovat patřičný balík či zkompilovat. Máme k dispozici i nouzové řešení a to nastavit v konfiguraci HotSaNICu zmenčování jen pomocí atributů elementu IMG ve výsledém HTML souboru (nedoporučuji).

HotSaNIC si veškeré obslužné práce (generování grafů) obstarává sám v daných časových intervalech. Pokud bychom chtěli některé výsledky vidět okamžitě, můžeme pustit regenerování ručně.

$ makeindex.pl

Vygeneruje titulní index.html.

$ diagrams.pl

Vygeneruje všechny grafy.

$convert.pl

Vygeneruje náhledy ke grafům.

Tímto jsme úspěšně nakonfigurovali jádro hotsanicu a můžeme přejít ke konfiguraci jednotlivých modulů.

konfigurace jednotlivých modulů

HotSaNIC podporuje monitorování následujících subsystému:

  • apcusv - záloha napajení
  • apps - vytižení daných procesů
  • bind - DNS
  • diskio - zátěž disku
  • dnet -
  • mailq - MAIL
  • netstat - TCP spojení
  • networks - traffic uživatelů
  • ntp - TIME shift
  • part -
  • ping - PING
  • sensors - CPU/... temperature
  • shoutcast -
  • system - zátěž systému
  • traffic - traffic
  • worms - útok červů

V adresářích modules jsou adresaře pro každý z níže uvedených modulů. V každém z nich je konfiguračních soubor setting. V každém z adresářů je defaultní konfigurační soubor .settings.default, kde můžeme najít přehled všech možných konfiguračních direktiv (obzvláště pro nastavování scalingu). V následujích kapitolách je přehled základních nastavení pro jednotlivé konfigurační soubory.

apcusv

# cesta k souboru apcacces, musí nám běžet také apcupsd
APCACCESS="/sbin/apcaccess"

apps

# jméno procesu a popis
APP="httpd,apache"
APP="proftpd,ftp"

bind

diskio

Příklad konfigurace:

nejprve zjistim ID disku:

$ cat /proc/diskstats
 104    0 cciss/c0d0 28620311 262117 480954637 144392372 27258894 57877269 680496776 208876052 0 268644572 353404992
 104    1 cciss/c0d0p1 62 401 1069 420 40 32 576 2356 0 2564 2776
 104    2 cciss/c0d0p2 1483315 101904 21012416 14258620 14997887 37423217 419037344 1659521196 0 112408352 1673795000
 104    3 cciss/c0d0p3 27136927 159732 459941065 130133284 12260967 20454020 261458856 2844319796 0 186114948 2974575520
  11    0 sr0 0 0 0 0 0 0 0 0 0 0 0
   2    0 fd0 0 0 0 0 0 0 0 0 0 0 0

konfigurace v tomto případě bude vypadat takto:

KERNEL="2.6"
SOURCE="diskstats"
DEV="104_0,cciss/c0d0"

dnet

mailq

netstat

networks

ntp

part

ping

editujte modules/ping/settings a pridejte

# configure multiple destinations of the form:
# HOST=<host>,<description>
#
HOST=10.107.4.100,charon.hkfree.org
#atd.

TIP:
Kdyby se Vam nevytvarely grafy, ale data v souborech rrd byly. Tak zeditujte soubor v adresari hotsanicu modules/ping/diagrams.pl
VIMari, at pouzji tento command:

:%s/n:",$/n",/gc

ostatni at nahradi radky koncici na n:", za n", bez teto upravy jsem to nerozchodil!!!

( RRDtool 1.2.6 , /usr/src/hotsanic-0.5.0-pre5.tgz, perl5.8.7 )

sensors

# cesta ke vstupním hodnotám (podle načteného modulu jádra),
# jméno db, popisek, pozice ve vstupním souboru, násobící koeficient,     
# přičítací koeficient, jednotky
SENSOR="/usr/sbin/hddtemp -n /dev/hda |",hda,HDD1,1,1,0,°C,40,60
SENSOR="/sys/bus/i2c/drivers/w83627hf/1-0290/temp3_input,mb,MB temp,1,.001,0,C"

shoutcast

system

IRQ=<number>,<short description>

traffic

worms

Nastavení softwarových alarmů