PDA

View Full Version : [HOW-TO] Gestione remota via IPMI


dennyv
01-03-2009, 15:16
Ver. 0.1 prima bozza

Questa è un breve guida, ad uso anche come memorandum personale, per quella che è la gestione remota di un server via protocollo IPMI (http://en.wikipedia.org/wiki/IPMI).

Il protocollo IPMI (Intelligent Platform Management Interface) se unito ad una BMC (Baseboard management controller) permette di eseguire comodissime operazioni remote su di una macchina, ad un livello inferiore dell'OS, quindi indipendente dalla tipologia e dallo stato di funzionamento di esso.

La gestione può essere di tipo in-band (usando la stessa scheda Ethernet del sistema, benché con un indirizzo specifico) oppure out-of-band (come ad esempio con la DRAC Dell o LOM HP).

Il primo caso non richiede risorse aggiuntive, ma tutte le operazioni devono essere inoltrate dal client direttamente in protocollo IPMI attraverso i suoi tools. Inoltre la possibilità di intervento dipende dal funzionamento della BMC (integrata nella scheda madre) e della Ethernet (anch'essa integrata).

Il secondo caso necessita di una scheda dedicata di gestione, quale per esempio la DRAC della Dell.
Questa scheda è in realtà un PC embedded a se stante, autonomo e con una sua scheda di rete dedicata esclusivamente alla gestione remota. Questa particolare configurazione ha il vantaggio di un enorme semplificazione dell'uso, poiché è sufficiente, lato client, un browser per accedere alla gui della scheda.
I vantaggi sono l'indipendenza dal server vero e proprio (alimentazione sclusa) sia come componenti, sia come canale di gestione e l'utilizzo di una GUI relativamente semplice.

(Vedasi http://www.hwupgrade.it/articoli/business/1771/il-server-database-dietro-le-quinte-di-hwupgrade_5.html)

Questo How-to vuole, senza pretese, mostrare alcuni comandi basilari per l'amministrazione di un server Dell dotato di BMC, ma senza DRAC.

Sembra banale, ma questi comandi possono far risparmiare (e nel mio caso l'hanno fatto) un enormità di tempo quando il server si trova a svariati kilometri di distanza.

La macchina in esame è un Dell PowerEdge 1950III del 2008 dotato di Xeon Quad Core, ridondanza di RAM, dischi ed alimentazione e una Baseboard Management Controller versione 2.05.

Sulla macchina girano CentOS Linux 5 con XEN sul quale sono virtualizzate delle Debian. Inoltre all'interno del server è presente un SSD con CentOS predisposto per emergenza in caso di recovery del sistema principale.

Il client da cui vengono spediti i comandi è una OpenSUSE 11.0.

Cosa può fare l'IPMI?
Ecco alcune caratteristiche salienti di quello che ci permette di fare questo protocollo con i suoi tools:

Lettura dei sensori (temperature, voltaggi, ecc, dischi, allarmi, intrusioni chassis....)
Accensione, reboot, spegnimento soft/hard
Lettura dei log della BMC
....
Ridirezione della seriale su LAN (SOL, Serial-On-Lan) dal BIOS fino al SO

Nulla di straordinario... se non fosse che tutte queste attività sono completamente indipendenti dal sistema operativo. Ad esempio SOL vi permette di accedere al BIOS, alla configurazione Raid, all'SSD con il SO di ripristino da remoto.

Start How-To

Impostazioni BIOS
Per prima cosa è necessario impostare il BIOS del server nel seguente modo:

Attivare la comunicazione seriale (redirezione) ed impostarla sulla COM2
Impostare il tipo di terminale come VT100/VT220
Impostare la ridirezione dopo il boot come attiva


Impostazione del Remote Access Setup
Dopo aver modificato il BIOS con conseguente riavvio, entrare nella modalità di setup dell'accesso remoto premendo il tasto indicato su monitor (CTRL-E nel mio caso) e impostarlo così:

Impostare l'IPMI over LAN a ON
Entrare nel menu dei parametri LAN
Impostare l'IP a statico (consigliato)
Impostare l'indirizzo IP, la subnet e l'hostname (es. xxxx-ipmi)
Entrare nel menu di gestione degli utenti
Impostare un account utente con la password relativa
Generare una buona chiave casuale ed inserirla nella relativa voce di menu (in alcuni sistemi viene generata automaticamente)
Salvare e riavviare


Redirezione console sistemi Linux per SOL
Impostiamo GRUB in modo che sia con kernel standard che XEN anche il SO effettui la ridirezione della console di sistema sul Serial-On-Lan mantenendo comunque anche l'output a video da VGA.

Senza XEN:
title CentOS (2.6.18-92.1.22.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-92.1.22.el5 ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS0,57600n8
initrd /initrd-2.6.18-92.1.22.el5.img

Con XEN:
title CentOS (2.6.18-92.1.22.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-92.1.22.el5 console=com2,vga com2=57600,8n1
module /vmlinuz-2.6.18-92.1.22.el5xen ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS0,57600n8
module /initrd-2.6.18-92.1.22.el5xen.img

NON vanno inserite le righe per la ridirezione di GRUB!
#serial --unit=1 --speed=57600 --word=8 --parity=no --stop=1
#terminal --timeout=5 console serial

poiché la ridirezione in questo caso è affidata alla BMC.

Aggiungere la riga di seguito al file /etc/inittab
s0:12345:respawn:/sbin/agetty ttyS0 57600 vt100

Strumenti lato client
In particolare l'ambiente Linux/BSD è ricco di tool per l'IPMI. Uno di questi, che personalmente uso è impitool (http://ipmitool.sourceforge.net/) presente in praticamente tutte le distro Linux e i port BSD (anche per Darwin).

Il nome del pacchetto può variare a seconda della distribuzione/port da ipmitool a OpenIPMI-tools.

Il comando si richiama da terminale con la seguente sintassi
ipmitool [-c|-h|-v|-V] -U <user> -I lanplus -H <hostname> <command>

E' importante (ove supportato) l'uso del protocollo lanplus poiché supporta l'uso di funzioni avanzate con la Serial-On-Lan.

La connessione non avviene in chiaro, ma criptata tramite la chiave che abbiamo inserito in precedenza.

Operazioni più comuni
Ecco alcuni esempi delle operazioni più comuni da eseguire con i tool:

Help generale:
ipmitool -H 192.168.1.254 -U root -I lanplus help
Commands:
raw Send a RAW IPMI request and print response
i2c Send an I2C Master Write-Read command and print response
spd Print SPD info from remote I2C device
lan Configure LAN Channels
chassis Get chassis status and set power state
power Shortcut to chassis power commands
event Send pre-defined events to MC
mc Management Controller status and global enables
sdr Print Sensor Data Repository entries and readings
sensor Print detailed sensor information
fru Print built-in FRU and scan SDR for FRU locators
sel Print System Event Log (SEL)
pef Configure Platform Event Filtering (PEF)
sol Configure and connect IPMIv2.0 Serial-over-LAN
tsol Configure and connect with Tyan IPMIv1.5 Serial-over-LAN
isol Configure IPMIv1.5 Serial-over-LAN
user Configure Management Controller users
channel Configure Management Controller channels
session Print session information
sunoem OEM Commands for Sun servers
kontronoem OEM Commands for Kontron devices
picmg Run a PICMG/ATCA extended cmd
fwum Update IPMC using Kontron OEM Firmware Update Manager
firewall Configure Firmware Firewall
shell Launch interactive IPMI shell
exec Run list of commands from file
set Set runtime variable for shell and exec
hpm Update HPM components using PICMG HPM.1 file


Avvio della macchina:
ipmitool -H 192.168.1.254 -U root -I lanplus power on
Chassis Power Control: Up/On


Stato della macchina:
ipmitool -H 192.168.1.254 -U root -I lanplus power status
Chassis Power is on


Altri comandi di power:
ipmitool -H 192.168.1.254 -U root -I lanplus power help
chassis power Commands: status, on, off, cycle, reset, diag, soft


Lettura dei sensori:
ipmitool -H 192.168.1.254 -U root -I lanplus sensor
Ambient Temp | 31.000 | degrees C | ok | na | 3.000 | 8.000 | 42.000 | 47.000 | na
CMOS Battery | 0x0 | discrete | 0x0080| na | na | na | na | na | na
ROMB Battery | na | discrete | na | na | na | na | na | na | na
VCORE | 0x0 | discrete | 0x0180| na | na | na | na | na | na
VCORE | na | discrete | na | na | na | na | na | na | na
CPU VTT | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.5V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.8V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
3.3V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
5V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
1.5V PXH PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
5V Riser PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Backplane PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
Linear PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
0.9V PG | 0x0 | discrete | 0x0180| na | na | na | na | na | na
0.9V Over Volt | 0x0 | discrete | 0x0180| na | na | na | na | na | na
CPU Power Fault | 0x0 | discrete | 0x0180| na | na | na | na | na | na
FAN MOD 1A RPM | 9375.000 | RPM | ok | na | 1575.000 | na | na | na | na
FAN MOD 1B RPM | 9150.000 | RPM | ok | na | 1575.000 | na | na | na | na
FAN MOD 1C RPM | 5925.000 | RPM | ok | na | 1575.000 | na | na | na | na
FAN MOD 1D RPM | 6075.000 | RPM | ok | na | 1575.000 | na | na | na | na
FAN MOD 2A RPM | 9825.000 | RPM | ok | na | 1575.000 | na | na | na | na
[CUT]

Ridirezione seriale:
ipmitool -H 192.168.1.254 -U root -I lanplus sol activate
This is console ttyS0 on mexico
CentOS 5.2 (Linux x86_64 2.6.18-92.1.22.el5xen)

mexico login:

Nel caso della SOL alcuni comandi sono così rimappati:
KEY MAPPING FOR CONSOLE REDIRECTION:
Use the <ESC><0> key sequence for <F10>
Use the <ESC><!> key sequence for <F11>
Use the <ESC><@> key sequence for <F12>
Use the <ESC><Ctrl><M> key sequence for <Ctrl><M>
Use the <ESC><Ctrl><H> key sequence for <Ctrl><H>
Use the <ESC><Ctrl><I> key sequence for <Ctrl><I>
Use the <ESC><Ctrl><J> key sequence for <Ctrl><J>
Use the <ESC><X><X> key sequence for <Alt><x>, where x is any letter
key, and X is the upper case of that key
Use the <ESC><R><ESC><r><ESC><R> key sequence for <Ctrl><Alt><Del>


Questi sono solo alcuni degli esempi di utilità di questo protocollo, in particolare della versione 2 con supporto al protocollo di comunicazione lanplus.

IPMI e in particolare la Serial-On-Lan tornano utili soprattutto quando, ahimè, si hanno problemi alla macchina o al sistema operativo tali da richiedere la presenza di un operatore come se fosse di fronte al monitor, con il vantaggio però di poter operare a distanze illimitate, almeno per quanto concerne le prime operazioni di emergenza e/o la diagnosi.

(Continua....)

dennyv
01-03-2009, 15:16
post di servizio

Empyrium
02-03-2009, 11:35
Ottima guida! ;)

Dane
02-03-2009, 17:17
bel giocattolo e bell'howto :D

bvzm71
05-05-2009, 09:28
Salve
sto facendo alcuni test su un Dell PE 1850, con RH ES 4.0, con questo FW:

SEL Information
Version : 1.5 (v1.5, v2 compliant)
Entries : 13
Free Space : 7984 bytes
Percent Used : 2%
Last Add Time : 05/05/2009 09:35:14
Last Del Time : 06/21/2005 18:10:33
Overflow : false
Supported Cmds : 'Reserve'

ipmitool fwum info
FWUM extension Version 1.3

IPMC Info
=========
Manufacturer Id : 674
Board Id : 0
Firmware Revision : 1.72
FWUM Firmware Get Info returned c1


avrei 2 domande da porre...

1) usando ipmitool oppure ipmiutil , come posso vedere lo stato dei dischi ?

2) è possibile passare dalla 1.5 alla 2.0 anche se sono su un 1850 ?

Grazie
Marco :)

dennyv
05-05-2009, 12:45
Ciao!

Non ho mai avuto un 1850, ma credo che ufficialmente non si possa portare a 2.0 poiché la BMC è 1.5.

Ma non dovresti avere molte più limitazioni che con la 2.0.

Cosa intendi per "stato dei dischi"? Stato del RAID o proprio del disco fisico?

Per il RAID hai informazione sommarie nel report dei sensori, ma se vuoi informazioni più approfondite, vuoi eseguire dei task e controllare lo stato dei dischi fisici devi usare i relativi programmi via terminale (SSH o SOL). Nel caso del mio PE1950 uso mpt-status per la gestione del RAID e i task dei dischi logici, mentre l'utility specifica per il SAS 6i/R (LSI SAS1068E) per le impostazioni del controller e dei dischi fisici-

Ciao
Daniele

Salve
sto facendo alcuni test su un Dell PE 1850, con RH ES 4.0, con questo FW:

SEL Information
Version : 1.5 (v1.5, v2 compliant)
Entries : 13
Free Space : 7984 bytes
Percent Used : 2%
Last Add Time : 05/05/2009 09:35:14
Last Del Time : 06/21/2005 18:10:33
Overflow : false
Supported Cmds : 'Reserve'

ipmitool fwum info
FWUM extension Version 1.3

IPMC Info
=========
Manufacturer Id : 674
Board Id : 0
Firmware Revision : 1.72
FWUM Firmware Get Info returned c1


avrei 2 domande da porre...

1) usando ipmitool oppure ipmiutil , come posso vedere lo stato dei dischi ?

2) è possibile passare dalla 1.5 alla 2.0 anche se sono su un 1850 ?

Grazie
Marco :)

