Risolvi i problemi relativi ai driver PV nelle istanze di Windows - Amazon Elastic Compute Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risolvi i problemi relativi ai driver PV nelle istanze di Windows

Le seguenti solo soluzioni a problemi che si potrebbero verificare con vecchie immagini Amazon EC2 e driver PV.

Windows Server 2012 R2 perde la connettività di rete e archiviazione dopo un riavvio dell'istanza

Importante

Questo problema si verifica solo con AMI disponibili prima del settembre 2014.

Le Amazon Machine Image (AMI) per Windows Server 2012 R2 rese disponibili prima del 10 settembre 2014 possono perdere connettività di rete e archiviazione dopo un riavvio dell'istanza. L'errore nel registro di AWS Management Console sistema indica: «Difficoltà a rilevare i dettagli del driver PV per Console Output». La perdita di connettività è causata dalla funzione di pulizia Plug and Play. Questa caratteristica ricerca e disabilita i dispositivi inattivi del sistema ogni 30 giorni. La funzione identifica erroneamente il dispositivo di rete EC2 come inattivo e lo rimuove dal sistema. Quando ciò accade, l'istanza perde la connettività di rete dopo un riavvio.

Per i sistemi ritenuti potenzialmente soggetti a tale problema, puoi scaricare ed eseguire un aggiornamento in sede del driver. Se non riesci a completare tale aggiornamento, puoi eseguire uno script helper. Questo stabilisce se l'istanza è interessata. Se lo è, e se il dispositivo di rete Amazon EC2 non è stato rimosso, lo script disabilita la scansione di pulizia Plug and Play. Se il dispositivo di rete è stato rimosso, lo script ripara il dispositivo, disabilita la scansione di pulizia Plug and Play e abilita il riavvio dell'istanza con la connessione di rete abilitata.

Scegliere come risolvere i problemi

Sono disponibili due metodi per ripristinare la connettività di rete e archiviazione di un'istanza interessata dal problema. Seleziona uno dei seguenti metodi:

Metodo Prerequisiti Panoramica della procedura
Metodo 1 – Connettività di rete migliorata La connettività di rete migliorata è disponibile solo in un cloud privato virtuale (VPC) che richiede un tipo di istanza C3. Se il server non utilizza al momento il tipo di istanza C3, è necessario cambiarlo temporaneamente. Cambia il tipo di istanza del server in istanza C3. La connettività di rete migliorata ti permette quindi di connetterti all'istanza interessata e di correggere il problema. Dopo aver risolto il problema, modifica l'istanza riportandola al tipo originale. Questo metodo è in genere più rapido del Metodo 2 e meno soggetto a errori da parte dell'utente. Saranno applicati costi aggiuntivi finché l'istanza C3 resta in esecuzione.
Metodo 2 – Configurazione del registro Capacità di creare o accedere a un secondo server. Capacità di modificare le impostazioni del registro. Distacca il volume root dall'istanza interessata, collegalo a un'istanza differente, connettiti e apporta le modifiche nel registro. Saranno applicati costi aggiuntivi finché il server aggiuntivo resta in esecuzione. Questo metodo è più lento del Metodo 1, ma si è dimostrato efficace in situazioni in cui il Metodo 1 non ha consentito la risoluzione del problema.

Metodo 1 – Connettività di rete migliorata

  1. Aprire la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, seleziona Instances (Istanze).

  3. Individua l'istanza interessata. Selezionare l'istanza e scegliere Instance state (Stato istanza), quindi Stop (Arresta).

    avvertimento

    Quando interrompi un'istanza, i dati presenti sui volumi dell'instance store vengono cancellati. Per non perdere i dati dei volumi di archivio istanza, è opportuno creare una copia di backup nell'archiviazione persistente.

  4. Dopo l'arresto dell'istanza, creare un backup. Selezionare l'istanza e scegliere Actions (Operazioni), Image and templates (Immagine e modelli), quindi scegliere Create image (Crea immagine).

  5. Cambiare il tipo di istanza con qualsiasi tipo di istanza C3.

  6. Avviare l'istanza.

  7. Connect all'istanza utilizzando Remote Desktop, quindi scarica il pacchetto AWS PV Drivers Upgrade sull'istanza.

  8. Estrai i contenuti della cartella ed esegui AWSPVDriverSetup.msi.

    Dopo aver eseguito l'MSI, l'istanza si riavvia automaticamente e quindi aggiorna i driver. L'istanza non sarà disponibile per un massimo di 15 minuti.

  9. Una volta completato l'aggiornamento e dopo che l'istanza ha superato entrambi i controlli dello stato nella console Amazon EC2, connettersi all'istanza utilizzando Desktop remoto e verificare che i nuovi driver siano istallati. In Gestione dispositivi, in Controller di storage, individua AWS Scheda host storage PV. Verifica che la versione del driver sia la stessa dell'ultima versione elencata nella tabella della cronologia delle versioni dei driver. Per ulteriori informazioni, consulta AWS cronologia dei pacchetti di driver PV.

  10. Arrestare l'istanza e modificarla riportandola al suo tipo originale.

  11. Avviare l'istanza e ripristinare un utilizzo normale.

