HP ILO svarer ikke – igjen!

Hvis du har en Proliant server fra Hewlett-Packard så kommer denne med en egenskap som kalles Integrated Lights Out (ILO). Kort fortalt så lar den deg koble til serveren på ett ekstra nettverkskort, hvor du kan logge inn og styre serverens strøm, gjøre reset, samt bruke en «remote console».

Det er svært nyttig hvis uhellet er ute, og du mister kontakt med operativsystemet på serveren – spesielt når serveren står i hostingsenter, og du er hjemme en lørdag kveld. Dessverre er ikke ILO selv helt stabil. Jeg har opplevd at det er umulig å logge inn, samt noen ganger at den heller ikke svarer på ping. Dette er katastrofalt hvis du får serverkrasj!

For å fikse dette, så må det gjøres en reset av ILO selv. Dette kan gjøres fysisk ved at man på stedet tar en shutdown og napper ut strømkabelen, for så å starte opp igjen. Det er selvfølgelig ikke holdbart på en server som skal ha oppetid!

Jeg har overvåkning av ILO på mine servere, og får varsling på SMS hvis de ikke svarer. Det er helt nødvendig, siden man må være sikker på å ha ILO’s muligheter hvis et server OS går ned.

Heldigvis finnes det en måte å gjøre reset av ILO fra serverens operativsystem. Du må installere HP’s verktøy «hponcfg». Dette finner du her. Verktøyet finnes for Windows og flere Linux-distribusjoner.

På Ubuntu og Debian kan du legge til linjen under i /etc/apt/sources.list

deb http://downloads.linux.hp.com/SDR/downloads/ProLiantSupportPack/ natty current/non-free

Deretter kjører du disse kommandoene

sudo apt-get update
sudo apt-get install hponcfg

hponcfg lar deg skrive ut ILO’s konfigurasjon, samt gjøre endringer i denne. Kjører du hponcfg uten parametere vil du få en liste over tilgjengelige kommandoer.

Får å tvinge ILO til en reset, så må du gjøre endringer i nettverksoppsettet. Dette kan gjøres relativt harmløst ved kun å endre DNS-innstillingene. Lag en fil som heter feks. ilo-reset.txt

Den skal se ut som dette, med dine egne verdier;

<RIBCL VERSION="2.1">
<LOGIN USER_LOGIN="Administrator" PASSWORD="boguspassword">
<RIB_INFO MODE="write">
<MOD_NETWORK_SETTINGS>
<DNS_NAME VALUE = "hostnavn"/>
<PRIM_DNS_SERVER value = "8.8.8.8"/>
<DOMAIN_NAME VALUE = "dittdomene.no"/>
</MOD_NETWORK_SETTINGS>
</RIB_INFO>
</LOGIN>
</RIBCL>

Passordet må være der for rett xml-syntaks, men brukes ikke

Deretter kjører du kommandoen

sudo hponcfg -f ilo-reset.txt

ILO skal nå ta en reset, og igjen svare på ping. Du kan igjen sove godt!

PHP Objects, Patterns and Practice

  • Forfatter: Matt Zandstra
  • Tredje utgave
  • ISBN-13: 978-1430229254
  • Publisert: June 7, 2010
  • Kjøp

 

Boken er delt inn i tre deler, som hver tar for seg punktene i tittelen. Første del om objekter er en hurtiginnføring i klasser og objekter, slik de fungerer i PHP 5.3. HVis du kommer fra et annet objektorientert språk, så er dette en helt grei innføring.

Hvis selve konseptet om objektorientert programmering er nytt for deg, så anbefaler jeg at du leser en innføring i dette først. Dette er ikke en bok som forklarer hvorfor, men heller hvordan man best kan programmere i objektorientert stil.

Bokens andre del er om Design Patterns – designmønstre på norsk, og er helt klart den beste delen. Denne starter med en introduksjon til designmønstre, og har gode forklaringer på både hvorfor og hvordan. Nytten av forskjellige mønstre, dvs. måter for å løse kjente problemstillinger, beskrives med gode   eksempler som et lette å følge. Mønstrene er organisert i kategorier basert på de problem det er ment å løse, og det finnes flere mønstre i hver kategori.

Koden i eksemplene er lettlest og de fleste mønstre løser en problemstilling som vil være kjent for mange programmere. Bokens seksjon om designmønstre er verdt dens kostnad alene, og gjør boken til en referanse du kan slå opp i når du møter nye problemstillinger i ditt daglige arbeide.

Den siste seksjonen i boken er om «Practice», konsentrert om teknikker og verktøy for programmeringen. Felt som berøres er bla. dokumentasjon, versjonskontroll, testing og utrulling. Boken dekker noen verktøy for disse feltene, men bruker ofte for mye tid på installeringen av verktøyene, og ikke hvordan best bruke de. Dette er bokens svakeste del, men den fungerer for å gi deg ideér til ting som kan være verdt å finne ut mer om på egen hånd.

For å konkludere, så vil jeg si at dette er en bok som er vel verdt et kjøp hvis du ønsker å programmere i objektorientert stil i PHP. Den er spesielt nyttig for en innføring i designmønstre. De fleste andre bøker om dette har eksempler i Java eller C++, så en bok med så mange gode eksempler i PHP er ett funn!

Boken er ikke ment for nybegynnere. Selv om den er lettlest, så anbefaler jeg at du har en grunnleggende forståelse for PHP på plass, og at du har litt erfaring praktisk bruk av dette i arbeide.