Istanza EC2 Windows che non riparte dopo un riavvio

Non è la prima volta che in Altralogica sperimentiamo problemi con le istanze di EC2. Qualche anno fa c’era stato un disservizio piuttosto pesante nel data center Irlandese mentre ieri, nostro malgrado, ci siamo imbattuti in un altro problema piuttosto pesante.

Di fatto, di recente, Amazon ha cominciato ad aggiornare il proprio parco macchine host su cui girano le virtual machine di EC2. Il che è un bene perché l’hardware nuovo è più veloce. Peccato, però, che non abbiano avvisato nessuno che le istanze Windows un po’ vecchiotte (per intenderci qualsiasi cosa precedente a Windows Server 2012, non parliamo di sistemi arcaici) non hanno i driver di rete per i nuovi host.

Questo cosa significa? Che se, per caso, quando riavviamo un’istanza, questa viene fatta partire su un host nuovo, la nostra virtual machine non andrà!

E’ incomprensibile come un colosso come Amazon non avvisi i propri clienti in queste situazioni. Ad ogni modo, dopo una concitata sessione al telefono con il loro staff tecnico, siamo riusciti a venirne a capo.

Riporto qui sotto la soluzione per chi, come me, dovesse incappare in questo problema di punto in bianco e non sappia da che parte guardare per trovare aiuto.

  • Scaricare l’ultima versione di EC2Config da qui: http://aws.amazon.com/developertools/5562082477397515
  • Scaricare i driver aggiornati della scheda di rete Citrix (contiene anche lo script per eliminare i vecchi driver RedHat): http://aws.amazon.com/developertools/2187524384750206
  • Stoppare l’istanza che non parte più.
  • Fare un detach del volume root della macchina.
  • Lanciare un’istanza (anche t1.micro o m1.small, non importa) di Windows 2003 su cui andrà montato il disco di root che non parte. E’ importante che sia un’istanza di 2003 perché così non fa casino con il disco di boot. Per trovarla, basta cercare Windows_Server-2003-R2_SP2 nelle community AMI.
  • Fare un attach del volume di root alla nuova istanza.
  • Collegarsi alla macchina Windows 2003. Il disco dovrebbe già essere visibile. Se non lo fosse, basta usare il Disk Manager per metterlo online ed assegnargli una lettera di unità.
  • Scaricare i due pacchetti di cui sopra su questa macchina e copiarli in una cartella citrix sul disco della macchina che non parte. (ad es. E:\citrix). Mettete pure tutti i file insieme, tanto non c’è nulla con lo stesso nome.
  • Date permessi full control all’utente everyone per quella cartella, giusto a scanso di equivoci
  • Lanciate regedit
  • Aprite il ramo HKEY_LOCAL_MACHINE
  • Dal menù file selezionare Load Hive…
  • Selezionate il file SOFTWARE dalla cartella E:\Windows\System32\config (ricordate che E: è il percorso assegnato nel mio caso, nel vostro potrebbe essere differente)
  • Chiamate questo hive 00Software
  • Navigate in HKEY_LOCAL_MACHINE\00Software\Microsoft\Windows\CurrentVersion\RunOnce
  • Create una nuova chiave di tipo stringa e chiamatela 01EC2Config e come valore mettete c:\citrix\ec2install -q
  • Create una nuova chiave di tipo stringa e chiamatela 02RHPurge e come valore mettete C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -file C:\citrix\Purge.ps1
  • Create una nuova chiave di tipo stringa e chiamatela 03Citrix e come valore mettete C:\citrix\Citrix_Xensetup.exe /S
  • A questo punto navigate in HKEY_LOCAL_MACHINE\00Software\Microsoft\WindowsNT\CurrentVersion\Winlogon
  • Create una nuova chiave di tipo stringa e chiamatela  AutoAdminLogon e come valore mettete 1
  • Create una nuova chiave di tipo stringa e chiamatela DefaultUsername e come valore mettete Administrator
  • Create una nuova chiave di tipo stringa  e chiamatela DefaultPassword e come valore mettete la vostra password di Administrator (va messa in chiaro)
  • A questo punto tornate su 00Software e andate su File -> Unload Hive..
  • Chiudete regedit e fate il logoff dalla macchina Windows 2003.
  • A questo punto, dalla console di EC2, fate un detach del disco dalla macchina Windows 2003 e fate un attach sulla vostra vecchia macchina che non parte più, mettendo come nome del device /dev/sda1
  • Riavviate la vostra vecchia istanza e lasciatela andare per qualche minuto. Si dovrà riavviare un paio di volte (di solito è automatico) togliere i vecchi driver di rete, installare quelli nuovi ed aggiornare EC2Config. Una volta finito sarà di nuovo online.
  • Buona fortuna!