Metodo 2 – Configurazione del registro

  1. Aprire la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, seleziona Instances (Istanze).

  3. Individua l'istanza interessata. Seleziona l'istanza e scegli Instance state (Stato istanza), quindi Stop instance (Arresta istanza).

    avvertimento

    Quando interrompi un'istanza, i dati presenti sui volumi dell'instance store vengono cancellati. Per non perdere i dati dei volumi di archivio istanza, è opportuno creare una copia di backup nell'archiviazione persistente.

  4. Scegli Launch Instance (Avvia istanza) e crea un'istanza temporanea di Windows Server 2008 o Windows Server 2012 nella stessa zona di disponibilità dell'istanza interessata. Non creare un'istanza Windows Server 2012 R2.

    Importante

    Se non crei l'istanza nella stessa Zona di disponibilità dell'istanza interessata, non potrai collegare il volume root dell'istanza interessata sulla nuova istanza.

  5. Nel riquadro di navigazione, selezionare Volumes (Volumi).

  6. Individua il volume root dell'istanza interessata. Scollega il volume e collega il volume all'istanza temporanea creata in precedenza. Collegala con il nome del dispositivo predefinito (xvdf).

  7. Utilizzare Desktop remoto per collegarsi all'istanza temporanea, quindi usare l'utilità Disk Management (Gestione disco) per rendere il volume disponibile per l'uso.

  8. Nell'istanza temporanea, aprire la finestra di dialogo Run (Esegui), digitare regedit e premere Invio.

  9. Nel riquadro di navigazione dell'editor del Registro, scegliere HKEY_Local_Machine, quindi dal menu File scegliere Load Hive (Carica Hive).

  10. Nella finestra di dialogo Load Hive (Carica Hive), andare a Volume interessato\Windows\System32\config\System e digitare un nome temporaneo nella finestra di dialogo Key Name (Nome chiave). Ad esempio, specifica OldSys.

  11. Nel riquadro di navigazione dell'editor del Registro, individuare le chiavi seguenti:

    HKEY_LOCAL_MACHINE\ your_temporary_key_name\ 001\ Control\ Class\ 4d36e97d-e325-11ce-bfc1-08002be10318 ControlSet

    HKEY_LOCAL_MACHINE\ nome_chiave_temporaneo\ ControlSet 001\ Control\ Class\ 4d36e96a-e325-11ce-bfc1-08002be10318

  12. Per ogni chiave, fate doppio clic, immettete un valore di UpperFiltersXENFILT, quindi scegliete OK.

    Chiave di registro per il volume interessato.
  13. Individuare la chiave seguente:

    HKEY_LOCAL_MACHINE\ your_temporary_key_name\ 001\ Services\ XENBUS\ Parameters ControlSet

  14. Crea una nuova stringa (REG_SZ) con il nome e il seguente valore: ActiveDevice

    PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01

  15. Individuare la chiave seguente:

    HKEY_LOCAL_MACHINE\ your_temporary_key_name\ 001\ Services\ XENBUS ControlSet

  16. Cambiare il valore Count (Conteggio) da 0 a 1.

  17. Individuare ed eliminare le chiavi seguenti:

    HKEY_LOCAL_MACHINE\ nome_chiave_temporanea\ ControlSet 001\ Services\ xenvbd\ StartOverride

    HKEY_LOCAL_MACHINE\ nome_chiave_temporaneo\ ControlSet 001\ Services\ xenfilt\ StartOverride

  18. Nel riquadro di navigazione dell'editor del Registro, scegliere la chiave temporanea creata contestualmente alla prima apertura dell'editor del Registro.

  19. Dal menu File, scegliere Unload Hive (Scarica Hive).

  20. Nell'utilità Disk Management (Gestione disco), scegliere l'unità collegata in precedenza, aprire il menu contestuale (pulsante destro del mouse) e scegliere Offline.

  21. Nella console Amazon EC2, distaccare il volume interessato dall'istanza temporanea e ricollegarlo all'istanza Windows Server 2012 R2 con il nome dispositivo /dev/sda1. Devi specificare questo nome del dispositivo per indicare il volume come volume root.

  22. Avviare l'istanza.

  23. Connect all'istanza utilizzando Remote Desktop, quindi scarica il pacchetto AWS PV Drivers Upgrade sull'istanza.

  24. Estrai i contenuti della cartella ed esegui AWSPVDriverSetup.msi.

    Dopo aver eseguito l'MSI, l'istanza si riavvia automaticamente e quindi aggiorna i driver. L'istanza non sarà disponibile per un massimo di 15 minuti.

  25. Una volta completato l'aggiornamento e dopo che l'istanza ha superato entrambi i controlli dello stato nella console Amazon EC2, connettersi all'istanza utilizzando Desktop remoto e verificare che i nuovi driver siano istallati. In Gestione dispositivi, in Controller di storage, individua AWS Scheda host storage PV. Verifica che la versione del driver sia la stessa dell'ultima versione elencata nella tabella della cronologia delle versioni dei driver. Per ulteriori informazioni, consulta AWS cronologia dei pacchetti di driver PV.

  26. Cancella o interrompi l'istanza temporanea creata durante questa procedura.