matcy
26-05-2009, 19:53
se non hai l'OS non hai neanche i tool LSI, ci vuole una strada alternativa.

via IPMI o con la DRAC non ho trovato niente, ergo si sfrutta la certificazione ESXi:
dischi & ESXi & nagios ==> http://cars.lostroncos.org/category/virtualization/

LastAngel
28-05-2009, 17:36
Ciao Dennyv
Anche io possiedo 3 server dell Dell PowerEdge 1950 e mi trovo molto bene con la DRAC5.
A breve dovrebbe arrivare il nuovo R610 con DRAC6 (vediamo un po cosa implementa appena mi arriva lo provo).

Ora vorrei chiederti un consiglio, sto sentendo anche intel per vedere cosa mi risponde, ma per caso conosci delle schede DRAC da montare su server Intel? (es schede madri s5000psl o più vecchie).
O quanto meno qualcosa di simile.
Per le nostre esigente il solo sistema di controllo senza console non mi basta. La DRAC invece mi permette di avere un'interfaccia web dove intervenire su ogni singolo aspetto del server.

Grazie per uno tuo consiglio, un saluto
Last

dennyv
30-05-2009, 13:47
se non hai l'OS non hai neanche i tool LSI, ci vuole una strada alternativa.

LiveCD + eseguibile della LSI (che se non erro è statico, quindi niente dipendenze strane)? Non ricordo se ha accesso fisico alla macchina...