Frontespizi condivisi

Per chi usa il servizio Fax di Windows Server (SBS e non).

I frontespizi vengono condivisi con una share di rete \\server\FxsSrvCp$

che corrisponde a:

C:\Documents and Settings\All Users\Application Data\Microsoft\Windows NT\MSFax\Common Coverpages

oppure per la versione italiana:

C:\Documents and Settings\All Users\Dati applicazioni\Microsoft\Windows NT\MSFax\Common Coverpages

Purge / Delete corrupted or Un-needed patches on WSUS Server

Finalmente una pagina in cui è descritto bene come fare a ripulire il contenuto dei file scaricati dal WSUS che non sono più necessari (ad esempio gli aggiornamenti superseded che sono stati in seguito declinati).

Purge / Delete corrupted or Un-needed patches on WSUS Server – PatchAholic…The WSUS Blog!

Riporto qui sotto, nel caso sparisca la pagina originale:

If you want to purge the downloaded patches on WSUS Server to cleanup / delete unneeded content, then you have to use the following tools;

  • WSUSDebug PurgeUnneededFiles
  • WSUSUTIL.exe Deleteunneededrevisions
  • WSUSUTIL.exe Reset
  • WSUSUTIL.exe Removeinactiveapprovals (optional)

WSUS Debug Tool: Run PurgeUnneededFiles command to Purge unneeded content. This command deletes all files not needed on the WSUS server.

WsusDebugTool.exe /Tool:PurgeUnneededFiles

***(NOTE: You have to decline the updates first.)

WSUSUTIL.exe deleteunneededrevisions: Purges the metadata for unnecessary update revisions from the database. This is useful for managing WSUS with an MSDE database.

***(NOTE: this command should only be run after stopping the Windows Server Update Services website in Internet Information Services MMC.)

WSUSUTIL.exe Reset: Now that you have purged the content, use ‘WSUSUTIL.exe reset’ which checks that every metadata row in the database has corresponding content stored in the file system.  If content is a missing or corrupted, WSUS downloads the content again.

WSUSUTIL.exe reset

***(NOTE: WSUSUTIL.exe is installed C:\Program Files\Update Services\Tools)

MOST IMPORTANT

The option “Download update files to this server only when updates are approved” must be checked / selected or else, it will re-download those “not needed” updates,during the next sychronization schedule.

Open WSUSAdmin Console – Click on Options – Click on Synchronization Options – Scroll down to Update Files and Languages Section – Click on Advanced – Click OK – Select “Download update files to this server only when updates are approved” – Click OK and save settings.

MORE INFORMATION

WSUS Debug Tool / Server Diagnostic Tool
http://download.microsoft.com/download/7/7/4/7745a34e-f563-443b-b4f8-3a289e995255/WSUS%20Server%20Debug%20Tool.EXE

WSUS Debug Tool Readme
http://download.microsoft.com/download/6/4/2/6422b1c7-9c7b-4682-9fe0-f56bd6ded2aa/readme.txt

Windows Server Update Services Downloads
http://www.microsoft.com/windowsserversystem/updateservices/downloads/default.mspx

Reset di Windows Update

Ogni tanto Windows Update fa le bizze e non vuole più saperne di installare gli aggiornamenti. Una possibile soluzione è questa:

– Crea una nuova cartella in C: (o la lettera che identifica il tuo Hard Disk) e rinominala WUA

– Scarica il programma “WindowsUpdateAgent30-x86” da QUI

– Salva l’applicazione nella cartella precedentemente creata WUA

– Clicca su START – ESEGUI – digita CMD – clicca OK (si apre il Prompt dei comandi)

– Ora scrivi: CD\WUA – e premi invio

– Ora scrivi: WindowsUpdateAgent30-x86.exe /wuforce – premi invio (rispetta gli spazi)