Dell Unity: Come gestire la cache in scrittura durante le attività di manutenzione SP
Summary: Questo articolo fornisce best practice per la gestione della cache in scrittura (disabilitazione, abilitazione, controllo, svuotamento) durante le attività di manutenzione dello storage processor (SP) Unity. (correggibile dall'utente) (in inglese) ...
Instructions
NOTA: Dell ha precedentemente consigliato di disabilitare la cache in scrittura durante l'NDU. Dell ha rivisto queste indicazioni. Fatta eccezione per i riavvii proattivi prima dell'NDU (se si sceglie di eseguirli), la cache in scrittura deve rimanere abilitata durante l'NDU.
Un attività di manutenzione hardware SP è definita come la sostituzione di uno dei seguenti elenchi di parti:
| Parte |
|---|
| DIMM |
| SFP |
| SP |
| BBU |
| Modulo I/O |
| SATA M.2 |
| Chassis DPE |
| Ventola |
| Mezzanine |
| DPE PSU - Unità di alimentazione |
La procedura descritta in questo articolo per disabilitare manualmente la cache in scrittura prima di qualsiasi attività di manutenzione hardware SP pianificata si applica a Unity OE 5.3 e versioni precedenti. La cache in scrittura viene disabilitata automaticamente quando un SP viene impostato in modalità di servizio sugli array Unity che eseguono OE 5.4 e versioni successive.
La disabilitazione della cache in scrittura è inoltre una best practice consigliata prima di eseguire le seguenti attività di aggiornamento o pre-aggiornamento:
| Activity |
|---|
| Upgrade data-in-place (DIP). |
| L'SP proattivo si riavvia prima dell'aggiornamento senza interruzioni |
La procedura descritta in questo articolo per disabilitare manualmente la cache in scrittura prima di qualsiasi attività di aggiornamento pianificata si applica a Unity OE versione 5.1 o successive. La cache in scrittura di Unity NON viene disabilitata automaticamente quando si esegue un aggiornamento su qualsiasi versione di Unity OE.
Le svc_cache Il comando può essere utilizzato per disabilitare la cache in scrittura, abilitare la cache in scrittura e visualizzare lo stato della cache in scrittura utilizzando le tre opzioni:
--disable --enable --getLa variabile
svc_cache è fornito in bundle con UnityOS versione 5.2 e successive.
Per Unity OE 5.0 e 5.1, il
svc_cache Il comando deve essere caricato manualmente sul sistema Unity dal supporto tecnico Dell o da un fornitore di servizi autorizzato. Ciò consente di eseguire le modifiche alla cache senza la necessità di una shell root e coinvolgendo un livello di supporto più elevato.
NOTA: A seconda del browser utilizzato, il font potrebbe distorcere -- (doppio trattino) nei comandi, in particolare le righe in grassetto.
Il parametro utilizzato dopo il
svc_cache Il comando è preceduto da un -- (doppio trattino) e non da un singolo -.
Se i comandi in grassetto vengono copiati in un blocco note da questo articolo, il doppio trattino è più definito.
Le
svc_cache I parametri qui elencati sono descritti in modo più dettagliato di seguito:
svc_cache --force-enableCacheOperations svc_cache --get svc_cache --disable svc_cache --enable svc_cache --disableCacheOperations
Determinare se il svc_cache Il comando è già installato:
Se si esegue uno dei svc_cache comandi, è possibile determinare se il pacchetto è installato. Risponde in modo diverso a seconda che il svc_cache Il comando è già stato installato con i nuovi comandi. Per verificarlo, utilizzare il comando svc_cache --get .
Se il pacchetto non è ancora installato:
Esecuzione di svc_cache --get Il comando restituisce l'utilizzo del comando:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get This script displays and clears the Cache Dirty or Cache Lost LUNs(CDCA) on this system. Usage: svc_cache [<qualifiers>]In tal caso, contattare il supporto tecnico Dell o il fornitore di servizi autorizzato e citare l'ID di questo articolo Dell.
Se il pacchetto è installato (già incluso in OS 5.2 e versioni successive):
Esecuzione di svc_cache --get Il comando produce uno dei due risultati seguenti, a seconda che i comandi siano sbloccati o meno.
- Se il pacchetto è installato ma i comandi non sono abilitati, il sistema restituisce un errore:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get --- ERROR: This option can only be used after enabling cache operations.
svc_cache --force-enableCacheOperations
- Se il pacchetto è installato e il set di comandi è già abilitato, il
svc_cache --getIl comando restituisce lo stato della cache come previsto. Proseguire per disabilitare la cache in scrittura nel passaggio successivo.
Disabilitare la cache in scrittura:
- Ottenere lo stato della cache in scrittura:
svc_cache --get(lo stato 3 è abilitato, lo stato 7 è disabilitante o sconosciuto, lo stato 8 è disabilitato). Se la cache in scrittura è già disabilitata, non sono necessarie ulteriori azioni. - Disabilitare la cache in scrittura:
svc_cache --disable(il comando deve essere eseguito solo su un SP per disabilitare la cache su entrambi gli SP). - Verificare che la cache in scrittura sia disabilitata: s
svc_cache --get
Write Cache State: 3 (abilitato)
Stato della cache in scrittura: 7 (sconosciuto)
Stato della cache in scrittura: 8 (disabilitati)
Vedere output di esempio più dettagliati nella sezione Note aggiuntive.
L'obiettivo è arrivare a uno stato di 8 (disabilitato). Se l'output di svc_cache --get è uno stato di 7, questo significa che le pagine sporche sono ancora in fase di scarico. Eseguire nuovamente il comando svc_cache --get finché lo stato non è 8 (disabilitato).
Se la disabilitazione richiede del tempo, è anche possibile utilizzare le metriche per controllare e assicurarsi che tutte le pagine della cache dirty vengano svuotate o svuotate:
uemcli /metrics/value/rt -path sp.*.blockCache.global.summary.dirtyBytes show -interval 5 -count 5
Una volta svc_cache --get mostra lo stato 8 o le pagine sporche mostrano 0, puoi procedere con la tua attività.
Abilitare la cache in scrittura:
Quando entrambi gli SP sono di nuovo online:
- Ottenere lo stato della cache in scrittura:
svc_cache --get(lo stato 3 è abilitato, lo stato 7 è invalidante o sconosciuto, lo stato 8 è disabilitato). - Abilitare la cache in scrittura:
svc_cache --enable(Il comando deve essere eseguito solo su un SP per abilitare la cache su entrambi gli SP) - Confermare che la cache in scrittura sia abilitata: s
svc_cache --get(Stato 3 abilitato).
Infine, quando hai concluso con la tua attività, dovresti disabilitare i comandi della cache di scrittura:
svc_cache --disableCacheOperations
Additional Information
Informazioni sulla cache in scrittura e NDP (Non-Disruptive Upgrade) Unity:
Innanzitutto, Dell consiglia vivamente di stampare una procedura aggiornata dal generatore di procedure SolVe (è necessario l'accesso del cliente al supporto Dell) e di fare riferimento agli articoli indicati prima di iniziare. In questo modo si dispone di informazioni aggiornate su eventuali problemi che potrebbero verificarsi durante l'aggiornamento, offrendo le migliori possibilità di un esito positivo.
In breve, l'unico caso in cui Dell Technologies consiglia di disabilitare la cache in scrittura per le operazioni NDU è quando si esegue il riavvio proattivo dell'SP subito prima dell NDU. Oltre questo scenario, la cache in scrittura deve rimanere abilitata durante l'NDU.
Output di esempio:
svc_cache --get Mostrare che il set di comandi non è stato installato:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get This script displays and clears the Cache Dirty or Cache Lost LUNs(CDCA) on this system. Usage: svc_cache [<qualifiers>]
svc_cache --get Mostrare che il set di comandi non è stato abilitato:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get
--- ERROR: This option can only be used after enabling cache operations.
In questo caso, è necessario attivare i comandi utilizzando il seguente comando:
svc_cache --force-enableCacheOperations
svc_cache --get Visualizzazione della cache in scrittura abilitata:
16:28:43 service@APM00123456789 spa:~/user# svc_cache --get execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c get_cache Get Cache Info. SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:28:48 service@APM00123456789 spa:~/user# svc_cache --get showing write cache is disabled: 16:29:00 service@APM00123456789 spa:~/user# svc_cache --get execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c get_cache Get Cache Info. SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 System Cache Information Write Cache State: 8 (disabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 System Cache Information Write Cache State: 8 (disabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:31:30 service@APM00123456789 spa:~/user#
svc_cache --disable:
16:28:48 service@APM00123456789 spa:~/user# svc_cache --disable execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c set_cache -o disable -t write currentArg 3 argc 7 currentArg 3 argc 7 Set Write Cache Disabled SP A(0). #:2022-03-04 16:29:00.035 GMT :U:( 1:1):00007f7168fd0280:25459:Unknown:: TLDflarecons:TLDconfig.cpp :09584=>TLDconfig_SetCacheBuildTree Enable 0, Type 2, SP = 0 #:2022-03-04 16:29:00.035 GMT :U:( 1:1):00007f7168fd0280:25459:Unknown:: TLDconfig: :TLDconfig.cpp :09592=>Set cache state to disabled - 8 SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 c4admintool: -TAG_REQUEST(0x10016) c4admintool: --TAG_OPERATION(0x10017) <snip> c4admintool: -------TAG_WRITE_CACHE(0x102ca) c4admintool: --------TAG_STATE(0x10079) - 8 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:29:00 service@APM00123456789 spa:~/user#
svc_cache --enable:
16:32:43 service@APM00123456789 spa:~/user# svc_cache --enable execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c set_cache -o enable -t write currentArg 3 argc 7 currentArg 3 argc 7 Set Write Cache Enabled SP A(0). #:2022-03-04 16:32:47.905 GMT :U:( 0:1):00007f8011b49280:09830:Unknown:: TLDflarecons:TLDconfig.cpp :09584=>TLDconfig_SetCacheBuildTree Enable 1, Type 2, SP = 0 #:2022-03-04 16:32:47.905 GMT :U:( 0:1):00007f8011b49280:09830:Unknown:: TLDconfig: :TLDconfig.cpp :09589=>Set cache state to enabled - 3 SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 c4admintool: -TAG_REQUEST(0x10016) c4admintool: --TAG_OPERATION(0x10017) <snip> c4admintool: -------TAG_WRITE_CACHE(0x102ca) c4admintool: --------TAG_STATE(0x10079) - 3 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:32:48 service@APM00123456789 spa:~/user#
svc_cache --get Visualizzazione della cache in scrittura abilitata:
16:33:43 service@APM00123456789 spa:~/user# svc_cache --get execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c get_cache Get Cache Info. SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:33:48 service@APM00123456789 spa:~/user#