Q&S (Quick and simple) - How to NetApp SnapLock Enterprise

Wichtiger Hinweis:
Dieser Artikel beleuchtet das Thema "How to SnapLock Enterprise". Er dient als Orientierung für Neueinsteiger und als kleine Core-Command-Sammlung für Erfahrene, wie man mit NetApp SnapLock ein Disk-basierendes WORM-Archiv aufbauen kann. Alles basiert auf einem Beispiel und hat keinen Anspruch auf 100%ige Vollständigkeit...
Im SnapLock Umfeld sind viele Befehle nur einmalig ausführbar bzw. gewisse Aktionen nur schwer rückgängig zu machen. Bei der Einrichtung von SnapLock ist somit äußerste Vorsicht geboten!

Aggregatsdesign:
Soll SnapLock intergriert werden, muss ein eigenes Aggregat als SnapLock Enterprise Aggregat konfiguriert werden (zusätzlich zum standardmäßigen "root"-Aggregat oder vorhandenen "Standard" Aggregaten).
Soll die Möglichkeit bestehen, dass ein Administrator in diesem SnapLock Enterprise Aggregat bzw. Volume einzelne Files löschen kann (bei SnapLock Enterprise möglich), kann optional ein weiteres Aggregat mit eigenen Festplatten für ein sog. SnapLock Logvolume (Protokolliert die Löschaktionen) angelegt werden.
Das Aggregat, auf dem das "Logvolume" abgelegt wird, muss als SnapLock Compliance Aggregat angelegt werden (nicht veränderbar).
Logging ist kein MUSS, um SnapLock Enterprise zu integrieren, es KANN integriert werden, wenn ein Administrator einzelne Files in einem SnapLock Enterprise Volume löschen können soll.

How to SnapLock Enterprise:

01. Lizenz auf den entsprechenden Controllern einspielen (bei HA-Clustern auf beiden Heads)
Für SnapLock gibt es von NetApp sog. Master-Keys, die auf jedem Storage-System eingespielt werden können.
Hier findet man den SnapLock Enterprise
(https://support.netapp.com/NOW/knowledge/docs/olio/guides/snaplock_enter...)
bzw. den SnapLock Compliance Key
(https://support.netapp.com/NOW/knowledge/docs/olio/guides/snaplock_compl...)
und spielt die entsprechende Lizenz mit folgendem Befehl ein:

"license add LICENSEKEY"

02. Zeit auf den Filern richtig setzen und kontrollieren

"timezone Europe/Berlin"
"date"

03. Compliance Clock initialisieren (hier muss die Uhrzeit auf dem Storage - siehe 02. - zu 100% passen, da dieser Vorgang die "Compliance Clock" setzt und nur einmalig ausgeführt werden kann!)

"date -c initialize"
(in Ontap 8.1) "snaplock clock initialize"

04. CHECK: Prüfen, welche Zeit die Systemclock (und später die Volumeclocks) haben

"snaplock clock status [VOLNAME]"

05. SnapLock Enterprise Aggregat anlegen

"aggr create SLEAGGRNAME -L enterprise [-t raid4] ANZAHLDISKS@DISKSIZE"
(+ wenn nötig weitere Aggregatsoptionen -> alle Optionen durch Eingabe von "aggr create" einsehbar)

06. SnapLock Enterprise Volume in diesem Aggregat anlegen und weitere Einstellungen für dieses Volume wie gewohnt vornehmen (Snap Reserve, Snapshot Schedule, Deduplizierung)

"vol create SLEVOLNAME -s none SLEAGGRNAME XXXg"
"snap reserve SLEVOLNAME X"
"snap sched SLEVOLNAME X X X"
"sis on /vol/SLEVOLNAME"

07. Default-, Mindest- und Maimal-Retentiontime für das Volume einstellen (d = day, m = month, y = years)

"vol options SLEVOLNAME snaplock_default_period" (in SnapLock Enterprise ist hier default: die "minimum_period")
"vol options SLEVOLNAME snaplock_minimum_period" (in SnapLock Enterprise ist hier default: 0d)
"vol options SLEVOLNAME snaplock_maximum_period" (in SnapLock Enterprise ist hier default: 30y)

08. CHECK: Prüfen, welche "Retentiontimes" auf dem Volume sind

"vol status -w"

09. Eventuell muss nach Vorgabe der Archivierungssoftware ein Autocommit konfiguriert werden (nach Zeit x wird ein geschriebenes File im SnapLock Volume automatisch auf "Read-Only" gesetzt)
Beispiel für ein "Autocommit" nach 14 Tagen:

"vol options SLEVOLNAME snaplock_autocommit_period 14d"

10. CHECK: Prüfen, welche Autocommit-Zeit auf dem Volume eingestellt ist

"vol options SLEVOLNAME"

11. CIFS Share bzw. NFS Export für den Zugriff der Archivsoftware auf das SnapLockvolume mit den entsprechenden von der Archivsoftware geforderten Berechtigungen einrichten und an die Archivsoftware verbinden

----------------------------------
OPTIONALES LOGGING UND LÖSCHOPTION
----------------------------------
!ACHTUNG: LOGVOLUME MUSS AUF COMPLIANCE AGGREGAT LIEGEN! Compliance Lizenz einspielen & Compliance Aggregat anlegen!

12. Logvolume anlegen und weitere Einstellungen für dieses Volume wie gewohnt vornehmen (Snap Reserve, Snapshot Schedule, Deduplizierung)

"vol create LOGVOLNAME -s none COMPLIANCEAGGR XXXg"
"snap reserve LOGVOLNAME X"
"snap sched LOGVOLNAME X X X"

13. Logvolume festlegen (default: 6 Monate Log Retention)

"snaplock log volume LOGVOLNAME"

14. Einstellen, dass ein Administrator Dateien löschen darf

"snaplock options SLEVOLNAME privdel on" (bei Enterprise default: off)
!DIESE OPTION NIEMALS AUF DISALLOWED STELLEN, da sonst NIE MEHR gelöscht werden kann = Compliance!

15. Der Administrator kann dann im "Notfall" einzelne Files mit folgendem Befehl aus dem SnapLock Enterprise Volume löschen

"snaplock privdel -f PFAD_ZUM_ZU_LÖSCHENDEN_OBJEKT"

Quick and simple ;)

Benjamin Ulsamer
Consultant & Trainer
teamix GmbH