Esecuzione dello script di correzione

Se non riesci a eseguire un aggiornamento in sede del driver o a migrare a un'istanza più recente, puoi eseguire lo script di correzione per risolvere i problemi causati dall'attività di pulizia Plug and Play.

Per eseguire lo script di correzione
  1. Aprire la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, seleziona Instances (Istanze).

  3. Scegliere l'istanza per la quale si intende eseguire lo script di correzione. Selezionare Instance state (Stato istanza), quindi Stop instance (Arresta istanza).

    avvertimento

    Quando interrompi un'istanza, i dati presenti sui volumi dell'instance store vengono cancellati. Per non perdere i dati dei volumi di archivio istanza, è opportuno creare una copia di backup nell'archiviazione persistente.

  4. Dopo l'arresto dell'istanza, creare un backup. Selezionare l'istanza e scegliere Actions (Operazioni), Image and templates (Immagine e modelli), quindi scegliere Create image (Crea immagine).

  5. Selezionare Instance state (Stato istanza), quindi Start instance (Avvia istanza).

  6. Connettiti all'istanza utilizzando Remote Desktop, quindi scarica la RemediateDriverIssue cartella.zip sull'istanza.

  7. Estrarre i contenuti della cartella.

  8. Eseguire lo script di correzione in base alle istruzioni nel file Readme.txt. Il file si trova nella cartella in cui è stato estratto RemediateDriverIssue il file.zip.

Offload TCP

Importante

Questo problema non si applica alle istanze che eseguono driver di rete AWS PV o Intel.

Per impostazione predefinita, l'offload TCP viene abilitato per i driver Citrix PV nelle AMI Windows. Se riscontri errori a livello di trasporto o anomalie nella trasmissione dei pacchetti (come indicato su Windows Performance Monitor), ad esempio quando stai eseguendo determinati carichi di lavoro SQL, potrebbe essere necessario disabilitare questa caratteristica.

avvertimento

La disabilitazione dell'offload TCP potrebbe ridurre le prestazioni di rete dell'istanza.

Per disabilitare l'offload TCP per Windows Server 2012 e 2008
  1. Connettersi all'istanza ed eseguire l'accesso come amministratore locale.

  2. Se si utilizza Windows Server 2012, premere Ctrl+Esc per accedere alla schermata Start (Avvia), quindi scegliere Control Panel (Pannello di controllo). Se si utilizza Windows Server 2008, scegliere Start (Avvia) e selezionare Control Panel (Pannello di controllo).

  3. Scegliere Network and Internet (Rete e Internet), quindi Network and Sharing Center (Centro connessioni di rete e condivisione).

  4. Scegliere Change adapter settings (Modifica le impostazioni della scheda).

  5. Fai clic con il pulsante destro del mouse su Citrix PV Ethernet Adapter #0 (Scheda Ethernet Citrix PV #0) e selezionare Properties (Proprietà).

    Proprietà di connessione alla rete locale.
  6. Nella finestra di dialogo Local Area Connection Properties (Proprietà connessione alla rete locale), scegliere Configure (Configura) per aprire la finestra di dialogo Citrix PV Ethernet Adapter #0 Properties (Proprietà scheda Ethernet Citrix PV #0).

  7. Nella scheda Advanced (Avanzato), disabilitare tutte le proprietà ad eccezione di Correct TCP/UDP Checksum Value (Correggi il valore checksum TCP/UDP). Per disabilitare una proprietà, selezionarla da Property (Proprietà) e scegliere Disabled (Disattivato) in Value (Valore).

  8. Seleziona OK.

  9. Nella finestra del prompt dei comandi, eseguire i comandi seguenti.

    netsh int ip set global taskoffload=disabled netsh int tcp set global chimney=disabled netsh int tcp set global rss=disabled netsh int tcp set global netdma=disabled
  10. Riavviare l'istanza.

