240px-Diamond warning sign (Vienna Convention style).svg.png Content of this wiki is DEPRECATED 240px-Diamond warning sign (Vienna Convention style).svg.png

Servery nms

Z old-wiki.siliconhill.cz
Verze z 26. 10. 2015, 17:16; Fosfor (diskuse | příspěvky)

(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Přejít na: navigace, hledání


Obsah

Obecné informace

NMS je Network monitoring system. Hlavním cílem tohoto serveru je, monitorování dostupnosti a performance veškerého provozu na Strahově.


Cíle

  • performance a alarm monitoring serveru a sitovych prvku

Cílem je prozkoumat, zda je dany spravovaný server aktivní, pokud aktivní je, je vše v pořádku, v opačném případě zašle systém e-mail správci, zástupci a technickému manažerovi. Systém dále zašle SMS správci a jeho zástupci o nekativitě PC.

Monitorované platformy

Switche a routre

  • Cisco Catalyst 6509
  • Cisco 3750
  • Cisco 2950
  • Cisco 2960
  • Cisco Air Ap 1242AG-E-K9

Servery

  • HP Proliant 145 G2
  • HP Proliant DL380 G5
  • Různe x86a x64 servery
  • Dell ???

Jina zarizeni

  • KVM
  • APC Symmetra LX 16kVA

Operacni systemy

  • Debian GNU Linux Lenny
  • Debian GNU Linux 4.0 Etch
  • Debian GNU Linux 3.1 Sarge
  • FreeBSD 6.3
  • Microsoft Windows Server 2003 Standart x64
  • Microsoft Windows Server 2008

Komunikační protokoly vyuzivany k monitoringu

  • ICMP (ping)
  • SNMP (161/UDP)
  • SYSLOG (514/UDP)
  • ZABBIX AGENT (10050/TCP)
  • ZABBIX TRAP (10051/TCP)

Alarm monitoring

Dostupnost sítovych zarizeni

  • Monitorovaní stavu portů u jednotlivých propojů na páteři a blocích pomocí syslog správ nebo SNMP trapů
  • Monitorování dostupnosti síťových prvkú pomocí ICMP pingu
  • Seznam síťových prvků a monitorovaných interfaců:[xls]

Dostupnost serverů

  • Dostupnost serverů se ověřuje pomoci ICMP pingu.
  • Seznam monitorovaných serverů: [xls]

Dostupnost služeb

  • Monitorování dostupnosti TCP/UDP služeb je zabezpečen pomocí požadavků na daný TCP/UDP port a kontrolou bežíciho procesu
  • Seznam ověřovaných služeb: [xls]

Performance monitoring

  • Zátež CPU (load)
  • Vyuziti pameti
  • Mereni teplot
  • Chybovost sitovych interfacu
  • Stav baterie APC

Traffic monitoring

  • Monitoring trafficu in/out jednotlivých switchů
  • Monitoruje se pomocí SNMP dotazů jednou za 5 minut
  • Monitorují se všechny blokové i patrové routery + centralní
  • Software: cacti
  • URL: https://nms.siliconhill.cz/cacti/graph_view.php

Severity

  • Information
  • Warning
  • Average
  • High
  • Disaster

Default triggers

Linux servers

Name	                                                        Expression	                                        Severity
/etc/inetd.conf has been changed on server $server              {$server:vfs.file.cksum[/etc/inetd.conf].diff(0)}>0	Warning
/etc/passwd has been changed on server $server                  {$server:vfs.file.cksum[/etc/passwd].diff(0)}>0	        Average
/etc/services has been changed on server $server        	{$server:vfs.file.cksum[/etc/services].diff(0)}>0	Average
/usr/bin/ssh has been changed on server $server         	{$server:vfs.file.cksum[/usr/bin/ssh].diff(0)}>0	Average
/usr/sbin/sshd has been changed on server $server       	{$server:vfs.file.cksum[/usr/sbin/sshd].diff(0)}>0	Average
/vmlinuz has been changed on server $server	                {$server:vfs.file.cksum[/vmlinuz].diff(0)}>0	        Warning
Apache is not running on $server	                        {$server:proc.num[httpd].last(0)}<1                   	Average
Configured max number of opened files is too low on $server	{$server:kernel.maxfiles.last(0)}<512           	Information
Configured max number of processes is too low on $server	{$server:kernel.maxproc.last(0)}<256                    Information
Email (SMTP) server is down on $server                  	{$server:net.tcp.service[smtp].last(0)}=0	        Average
FTP server is down on $server                              	{$server:net.tcp.service[ftp].last(0)}=0	        Average
Host information was changed on $server                 	{$server:system.uname.diff(0)}>0	                Information
Hostname was changed on $server	                                {$server:system.hostname.diff(0)}>0	                Information
IMAP server is down on $server	                                {$server:net.tcp.service[imap].last(0)}=0	        Average
Inetd is not running on $server	                                {$server:proc.num[inetd].last(0)}<1	                Average
Lack of free memory on server $server	                        {$server:vm.memory.size[free].last(0)}<10000	        Average
Lack of free swap space on $server	                        {$server:system.swap.size[,free].last(0)}<100000	High
Low free disk space on $server volume /	                        {$server:vfs.fs.size[/,pfree].last(0)}<10	        High
Low free disk space on $server volume /home	                {$server:vfs.fs.size[/home,pfree].last(0)}<10	        High
Low free disk space on $server volume /opt	                {$server:vfs.fs.size[/opt,pfree].last(0)}<10	        High
Low free disk space on $server volume /tmp	                {$server:vfs.fs.size[/tmp,pfree].last(0)}<10	        High
Low free disk space on $server volume /usr	                {$server:vfs.fs.size[/usr,pfree].last(0)}<10	        High
Low free disk space on $server volume /var	                {$server:vfs.fs.size[/var,pfree].last(0)}<10	        High
Low number of free inodes on $server volume /	                {$server:vfs.fs.inode[/,pfree].last(0)}<10	        High
Low number of free inodes on $server volume /home           	{$server:vfs.fs.inode[/home,pfree].last(0)}<10	        High
Low number of free inodes on $server volume /opt        	{$server:vfs.fs.inode[/opt,pfree].last(0)}<10	        High
Low number of free inodes on $server volume /tmp        	{$server:vfs.fs.inode[/tmp,pfree].last(0)}<10	        High
Low number of free inodes on $server volume /usr	        {$server:vfs.fs.inode[/usr,pfree].last(0)}<10	        High
Mysql is not running on $server	                                {$server:proc.num[mysqld].last(0)}<1	                Average
News (NNTP) server is down on $server	                        {$server:net.tcp.service[nntp].last(0)}=0	        Average
POP3 server is down on $server	                                {$server:net.tcp.service[pop].last(0)}=0	        Average
Processor load is too high on $server	                        {$server:system.cpu.load[,avg1].last(0)}>5 	        Average
Server $server is unreachable	                                {$server:status.last(0)}=2	                        High
SSH server is down on $server	                                {$server:net.tcp.service[ssh].last(0)}=0	        Average
Sshd is not running on $server	                                {$server:proc.num[sshd].last(0)}<1	                Average
Syslogd is not running on $server	                        {$server:proc.num[syslogd].last(0)}<1	                Average
Too many processes on $server	                                {$server:proc.num[].last(0)}>300	                High
Too many processes running on $server	                        {$server:proc.num[,,run].last(0)}>10	                Average
Too may users connected on server $server	                {$server:system.users.num.last(0)}>50	                Average
Version of zabbix_agent(d) was changed on $server       	{$server:agent.version.diff(0)}>0	                Average
WEB (HTTP) server is down on $server	                        {$server:net.tcp.service[http].last(0)}=0	        Average
Zabbix_agentd is not running on $server	                        {$server:proc.num[zabbix_agentd].last(0)}<1	        Average
Zabbix_server is not running on $server	                        {$server:proc.num[zabbix_server].last(0)}<1	        Average
$server has just been restarted	                                {$server:system.uptime.last(0)}<600	                Information

Windows servers

Name                                                            Expression                                              Severity
Apache is not running on $server                                {$server:proc_cnt[httpd].last(0)}<1                     Average
c:\autoexec.bat has been changed on server $server              {$server:vfs.file.cksum[c:\autoexec.bat].diff(0)}>0     Average
Host information was changed on $server                         {$server:system.uname.diff(0)}>0                        Average
Lack of free memory on server $server                           {$server:vm.memory.size[free].last(0)}<10000            Average
Lack of free swap space on $server                              {$server:system.swap.size[,free].last(0)}<100000        Average
Low free disk space on $server volume c:                        {$server:vfs.fs.size[c:,free].last(0)}<10000            Average
Low free disk space on $server volume d:                        {$server:vfs.fs.size[d:,free].last(0)}<10000            Average
Processor load is too high on $server                           {$server:system.cpu.load[,avg1].last(0)}>5              Average
Server $server is unreachable                                   {$server:status.last(0)}=2                              Average
Too many processes on $server                                   {$server:proc.num[].last(0)}>300                        Average
Too many processes running on $server                           {$server:system[procrunning].last(0)}>10                Average
Version of zabbix_agent(d) was changed on $server               {$server:agent.version.diff(0)}>0                       Information
$server has just been restarted                                 {$server:system.uptime.last(0)}<600                     Average

Notifikace

Notifikace jsou rozesílane emailem pres smtp server service.sh.cvut.cz na adresu $server@sh.cvut.cz a přes GSM modul formou SMS (zatim neimplementovano).

Format email notifikace

Head>[NMS]: {TRIGGER.NAME}: {ITEM.LASTVALUE}

Body>{TRIGGER.NAME}: {ITEM.LASTVALUE}
Body>Date: {DATE} - {TIME}
Body>Ipaddress: {IPADDRESS}
Body>Severity: {TRIGGER.SEVERITY}

Format SMS notifikace

  • Maximálně 160 znaků.
Head>[NMS]: {TRIGGER.NAME}: {ITEM.LASTVALUE}

Body>{TRIGGER.NAME}: {ITEM.LASTVALUE}
Body>Date: {DATE} - {TIME}
Body>Ipaddress: {IPADDRESS}
Body>Severity: {TRIGGER.SEVERITY}

Informace o serveru nms.sh.cvut.cz

  • Operační systém : Debian Linux 6.0 Stable
  • Hardware : Dell Power Edge
  • Správce : Bangom
  • Zabbixadmin : Bangom

Software

  • zabbix 1.8.4 - alarm and performance monitoring
  • cacti 0.7.8c - monitoring sitoveho provozu na portech cisco routru
  • zenoss - syslog analyzer

Hostované služby

  • monitoring
  • natdet

Administrátorský (root) přístup na server

Bangoura Moris - správce serveru
Bangoura Moris - zabbix & cacti admin
DOPLNIT - NATdet admin

Ruzne navody

Zabbix agenta je možné stáhnout na www.zabbix.com. Nebo ho je mozne nainstalovat z balicku dane distribuce. Verze agenta nesmi byt vetsi, nez je verze serveru!

Nastaveni zabbix agenta - LINUX

/etc/zabbix/zabbix_agent.conf

Server=147.32.127.234
Timeout=3

/etc/zabbix/zabbix_agentd.conf

Server=147.32.127.234
ServerPort=10051
Hostname=$hostname_serveru.sh.cvut.cz
ListenPort=10050
ListenIP=$ipadresa_serveru
StartAgents=5
Timeout=3


Po nastavení těchto parametrů kontaktujte správce serveru NMS. Je nutné dodat také seznam služeb, které na serveru běží z důvodu monitoringu.

Nastaveni zabbix agenta - Windows

Na disky C:\ vytvořte složku "Zabbix" a v ní vytvořte soubor config.txt a adresář "log"

C:\Zabbix\config.txt


Server=147.32.127.234
ServerPort=10051
Hostname=$hostname_serveru.sh.cvut.cz
ListenPort=10050
ListenIP=$ipadresa_serveru
StartAgents=5
DebugLevel=3
PidFile=C:\Zabbix\log\zabbix_agentd.pid
LogFile=C:\Zabbix\log\zabbix_agentd.log
Timeout=3


Stáhněte si z internetových stránek zabbix agenta pro windows (verze agenta by neměla být novější, než je aktuálně nainstalovaná verze serverz na http://nms.sh.cvut.cz/zabbix):

 http://www.zabbix.com/download.php

Spusťe soubor zabbix_agentd.exe s následujícími parametry:

 zabbix_agentd.exe --config C:\Zabbix\config.txt --install

Pro lenochy jsem vytvořil vše ve spustitelném souboru na:

http://shell.sh.cvut.cz/~charlie/zabbix

Stačí pouze rozbalit, zeditovat config.txt (Hostname, ListenIP) a spustit install.bat.

Nastaveni snmpd serveru

/etc/snmp/snmpd.conf

com2sec local    localhost      shred
com2sec local    147.32.127.234 shred

group MyROGroup         v1         local
group MyROGroup         v2c        local
group MyROGroup         usm        local

view all   included .1                               80

access MyROGroup ""      any       noauth    exact all    none  none

syslocation CS SiliconHill
syscontact Jaro Frolo <$server@sh.cvut.cz>

Debian: Nastaveni kontroly aktualizacii

Pouziva sa binarka "check_apt" z nagios-plugins baliku.

# apt-get install nagios-plugins
# vim /etc/crontab
00 *    * * *   root    /usr/bin/apt-get update
# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=apt.status,/usr/lib/nagios/plugins/check_apt -n | awk '{ print substr($2,1,2) }'
# /etc/init.d/zabbix-agent restart

V zabbix webovom rozhrani treba nalinkovat template "Template_App_APT" k vasemu serveru:

  • V menu: "configuration"/"hosts" a potom vybrat v pravo hore "Hosts" a "Hostgroup: $server".
  • Potom kliknut na server a v ramceku "Linked templates" pridat template "Template_App_APT" a kliknut na "Save"!

Nastaveni cisco routru

Global settings:

logging 147.32.127.234
snmp-server enable traps
snmp-server enable authentication
snmp-server enable linkdown linkup
snmp-server enable coldstart warmstart
snmp-server enable traps chassis
snmp-server enable traps module
snmp-server enable traps ospf state-change
snmp-server enable traps ospf errors
snmp-server enable traps config-copy
snmp-server enable traps config
snmp-server enable traps cpu threshold

Interface settings:

logging event link-status
snmp trap link-status


Nastaveni serveru Dell a OpenManage

Debian+snmp+dell OMSA

http://john.parnefjord.se/node/39/print

http://blog.brachium-system.net/archives/70-Debian-Dell-OMSA-SNMP.html

Sprovozneni grafu pro network interface traffic

Defaultne je zbieranie dat pre interface zakazany, pretoze kazdy server ma interface pomenovany inak. Potrebujete teda najprv aktivovat prislusny "zberac dat" - item.

  1. Pokial mate vlasny ucet v zabbixe, prihlaste sa a vojdite do menu "Configuration/Host". Ak ucet nemate, kontaktujte spravcu na nms@sh.cvut.cz aby vam ucet vytvoril.
  2. V pravo potom zvolte "Items".
  3. Do kolonky "Host" vyberte kliknutim na select "Host group" v ktorej je vas server a zvolte ho.
  4. Kliknite na "filter"
  5. Zaskrtnite riadky, kde je nazov itemu "Interface traffic IN $interface", Interface traffic OUT $interface, zvolte dole v lavo "Activate selected" a potvrdte kliknutim na "Go"

Od tejto chvile sa zacnu nacitavat data o trafficu na prislusnom interfacu. V grafe by sa mali po par minutach objavit data.

TODO

Zabbix:

  • Update na novou verzi
  • v případě krize zasílání SMS
  • shutdown serverů při vypadnutí UPS
  • přístup na monitoring pro jednotlivé správce z DUSPSu, včetně autentizace pro jednotlivé servery, které mají na starosti
  • e-mailové notifikace na jednotlivé správce i do jednotné konference

Cacti:

  • update na novou verzi
Jmenné prostory

Varianty
Akce