pátek 24. prosince 2010

pátek 10. prosince 2010

ESXi 4.1 status Unmanaged

Na serveru s VMware ESXi 4.1.0, 260247 provozuji podporovaný OS FreeBSD-7.3-RELEASE. Mám instalované tooly z portů open-vm-tools-nox11. V vSphere klientovi vidím
status toolů Unmanaged. Pátral jsem po tom čím to a proč tento nový status.

open-vm-tools-nox11-313025_1 Open VMware tools for FreeBSD VMware guests

Zde je odpověď:
http://communities.vmware.com/thread/281949

Stávající mnou známé statusy:

OK
Not instaled
Not running
Out of date
Unmanaged
Running (Current)

pátek 3. prosince 2010

Zabbix a snmpbuilder

Pokud se člověk nějakou dobu hrabe v monitorovacím nástroji ZABBIX, brzo dojde do stadia, že SNMP je fajn protokol pro získání monitorovacích údajů, ale pokud k zařízení nemám patřičný Template v Zabbixu tak je to hodně práce s laděním. Aplikace snmpwalk mi předá hodně, ale sestavit XML soubor s template je obtížnější.

Nástrojů pro vytvoženích vlastních Template je více, snmpbuilder mi přišel jako nejlepší. Bohužel je to zatím neoficiální rošíření, které napsal někdo s nicname giapnguyen. Je to kus php kódu, který se po drobných zásazích dá integrovat do zabbix-frontend.

SNMP Builder dělá to, že si načítá námi předložené MIB soubory a kontaktuje server nebo zařízení pomocí protokolu SNMP a dané entity porovnává s MIB souborem. Pokud hodnota existuje, máme možnost si ji přidat do námi vytvořeného Template.

Pro funkční použití je třeba mít od výrobce HW potřebné a přesné MIB soubory a hlavně SNMP na straně zařízení musí dané hodnoty korektně poskytovat.

Osobně jsem k tomuto nástroji došel při potřebě monitorovat RSA - Remote Supervisor Adapter nebo IMM karty u IBM serverů. Bohužel SNMP poskytuje málo hodnot a MIB soubory nemám asi ty správné.

Každopádně, za předpokladu že máme přesné MIB soubory a plně funkční SNMP službu, máme při monitorování vyhráno.

Pevně věřím že se časem tento nástroj dostane do oficiální verze ZABBIX serveru.

syslinux - pxeboot

Nedávno mi kolega ukazova, jak zprovoznil bootování po firemní sítí realizované na Windows serveru s bootováním do WinPE a do instalace driverů. Danou problematiku ladil i v testovacím prostředí ve VMware Workstation s linuxovým bootováním pomocí syslinux a pxeboot.

Bootování ze sítě jsem chtěl mít doma už dávno. A tak jsem pátral, zda syslinux je i pro muj sklepní kartón PC. Port existuje a tím se odstartovala realizace v domácí síti.

Potřebné nástroje:
dhcp
Domácí DHCP server provozuji na FreeBSD s tím, že jeho konfiguraci mám uloženou v LDAP. Využívám experimentální podpory. Na dané téma jsem si již něco poznamenával. Nyní jsem jen daný port povýšil na novější verzi.

isc-dhcp41-server-4.1.2,1 The ISC Dynamic Host Configuration Protocol server

cat /var/db/ports/isc-dhcp41-server/options
# This file is auto-generated by 'make config'.
# No user-servicable parts inside!
# Options for isc-dhcp41-server-4.1.2,1
_OPTIONS_READ=isc-dhcp41-server-4.1.2,1
WITH_DHCP_PARANOIA=true
WITH_DHCP_LDAP=true
WITH_DHCP_LDAP_SSL=true

Pro bootování ze sítě jsem přidal jen v dokumentaci popisované volby. Vše editováno v phpLDAPadmin :-)

filename "pxelinux.0";
next-server 192.168.0.1;

tftp
Trivial FTP server je součástí systému FreeBSD 8.x, pouštím pomocí inetd.

rc.conf
inetd_enable="YES" # Run the network daemon dispatcher (YES/NO).
inetd_program="/usr/sbin/inetd" # path to inetd, if you want a different one.
inetd_flags="-wW -C 60" # Optional flags to inetd

inetd.conf
tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot

