Che cos'è Retention Lock?
Retention Lock è una funzione utilizzata sui DDR (Data Domain Restorer) per impedire la modifica o l'eliminazione di determinati set di file per un periodo predeterminato. Ovvero, i file con Retention Lock sono read-only fino alla scadenza del periodo di retention.
Quali sono le varie versioni di Retention Lock?
Retention Lock è disponibile per due diverse funzioni:
Quali protocolli di accesso ai dati sono supportati con Retention Lock?
La modalità Retention Lock Compliance soddisfa gli standard normativi?
L'elenco degli standard normativi soddisfatti dalla modalità Compliance di Retention Lock include quanto segue:
Per informazioni complete sulle certificazioni, contattare il fornitore del supporto.
In che modo è abilitata la modalità Governance di Retention Lock?
# mtree retention-lock enable mode governance mtree [mtree]
Come si abilita la modalità Compliance di Retention Lock?
(ADMIN USER) # user add [username] role security
(SECURITY USER): # authorization policy set security-officer enabled
(ADMIN USER) # system retention-lock compliance configure
(ADMIN USER) # system retention-lock compliance enable
(ADMIN USER) # mtree retention-lock enable mode compliance mtree [mtree]
Come è possibile determinare su quali MTrees è abilitato il Retention Lock?
Gli MTree con Retention Lock abilitato sono indicati nell'output di mtree list
Per esempio:
sysadmin@ddxxxx# mtree list Name Pre-Comp (GiB) Status Tenant-Unit --------------------------------- -------------- ------- ----------- ... /data/col1/rich-retention-lock 0.0 RW/RLGE - /data/col1/rl_test 0.0 RW/RLGD - /data/col1/rl_test_comp 0.0 RW/RLCE - /data/col1/test 3.1 RW/RLGE - ... --------------------------------- -------------- ------- ----------- ... RLGE : Retention-Lock Governance Enabled RLGD : Retention-Lock Governance Disabled RLCE : Retention-Lock Compliance Enabled
Un MTree con modalità Governance di Retention Lock abilitata può essere convertito nella modalità Compliance di Retention Lock?
Come indicato nella Guida all'amministrazione di DD OS, non è possibile.
È possibile convertire un MTree con modalità Compliance di Retention Lock abilitata nella modalità Governance di Retention Lock?
Come indicato nella Guida all'amministrazione di DD OS, non è possibile.
Come vengono impostati i periodi di retention o blocco dei file?
Una volta abilitata la funzione Retention Lock per un MTree, è necessario impostare un periodo di retention minimo e massimo. Questi periodi determinano il tempo minimo e massimo per cui un file all'interno dell'MTree può essere bloccato. Ad esempio:
# mtree retention-lock set min-retention-period [period] mtree [mtree]
# mtree retention-lock set max-retention-period [period] mtree [mtree]
I periodi possono essere specificati in varie unità come segue:
Come vengono visualizzati i periodi di retention esistenti?
Questa operazione può essere eseguita utilizzando i due comandi seguenti:
# mtree retention-lock show min-retention-period mtree [mtree] # mtree retention-lock show max-retention-period mtree [mtree]
Ad esempio:
sysadmin@dd630# mtree retention-lock show min-retention-period mtree /data/col1/rl_test
Retention-lock min-retention-period of mtree /data/col1/rl_test is: 720 minutes.
sysadmin@dd630# mtree retention-lock show max-retention-period mtree /data/col1/rl_test
Retention-lock max-retention-period of mtree /data/col1/rl_test is: 30 days.
Come vengono bloccati i file all'interno di un MTree con funzione Retention Lock abilitata?
È possibile modificare il valore atime di un file da un client NFS o CIFS utilizzando il comando "touch":
# touch -a -t [expiry time] [file to be locked]
Ad esempio, per impostare il valore atime di /data/col1/rl_test/testfile su 07:05 l'8 giugno:
# touch -a -t 06080705 /data/col1/rl_test/testfile
Il periodo dal valore atime corrente a quello futuro deve rientrare nei periodi di retention minimi e massimi per l'MTree. In caso contrario, viene generato un errore durante la modifica del valore atime dei file:
# touch -a -t 08080705 /data/col1/rl_test/testfile
touch: setting times of `/data/col1/rl_test/testfile': Permission denied
Un messaggio corrispondente viene visualizzato anche nei file di registro di Data Domain File System (DDFS):
06/07 13:44:57.197 (tid 0x2b28ee5258c0): Attempt to set atime of /data/col1/rl_test/testfile to larger than maximum retention period of mtree.
Per impostazione predefinita, i client CIFS (Windows) non includono un comando o un'utilità touch, tuttavia molte di queste utilità sono disponibili gratuitamente per il download da vari siti web di terze parti.
Quali applicazioni di backup supportano la funzione Automatic Retention Lock dopo la scrittura in un DDR?
Data Domain Retention Lock è compatibile con i protocolli WORM (Write-Once Read-Many) basati su NAS standard di settore. L'integrazione è idonea con applicazioni di archiviazione, come Symantec Enterprise Vault, SourceOne, Cloud Tiering Appliance o DiskXtender.
Per Dell NetWorker sono supportate entrambe le modalità Governance e Compliance.
Al mese di giugno 2024, le versioni recenti di Avamar supportano sia Compliance che Governance di Data Domain Retention Lock nell'ambito della funzione "Immutable Backups" di Avamar. Per maggiori dettagli, consultare l'articolo riportato di seguito e la documentazione di Avamar:
Avamar e Data Domain: Abilitazione di Immutable Backups di Avamar e di Data Domain Retention Lock in modalità Compliance
È fondamentale seguire alla lettera i passaggi per abilitare la funzione "Immutable Backups" di Avamar. In caso contrario, potrebbe non essere più possibile scrivere in un MTree Avamar nel DD o potrebbero verificarsi problemi operativi che costringono a lunghi tempi di ripristino. Avamar non è compatibile con DD Automatic Retention Lock (ARL) e la funzione ARL non deve essere abilitata per alcun MTree Avamar su un DD.
I clienti che utilizzano altre applicazioni di backup che non supportano Data Domain Retention Lock in modalità nativa possono inoltre sviluppare script personalizzati per utilizzare Data Domain Retention Lock al fine di impostare manualmente i periodi di retention dei file. In questo scenario, assicurarsi che gli script personalizzati impostino il valore atime del file in modo che vengano sbloccati prima che l'applicazione di backup tenti di eliminare il file. In caso contrario, l'applicazione di backup tenta di eliminare i file bloccati (con esito negativo). Il file viene mantenuto sul DDR, consumando spazio su disco a tempo indefinito. Consultare il documento Data Domain Administration Guide.
Automatic Retention Lock
Per le applicazioni di backup che non supportano in modo nativo la funzione Data Domain Retention Lock, è sempre stato un problema per i clienti sfruttare questa funzione. Il Backup Administrator deve configurare gli script per impostare Retention Lock sui file appena acquisiti per un MTree. Il blocco deve essere impostato in modo che scada poco prima della data di scadenza (e dell'eliminazione) del backup da parte dell'amministratore del backup.
La funzione ARL imposta un blocco su ogni singolo file scritto sull'MTree dopo l'abilitazione della funzione, impedendo la modifica o la rimozione del file per un determinato periodo di tempo dopo il termine del periodo configurato. Ciò significa che la funzione ARL non deve essere abilitata per i carichi di lavoro o le applicazioni di backup che devono aggiornare alcuni file ripetutamente nel tempo, ad esempio nei pool VTL (in cui i file a nastro VTL vengono scritti ripetutamente) o per le applicazioni di backup che conservano le informazioni sui metadati insieme ai file di backup del cliente stesso (come NetWorker o Avamar). Se si abilita ARL in queste istanze, alcuni file importanti vengono bloccati per un determinato periodo di tempo. Quando in un secondo momento è necessario scrivere in questi file per altri backup, la scrittura ed eventuali backup successivi hanno esito negativo.
Per aiutare i Backup Administrator a ridurre l'onere di mantenere la funzione Retention Lock sui file di backup e attivare DD OS in caso di parità di funzioni con altri fornitori, a partire da DD OS 6.2.0.20 è disponibile una funzione che può essere abilitata dalla CLI per ogni MTree con la funzione Retention Lock configurata per impostare un blocco su ogni file acquisito (per un determinato periodo), una volta trascorsa una certa quantità di tempo predeterminata dal completamento della scrittura del file su disco. In questo modo, gli amministratori non devono più preoccuparsi dell'impostazione manuale (o tramite script) di Retention Lock e ciò può avvenire automaticamente senza ricorrere all'applicazione di backup.
Nelle versioni precedenti a DD OS 7.8, la funzione Automatic Retention Lock non può essere utilizzata sulle unità di storage logiche (LSU) DD Boost e il tentativo di abilitarla restituisce un errore indicante che non è supportata.
A partire dalla versione 7.8, la funzione ARL è supportata per le LSU DD Boost.
La funzione ARL utilizzata sui DD di destinazione per MFR (Managed File Replication), come il clone NW, deve avere una durata impostata per "automatic-lock-delay" sufficiente a garantire che le operazioni di clonazione vengano completate per il backup set prima che il blocco venga impostato sui file. Esempio: Un file di piccole dimensioni che fa parte di un backup set termina rapidamente la replica, mentre un file più grande richiede più tempo, quindi il primo file viene bloccato con Retention Lock nel momento in cui il file più grande termina la replica e rileva un errore quando NW tenta di spostare tutti i file del backup set nella directory di archiviazione finale.
Automatic Retention Lock non è supportato su Data Domain VTL.
Sulle versioni applicabili, sono disponibili opzioni aggiuntive nella finestra mtree retention-lock
CLI, come mostrato di seguito. Questa funzione può essere configurata anche tramite l'interfaccia utente scegliendo "Automatic" anziché "Manual" nell'opzione "Use":
# mtree retention-lock set
{min-retention-period | max-retention-period |
automatic-retention-period | automatic-lock-delay} <period>
mtree <mtree-path>
La funzione Automatic Retention Lock blocca un file immediatamente dopo la scadenza di un periodo di raffreddamento preconfigurato (automatic-lock-delay). Dopo che il file viene scritto in un MTree abilitato per Retention Lock e il blocco è valido per "automatic-retention-period" dal momento in cui è stato impostato, se il valore rientra nei valori "min-retention-period" e "max-retention-period" impostati per l'MTree, si verifica il blocco.
Per ulteriori informazioni sull'utilizzo e dettagli generali sulla funzione, consultare il documento DD OS Administration Guide corrispondente. Questa funzione non è particolarmente indicata per i casi in cui lo stesso MTree viene utilizzato come destinazione per i backup che devono avere set di blocchi per periodi diversi o per i backup che devono o non devono avere un set impostato.
Cosa è consentito fare o non fare per un file bloccato?
È possibile rimuovere completamente la funzione di Retention Lock da un file o da un set di file?
È possibile annullare (rimuovere) la funzione di Retention Lock per i file in MTree utilizzando la modalità Governance. Questa operazione viene eseguita con il seguente comando:
# mtree retention-lock revert [path]
Una volta rimossa la funzione di Retention Lock per un file, è possibile modificarlo o eliminarlo normalmente. Se questo comando viene eseguito su una directory, la funzione Retention Lock viene rimossa da tutti i file all'interno di tale directory e in tutte le sottodirectory.
Non è possibile annullare la funzione di Retention Lock per i file negli MTree utilizzando la modalità Compliance. Questa operazione mostra un errore corrispondente:
# mtree retention-lock revert /data/col1/rl_test_comp/testfile
This operation is not allowed. Mtree is in retention-lock compliance mode.
Cosa succede se si tenta di modificare o rimuovere un file con Retention Lock?
Qualsiasi tentativo di modificare o eliminare un file con Retention Lock causa un corrispondente permission denied
errore:
# echo " test2" >> /data/col1/rl_test/testfile
bash: testfile: Permission denied
# rm testfile
rm: remove write-protected regular file `testfile'? y
rm: cannot remove `testfile': Permission denied
I registri DDFS indicano che l'operazione non è riuscita a causa della funzione Retention Lock nel file:
06/07 07:06:59.756 (tid 0x2b5a77605d50): Atime of retention-lock file /data/col1/rl_test/testfile is not expired.
06/07 07:07:42.504 (tid 0x2b5a79111390): Atime of retention-lock file /data/col1/rl_test/testfile is not expired.
È possibile elencare tutti i file con Retention Lock?
Sì, questa operazione può essere eseguita utilizzando il comando mtree retention-lock report generate retention-details
:
mtree retention-lock report generate retention-details
mtrees {<mtree-list> | all}
[format {text | tsv | csv}]
[output-file <file-name>]
Report detailed information of
retention-lock files.
Ad esempio, per elencare i dettagli di tutti i file bloccati nel file /data/col1/rl_test MTree
Vengono eseguite le seguenti operazioni:
sysadmin@ddxxxx# mtree retention-lock report generate retention-details mtrees /data/col1/jftest
Report generated on: Fri Jul 1 14:19:31 2016
Report for mtree: /data/col1/jftest
File Path Mode Size(Bytes) Expiration Date
/data/col1/jftest/file1 governance 10521456 Sat Jul 2 22:35:48 2016
/data/col1/jftest/testdir/file2 governance 10521680 Sat Jul 2 22:35:42 2016
/data/col1/jftest/file3 governance 10521820 Sun Jul 10 22:36:09 2016
Total files: 3
È possibile disabilitare completamente Retention Lock per un MTree (dopo che è stato abilitato)?
Sì, per gli MTree che utilizzano la modalità di governance, questa operazione viene eseguita utilizzando mtree retention-lock disable
:
# mtree retention-lock disable mtree [mtree] For example: sysadmin@xxxx# mtree retention-lock disable mtree /data/col1/rl_test Retention-lock feature is disabled (previously enabled) for mtree /data/col1/rl_test. Once disabled,MTree list
indicates that retention lock was used against the MTree but has since been disabled, that is: sysadmin@ddxxxx#mtree list
Name Pre-Comp (GiB) Status Tenant-Unit --------------------------------- -------------- ------- ----------- ... /data/col1/rl_test 0.0 RW/RLGD - ...
sysadmin@ddxxxx# mtree retention-lock revert /data/col1/rl_test/testfile **** Retention-lock feature is disabled (previously enabled) for mtree which contains the path /data/col1/rl_test/testfile.
sysadmin@ddxxxx# mtree retention-lock disable mtree /data/col1/rl_test_comp **** Operation is not allowed because the system is a retention-lock compliance system
# replication break mtree://[destination system]/data/col1/[mtree]
# replication add source mtree://[source system]/data/col1/[mtree] destination mtree://[destination system/data/col1/[mtree]
# mtree retention-lock enable mode compliance mtree [mtree]
# replication resync mtree://[destination system/data/col1/[mtree]
# user reset
# filesys destroy
# filesys archive unit del [archive unit name]
Tali sistemi non possono essere avviati in modalità utente singolo per il ripristino da parte del supporto tecnico senza l'utilizzo di un'unità USB e l'accesso fisico al sistema.
# mtree delete [mtree] # mtree retention-lock reset [min-retention-period period | max-retention-period period] mtree [mtree] # mtree retention-lock disable mtree [mtree] # mtree retention-lock revertTuttavia, in DD OS 7.3 e versioni successive, i clienti possono eliminare gli MTree abilitati per la modalità Compliance di Retention Lock, purché:
# cloud unit del <cloud unit name>
# filesys enable