Ho ammazzato il mio Cray-1, omicidio involontario.
Tutto è cominciato con la violazione innocente e non voluta della legge fondamentale dell’Universo applicata all’informatica: se qualcosa funziona non toccarla, incarnatasi nella versione “tieni Windows Update attivo su Windows Home Server”. In realtà nei casi più comuni è cosa buona e giusta, ma essendo il server completamente rivolto verso l’interno della rete e protetto molto aggressivamente da firewall su firewall, avrei dovuto pensarci prima. Soprattutto perché questo Windows Home Server aveva in carico pochissimi compiti:
- backup client per CrashPlan, responsabile di mandare nel cloud foto e documenti
- servizio rippatutto, un piccolo server in grado di leggere una memory card formato Nikon e di smistare foto e thumbnail in share organizzate per mese e anno. Qualcosa che avevo fatto in casa e di cui ero molto orgoglioso
- server per MyMovies
- server per condividere la stampante (con funzionalità di scanner con un altro artificio personale ad hoc) in rete
- server per backup dei PC, in realtà in pensione in attesa di tempi migliori da dedicare al backup dei PC di casa; cosa che sta avendo meno peso grazie ai vari dropbox e OneDrive
Tutto sommato un carico perfetto per una macchina virtuale in condivisione su Cray-1.
Tale server però aveva già mostrato segni di vetustà in quanto in alcune occasioni lo shutdown terminava o in un BSOD o non terminava affatto (neppure dopo 24 ore, test personale effettuato) e richiedendo quindi un hard reset. Non so se la colpa va attribuita a Crashplan (avido di RAM e CPU) o ai driver paravirtualizzati o altro, fatto sta che aveva cominciato a risentirne di ciò il servizio rippatutto, comodo in quanto basato su set-and-forget, richiedendo sessioni sempre più frequenti di baby-sitting. L’idea era di scrivere una app che mi facesse risparmiare tempo (vedasi) ma l’app pronta e funzionale dava segni di matto a causa di qualche impiccio non imputabile al codice stesso.
Poi durante le vacanze di Natale lo scanner ha smesso di funzionare e la causa imputabile a problemi software. Anche in questo caso il tempo investito nell’automation è stato abbondantemente ripagato, ma evidentemente qualche aggiornamento di Windows ha creato problemi ai driver dello scanner.
Se un server incaricato di quattro servizi smette di offrirne due e dà segni scleramento significa che è tempo di cominciare a preparare rimedi: messaggio subliminale accolto e recepito.
Con insolito ottimismo ho pensato: compro un disco a stato solido per installarci il sistema, ci aggiungo un pizzico di RAM (ho comprato un banchetto da 8GB da distribuire fra tutte le VM del Cray), ci aggiungo il vecchio disco meccanico da usare per il supporto del backup dei PC e vivo felice. Mi sfuggiva un particolare che avevo inconsciamente rimosso da tempo: ci avevo già provato ma Xen faceva casino con i dischi e non ho investigato oltre. Ma il prurito cominciava a diventare malanno e ho dovuto “mordere il proiettile” come dicono da queste parti.
Orbene: non so se per colpa di XenCenter o quant’altro, ma aggiungere un disco al sistema si è rivelato impossibile con la configurazione corrente. Pare che alcuni file di configurazione vengano completamente ignorati e sinceramente di capire più a fondo qual è il problema, dopo aver navigato per due giorni in cerca di soluzione, non è qualcosa che mi attira. Avrei risparmiato tempo e salute a corto termine se avessi comprato un disco SSD da un TB o giù di lì (ormai intorno ai 400$), ma a medio e lungo termine sentivo che la battaglia sarebbe stata solo rimandata.
Ho pensato di fare l’upgrade di XCP da sempre in versione 1.5 beta (legge fondamentale di cui sopra) e passare ad una più stabile, tipo la versione 1.6; che l’upgrade in place mi avrebbe preservato le VM e i miei sbattimenti si sarebbero ridotti al limite, ma l’informatica è una brutta bestia piena di promesse non mantenute o persino mantenibili. Mi son ritrovato che le VM erano tutte lì ma andavano tutte riconfigurate ex-novo, inclusa (e non me lo sarei mai aspettato!) una VM completamente virtuale su cui ci girava un XP di annata. Durante l’upgrade l’installer mi aveva persino tranquillizzato promettendo un backup della configurazione corrente in una partizione secondaria, ma i genii che hanno scritto l’installer non hanno messo l’opzione di restore nel CD di installazione. Con l’intenzione di rimandare l’upgrade a tempi più maturi, ho provato a fare un restore binario usando dd ma ho ottenuto un drive che non è più bootabile e, canaglia io, un po’ me l’aspettavo.
Morale della favola il Cray-1 così come era nato e stato concepito due anni fa è spento. Per emergenza ho collegato la stampate al mio router su cui gira tomato e sono rimasto felicemente sorpreso dal fatto che la condivisione della stampante, una delle poche cose che ancora funzionava e servizio da garantire al 99.99999% pena visita alla doghouse, è andata in buon porto senza tanti sbattimenti. Curioso ho provato a vedere se fosse possibile condividere anche lo scanner e mi sembra di aver ottenuto buone speranze: mi rincuora sapere che posso delegare alcuni dei servizi assegnati ad una macchina Windows a server che posso personalmente garantire maggiore stabilità (leggasi l’aggiornamento del firmware di un ruoter avrà cadenze di un paio di ordini di grandezza inferiori a quelli di qualsiasi macchina Windows di Paperopoli).
Sto pensando alle alternative adesso che, dopo due anni, posso permettermi il “lusso” di riconcepire il Cray: credo che testerò l’ultima versione del server VMWare che mi sembra meno pignolo di Xen nel supportare quello che supporta, ma penso che alla fine finirò per scegliere XenServer 6.2, tra tutti i mali quello che penso di conoscere meglio. Penso che sostituirò WHS con WSE (Windows Server Essentials, offre tutte le feature di WHS e di più) in quanto più nuovo anche se dover avere a che fare con Metro in una macchina virtuale o via RDC proprio non mi entusiasma. Il mio ottimismo informatico mi porta a credere che in due anni le cose saranno migliorate di parecchio. Il mio pessimismo cosmico mi dice che devo prepararmi ad un paio di notti insonni e avere un solido piano di rivitalizzazione degli Zombie. Alè.
UPDATE 1: la prima VM è resuscitata dal regno dei non-vivi, non dopo aver ceduto con l’onore delle armi: BSOD da boot a causa dei vecchi driver Xen. Note to self:
1) l’editor per unix nano non funziona bene e introduce dei line break casuali sulle linee editate
2) nell’esempio dei miei post precedenti non sono indicate (ovviamente) tutte le periferiche. Un buon lavoro però nonetheless.
UPDATE 2: altra buona notizia è che l’upgrade a XenServer 6.2 ha sistemato il baco che ha dato origine a tutto questo incasinamento. La prossima mossa è resuscitare la macchina virtuale Solaris, decisamente il passo più complicato di tutta la procedura.
UPDATE 3: dal supporto di XenServer 6.2:
Does XenServer support Solaris x86 as a guest operating system?
No. The experimental support for Solaris x86 has been removed from XenServer v6.2.0.
In parole povere adesso se l’hypervisor si accorge che stai facendo il boot di Solaris, ferma immediatamente la VM. Piano di backup: installazione di XCP 1.6 (basato su XenServer 6.1) e dita incrociate. Life sucks