Questa pagina fornisce dettagli sulla resilienza delle applicazioni Google Cloud NetApp Volumes.
Considerazioni sulla resilienza delle applicazioni
Sebbene NetApp Volumes sia a disponibilità elevata, gli eventi di manutenzione pianificata, come aggiornamenti della piattaforma, upgrade del servizio, upgrade del software o guasti non pianificati dei componenti del servizio, possono causare brevi pause nelle operazioni di input e output (I/O).
Pause I/O
Il software client Network File System (NFS), Server Message Block (SMB) e iSCSI all'interno del sistema operativo gestisce le brevi pause di I/O. Il client attende e ritenta le operazioni di I/O senza segnalare il problema all'applicazione. Queste brevi pause sono considerate non disruptive perché, sebbene gli utenti dell'applicazione possano riscontrare tempi di risposta più lunghi, l'applicazione non segnala errori di I/O.
Per le pause I/O più lunghe, il comportamento dipende dal client NFS, SMB o iSCSI del sistema operativo e dai potenziali timeout configurati nell'applicazione. Le sezioni seguenti descrivono i dettagli specifici del protocollo per le pause I/O.
Pause I/O NFS
Tutte le chiamate a una condivisione NFS non disponibile e montata in modo permanente vengono bloccate nel client NFS e attendono a tempo indeterminato finché il server NFS non risponde di nuovo. Mentre il client NFS attende, nei log del client vengono visualizzati messaggi che indicano che il server NFS non risponde.
Dal punto di vista dell'applicazione, le operazioni di I/O come la lettura o la scrittura vengono bloccate e rimangono in sospeso finché la condivisione NFS non viene restituita correttamente. Durante le pause I/O, nessuna operazione di I/O viene mai persa e NetApp Volumes garantisce la coerenza dei dati, a meno che tu non interrompa forzatamente le operazioni di I/O in sospeso sul lato client.
Utilizzare applicazioni software cluster per automatizzare i failover
Se utilizzi applicazioni software cluster come Pacemaker sulle VM client per automatizzare il failover dell'applicazione, configura i timeout per le condivisioni NFS in modo che resistano agli eventi di manutenzione di NetApp Volumes. Questi failover interrompono le operazioni di I/O in sospeso sul client e possono comportare la perdita di transazioni. Ti consigliamo i seguenti timeout:
| Tipo di protocollo | Timeout consigliato | Note |
|---|---|---|
| Condivisioni NFSv3 | 60 secondi (per i livelli di servizio Standard, Premium ed Extreme)
120 secondi (per il livello di servizio Flex) |
Ti consigliamo di utilizzare un metodo di isolamento che utilizza l'opzione di montaggio nolock anziché basarsi sui blocchi NFS. |
| NFSv4.1 | 105 secondi (per i livelli di servizio Standard, Premium ed Extreme)
165 secondi (per il livello di servizio Flex) |
Il protocollo NFSv4.1 aggiunge automaticamente un blocco affidabile su NFSv3 (RFC NFSv4.x, sezione 9.6.2), che puoi utilizzare come meccanismo di isolamento. Il recupero dello stato della serratura aggiunge altri 45 secondi. |
Interruzioni I/O condivisione SMB
A differenza di NFS, le sessioni SMB utilizzano una connessione che può scadere. NetApp Volumes rimane al di sotto dei timeout nella maggior parte dei casi.
Timeout della sessione
Il timeout della sessione è definito nel client. Il timeout predefinito per
i client Windows è di 60 secondi. Puoi eseguire il comando
Get-SmbClientConfiguration/Set-SmbClientConfiguration utilizzando il
parametro SessionTimeout per leggere o modificare il timeout della sessione.
Se si verifica un timeout della sessione, la sessione SMB si interrompe e viene segnalato un errore I/O all'applicazione che esegue l'I/O. Esplora file o le applicazioni Microsoft 365 di solito si riconnettono non appena l'utente accede di nuovo alla condivisione SMB. Quando si verificano errori di I/O, alcune applicazioni tentano di riconnettersi e riprovare l'operazione di I/O non riuscita, mentre altre no. Consulta la documentazione del fornitore dell'applicazione per scoprire come l'applicazione gestisce i timeout SMB e può operare in modo resiliente sulle condivisioni SMB.
Le condivisioni sempre disponibili sono una funzionalità SMB3.x che migliora la resilienza del failover per le applicazioni di tipo database. NetApp Volumes supporta le condivisioni sempre disponibili per Microsoft SQL Server e FSLogix.
Il recupero in caso di errore migliora con ogni nuova versione di SMB. NetApp Volumes supporta SMB 2.1, 3.0 e 3.1.1. Se possibile, utilizza l'ultima versione SMB supportata. Windows 10/Server 2016 e versioni successive supportano l'ultima versione di SMB 3.1.1.
Precauzioni basate sull'applicazione SMB
Alcune applicazioni basate su SMB richiedono il failover trasparente SMB. Il failover trasparente SMB consente di eseguire operazioni di manutenzione sui volumi SMB all'interno di NetApp Volumes senza interrompere la connettività con le applicazioni server che archiviano e accedono ai dati. NetApp Volumes supporta l'opzione per le condivisioni SMB a disponibilità continua per garantire che applicazioni specifiche supportino il failover trasparente SMB. L'utilizzo di condivisioni SMB sempre disponibili supporta solo i seguenti workload:
Contenitori dei profili utente FSLogix
Microsoft SQL Server (non Linux SQL Server)
Le condivisioni sempre disponibili SMB non supportano le applicazioni personalizzate.
Pause I/O iSCSI
Negli ambienti Linux e Windows, i client iSCSI (iniziatori) gestiscono le pause I/O riprovando i comandi finché la destinazione (NetApp Volumes) non diventa disponibile. Durante brevi eventi di manutenzione, l'iniziatore iSCSI tenta di riconnettersi e riprendere le operazioni di I/O in sospeso, il che contribuisce a mantenere la resilienza dell'applicazione.
Timeout iSCSI
La corretta configurazione dei timeout iSCSI è essenziale per mantenere la resilienza delle applicazioni durante gli eventi di manutenzione o le interruzioni impreviste del servizio.
Per i sistemi Linux, NetApp Volumes utilizza le impostazioni predefinite dell'iniziatore iSCSI. Queste impostazioni includono configurazioni specifiche di NetApp all'interno di Linux Device Mapper Multipath predefinito, che gestisce automaticamente i requisiti di timeout durante gli eventi di manutenzione deNetApp Volumespp.
Tuttavia, per i sistemi Windows, modifica le impostazioni MPIO di Windows utilizzando il seguente comando per gestire gli eventi di manutenzione di NetApp Volumes.
Set-MPIOSetting -NewPathVerificationState Enabled ` -NewPDORemovePeriod 130 ` -NewRetryCount 6 ` -CustomPathRecovery Enabled ` -NewPathRecoveryInterval 30 `
Durante le pause I/O, l'iniziatore iSCSI riprova i comandi e mantiene l'I/O in sospeso per la durata del timeout. Se il timeout viene superato, il sistema operativo potrebbe segnalare errori di I/O all'applicazione, il che può comportare la perdita di transazioni o richiedere il ripristino a livello di applicazione.
Considerazioni su applicazioni e cluster
Se utilizzi software o applicazioni di clustering che automatizzano il failover, configura i timeout iSCSI in modo da adattarsi agli eventi di manutenzione di NetApp Volumes. Il failover prematuro può interrompere le operazioni di I/O in sospeso e potrebbe comportare la perdita di dati o transazioni. Per le best practice sulle impostazioni di timeout iSCSI, consulta sempre la documentazione dell'applicazione e del sistema operativo.
Interruzioni delle applicazioni correlate agli eventi di manutenzione
Occasionalmente potrebbero verificarsi eventi di manutenzione pianificati, ad esempio per gli upgrade della piattaforma e del software di servizio. Gli eventi di manutenzione sono considerati non distruttivi dal punto di vista di un protocollo di file (NFS o SMB), a condizione che l'applicazione possa gestire le pause I/O che potrebbero verificarsi durante questi eventi.
Per i livelli di servizio Standard, Premium ed Extreme, le pause I/O sono in genere brevi e vanno da pochi secondi a 30 secondi.
Per il livello di servizio Flex, le pause I/O possono durare fino a 70 secondi.
Passaggi successivi
Leggi le considerazioni sulla sicurezza di Google Cloud NetApp Volumes.