Sincronizzazione oraria

Prima del rilascio del 13/02/2013 dell'AMI Windows, l'agente guest Citrix Xen poteva definire l'ora in modo errato. Ciò può determinare la scadenza della locazione DHCP. In caso di problemi di connessione all'istanza, potresti dover aggiornare l'agente.

Per stabilire se disponi dell'agente guest Citrix Xen aggiornato, controlla se il file C:\Program Files\Citrix\XenGuestAgent.exe è datato marzo 2013. Se la data è precedente, aggiorna il servizio d'agente guest Citrix Xen. Per ulteriori informazioni, consulta Aggiornamento del servizio di agente guest Citrix Xen.

I carichi di lavoro che utilizzano più di 20.000 IOPS su disco subiscono una riduzione delle prestazioni dovuta ai colli di bottiglia della CPU

È possibile che si verifichi questo problema se si utilizzano istanze di Windows che eseguono driver AWS PV che sfruttano più di 20.000 IOPS e si verifica un codice di controllo dei bug 0x9E: USER_MODE_HEALTH_MONITOR.

Le operazioni di lettura e scrittura su disco (iOS) nei driver AWS PV avvengono in due fasi: preparazione dell'IO e completamento dell'IO. Per impostazione predefinita, la fase di preparazione viene eseguita su un singolo core arbitrario. La fase di completamento viene invece eseguita sul core 0. La quantità di elaborazione necessaria per elaborare un IO varia in base alle dimensioni e ad altre proprietà. Alcuni IO esegue un'elaborazione maggiore nella fase di preparazione mentre altri nella fase di completamento. Quando un'istanza gestisce più di 20.000 IOPS, la fase di preparazione o di completamento può comportare un collo di bottiglia in cui la CPU su cui viene eseguita è al 100% di capacità. Il fatto che la fase di preparazione o di completamento diventi un collo di bottiglia dipende dalle proprietà degli IO utilizzati dall'applicazione.