Ciao Dennyv
Anche io possiedo 3 server dell Dell PowerEdge 1950 e mi trovo molto bene con la DRAC5.
A breve dovrebbe arrivare il nuovo R610 con DRAC6 (vediamo un po cosa implementa appena mi arriva lo provo).

Ora vorrei chiederti un consiglio, sto sentendo anche intel per vedere cosa mi risponde, ma per caso conosci delle schede DRAC da montare su server Intel? (es schede madri s5000psl o più vecchie).
O quanto meno qualcosa di simile.
Per le nostre esigente il solo sistema di controllo senza console non mi basta. La DRAC invece mi permette di avere un'interfaccia web dove intervenire su ogni singolo aspetto del server.

Grazie per uno tuo consiglio, un saluto
Last

Facci sapere come sono i nuovi R... dovrei prendere un R600 o un T600 per lavoro e la cosa mi interessa (esteticamente i *950 rimangono più belli però! :D)
Per gli Intel non saprei... che gestione hanno IPMI o LOM? Credo che le DRAC abbiano un firmware ad-hoc per la BMC Dell... però, alla fine è un server web che traduce i comandi in IPMI. Hanno qualcosa tipo OMSA?
Devo dire che mi intrigavano, ma la Dell è più diffusa come assistenza qua...

Ciao!
Daniele