syslinux
Syslinux je instalován z portů. Soubory potřebné pro fungování je nutné ručně vykopírovat do kořene tftp serveru a tím je /tftpboot

cd /usr/ports/sysutils/syslinux/
make install clean

syslinux-4.03 Syslinux for FreeBSD

Konfigurace syslinux a pxeboot je vcelku jednoduchá a je velmi dobře zdokumentována na stránkách projektu. Vyladit svou konfiguraci pro jednotlivé boot volby chvilku dá, ale není to nic složitého. Zajimavé jsou volby s podmínkami, kdy se nám dle architektury CPU zavede buť i386 nebo i64 systém. Bohužel nevyzkoušeno.

[root@sklep ~]# cat /tftpboot/pxelinux.cfg/default
#
# Default
#
DEFAULT menu.c32
PROMPT 0
MENU WIDTH 80
MENU MARGIN 10
MENU PASSWORDMARGIN 3
MENU ROWS 12
MENU TABMSGROW 18
MENU CMDLINEROW 18
MENU ENDROW 24
MENU PASSWORDROW 11
MENU TIMEOUTROW 20
MENU TITLE Main Menu
LABEL local
MENU LABEL Local ^Boot
localboot 0
LABEL memtest86+
MENU LABEL ^Memtest86+
kernel memtest86+.bin.foo
LABEL systemrescuecd
MENU LABEL ^SystemRescueCD x86 1.6.3
kernel rescuecd
append initrd=initram.igz dodhcp netboot=http://192.168.0.1:80/sysrcd.dat
LABEL freebsd
MENU LABEL ^FreeBSD 8.1 RELEASE
kernel memdisk
append initrd=FreeBSD-8.1-RELEASE-i386-bootonly.img harddisk
LABEL hdt
MENU LABEL ^Hardware Detect Tool
LINUX memdisk
INITRD hdt.img
# EOF

U SystemRescueCD je popis zavádění systému popsán zde. Velké soubory není vhodné servírovat pomocí tftp, proto se používá buť http, což je zrovna můj případ nebo nfs. Pro FreeBSD se musí vytvořit *.img soubor z malého boot.iso obrazu, návod pro starší systém je zde. Je třeba vytvořit větší soubor, protože od verze FreeBSD-6.2 se iso sobor pro FreeBSD-8.1 poněkud zvětšil. Návod je jasný a plně funkční. Snad jen na domácím ntb mi boot po nahrání kernelu vytuhne :-(. Ale na obouch stolních PC to funguje vše jak ma.

Dále si budu zprovozňovat dalši systémy, které chci bootovat ze sítě. Např. u Ubuntu je mechanismus verze od verze jiny. Vodítkem je tato nebo tato dokumentace, která není úplně aktuální.

Pro testování HW je vhodné použít např. Memtest86+ nebo Hardware Detection Tool (HDT).

Je mi jasné, že bootování ze sítě má vhodné nasazení a použití hlavně ve velkých sítích, ale našlo si cestu i ke mě domu :-)

středa 1. prosince 2010

zabbix bind9

Již dříve jsem se rozepsal o bind95. Tato verze podporuje konfiguraci, která nám na webovém rozhraní prezentuje stav DNS serveru, jeho cache počty dotazů za sekundu atd.

Protože jsem chtěl tyto hodnoty sledovat, inspiroval jsem se tímto příspěvkem do fora ZABBIX, kde je stručný popis, jak bind95 monitorovat.

Důležitá je tato volba v /etc/bind/named.conf.option

statistics-channels {
inet 127.0.0.1 port 8053 allow { 127.0.0.1; };
inet 192.168.1.10 port 8058 allow { 192.168.1.42/32; };
};


Pro stažení scriptů z repository použijeme svn

cd /usr/local && svn co http://svn.fisher.hu/bind9getstats

Na DNS serveru nastavíme v /etc/zabbix/zabbix_agentd.conf sledované hodnoty, které nám předají dané scripty.

UserParameter=bind9.queries,/usr/local/bind9getstats/bin/bind9getqueries.sh
UserParameter=bind9.memuse,/usr/local/bind9getstats/bin/bind9memuse.sh


Pak už jen stačí jen importovat template z fora zabbix_export.xml, který můžeme dále modifikovat a přidávat další sledované hodnoty.