A partire dai driver AWS PV 8.4.0, il carico della fase di preparazione e della fase di completamento può essere distribuito su più core, eliminando i colli di bottiglia. Ogni applicazione utilizza proprietà IO diverse. Pertanto, l'applicazione di una delle seguenti configurazioni potrebbe aumentare, ridurre o non influire affatto sulle prestazioni dell'applicazione. Dopo aver applicato una di queste configurazioni, monitorare l'applicazione per verificare di raggiungere le prestazioni desiderate.

  1. Prerequisiti

    Prima di iniziare questa procedura di risoluzione dei problemi, verificare i seguenti prerequisiti:

  2. Osservazione del carico della CPU sull'istanza

    Puoi utilizzare Gestione attività di Windows per visualizzare il carico su ogni CPU in modo da determinare potenziali colli di bottiglia per l'IO del disco.

    1. Verifica che l'applicazione sia in esecuzione e gestisca il traffico come il carico di lavoro di produzione.

    2. Connettiti all'istanza tramite RDP.

    3. Seleziona il menu Avvia sull'istanza.

    4. Specifica Task Manager nel menu Avvia per aprire Gestione attività.

    5. Se Gestione attività visualizza la visualizzazione di riepilogo, seleziona Maggiori dettagli per espandere la vista dettagliata.

    6. Scegliere la scheda Performance (Prestazioni).

    7. Seleziona CPU nel riquadro sinistro.

    8. Fai clic con il pulsante destro del mouse sul grafico nel riquadro principale e seleziona Cambia il grafico in > Processori logici per visualizzare ogni singolo core.

    9. A seconda del numero di core presenti nella tua istanza, potresti vedere le righe che visualizzano il carico della CPU nel tempo oppure potresti semplicemente vedere un numero.

      • Se vedi grafici che mostrano il carico nel tempo, cerca le CPU in cui il riquadro è quasi completamente ombreggiato.

      • Se visualizzi un numero su ciascun core, cerca i core che riportano costantemente il 95% o un valore maggiore.

    10. Prendi nota se per il core 0 o un altro core si sta verificando un carico pesante.

  3. Scelta della configurazione da applicare
    Nome configurazione Quando applicare questa configurazione Note
    Default configuration Il carico di lavoro è inferiore a 20.000 IOPS o altre configurazioni non hanno migliorato le prestazioni o la stabilità.

    Per questa configurazione, l'IO si verifica su pochi core che possono beneficiare di carichi di lavoro più piccoli aumentando la localizzazione della cache e riducendo la commutazione di contesto.

    Allow driver to choose whether to distribute completion Il carico di lavoro sta conducendo oltre 20.000 IOPS e si osserva un carico moderato o elevato sul core 0 . Questa configurazione è consigliata per tutte le istanze Xen che utilizzano PV 8.4.0 o versioni successive e che utilizzano più di 20.000 IOPS, indipendentemente dal fatto che si riscontrino o meno problemi.
    Distribute both preparation and completion Il carico di lavoro sta utilizzando oltre 20.000 IOPS e consente al driver di scegliere la distribuzione che non ha migliorato le prestazioni o per un core diverso da 0 si sta verificando un carico elevato. Questa configurazione consente la distribuzione sia della fase di preparazione IO che della fase di completamento.
    Nota

    Si consiglia di non distribuire la preparazione IO senza distribuire anche il completamento (impostazione DpcRedirection senza impostazione NotifierDistributed) perché la fase di completamento è sensibile al sovraccarico dovuto alla fase di preparazione quando la fase di preparazione è in esecuzione in parallelo.

    Valori chiave del registro
    • NotifierDistributed

      Valore 0 o non presente — La fase di completamento verrà eseguita sul core 0 .

      Valore 1 — Il driver sceglie di eseguire la fase di completamento sul core 0 o un core aggiuntivo per disco collegato.

      Valore 2 — Il driver esegue la fase di completamento su un core aggiuntivo per ogni disco collegato.

    • DpcRedirection

      Valore 0 o non presente — La fase di preparazione verrà eseguita su un unico core arbitrario.

      Valore 1 — La fase di preparazione è distribuita su più core.

    Configurazione di default

    Applica la configurazione predefinita con le versioni dei driver AWS PV precedenti alla 8.4.0 o se si osserva un peggioramento delle prestazioni o della stabilità dopo l'applicazione di una delle altre configurazioni in questa sezione.

    1. Connettiti all'istanza tramite RDP.

    2. Aprire un nuovo prompt dei PowerShell comandi come amministratore.

    3. Emettere i seguenti comandi per rimuovere le chiavi di registro NotifierDistributed e DpcRedirection.

      Remove-ItemProperty -Path HKLM:\System\CurrentControlSet\Services\xenvbd\Parameters -Name NotifierDistributed
      Remove-ItemProperty -Path HKLM:\System\CurrentControlSet\Services\xenvbd\Parameters -Name DpcRedirection
    4. Riavviare l'istanza.

    Consenti al driver di scegliere se distribuire il completamento

    Impostare la chiave di registro NotiferDistributed in modo da consentire al driver di archiviazione PV di scegliere se distribuire o meno il completamento dell'IO.

    1. Connettiti all'istanza tramite RDP.

    2. Aprire un nuovo PowerShell prompt dei comandi come amministratore.

    3. Emettere il seguente comando per impostare la chiave di registro NotiferDistributed.

      Set-ItemProperty -Type DWORD -Path HKLM:\System\CurrentControlSet\Services\xenvbd\Parameters -Value 0x00000001 -Name NotifierDistributed
    4. Riavviare l'istanza.

    Distribuisci sia la preparazione che il completamento

    Impostare le chiavi di registro NotifierDistributed e DpcRedirection per distribuire sempre sia la fase di preparazione che quella di completamento.

    1. Connettiti all'istanza tramite RDP.

    2. Aprire un nuovo PowerShell prompt dei comandi come amministratore.

    3. Emettere i seguenti comandi per impostare le chiavi di registro NotifierDistributed e DpcRedirection.

      Set-ItemProperty -Type DWORD -Path HKLM:\System\CurrentControlSet\Services\xenvbd\Parameters -Value 0x00000002 -Name NotifierDistributed
      Set-ItemProperty -Type DWORD -Path HKLM:\System\CurrentControlSet\Services\xenvbd\Parameters -Value 0x00000001 -Name DpcRedirection
    4. Riavviare l'istanza.