matcy
30-05-2009, 14:04
LiveCD + eseguibile della LSI (che se non erro è statico, quindi niente dipendenze strane)? Non ricordo se ha accesso fisico alla macchina...
Ma senza riavviare ESXi :read:

LastAngel
02-06-2009, 16:18
che gestione hanno IPMI o LOM? Credo che le DRAC abbiano un firmware ad-hoc per la BMC Dell... però, alla fine è un server web che traduce i comandi in IPMI. Hanno qualcosa tipo OMSA?
Devo dire che mi intrigavano, ma la Dell è più diffusa come assistenza qua...

Ciao!
Daniele

Hanno una gestione IPMI ma non trovo tools per interfaccai web. Si Dell con la DRAC hanno un sistema adhoc molto utile.

domani sento direttamente intel cosa mi dice il loro supporto tecnico e vi terrò aggiornati sull' R610

P.S. i 950 piacciono anche a me :P

LastAngel
18-06-2009, 12:02
Ciao Ragazzi.

Dopo innumerevoli ritardi nell'acquisto oggi ho avuto la notizia che il server r610 arriva il 29..vabbè aspetterò.

però volevo dirvi (spero che vi serva come informazione) che quello che cercavo l'ho trovato.

per i server intel della serie "S" "5000" come la mia scheda amdre S5000PSL vi è un supporto denominato RMM2 sarebbe Intel Remote Management Module 2.

è un componente hardware che non fa nulla di meno della dell DRAC.

Saluti
Last