Portarea volumelor din Netapp HCI / Solidfire către device-uri bazate pe CDOT AFF/FAS/Ontap Select

Alexandru Vasile

Senior Storage Engineer - Netapp

În 2016 Netapp cumpără compania Solidfire o companie ce producea soluții block all flash distribuite pentru private clouds. Printre produsele Solidfire integrate de Netapp se număra Active IQ ( soluția de monitorizare performanței ) și ElementOS ( redenumit ca Element Software ).

Produsele Hardware ( nodurile ce rulează ElementOS) Solidfire nu folosesc RAID tradițional ci un algoritm proprietar dublu-helix pentru distribuirea de blocuri; astfel soluția Storage Solidfire poate garanta metricii de performanță min, max, burst IOPS a LUN-urilor ( Storage based QOS ).
Netapp HCI folosește noduri de ElementOS ca Storage Nodes ce rulează peste infrastructura virtualizată de Vmware, împrumutând din avantajele soluției HW și oferind flexibilitatea soluției virtualizate.

Concepte:

Data Fabric - reprezintă viziunea Netapp de portabilitatea a datelor între device-urile "on premesis"/datacenter, hybrid cloud și public cloud.

Punctul de pornire este "snapshot-ul", portabilitatea este dată de "snapmirror", tehnologie de sincronizare a snapshot-urilor între deviceuri aflate în un stadiu de "peering".
Ontap folosește WAFL ( Write Anywhere File Layout ) și WAFL permite snapshot-urilor să fie eficiente în spațiul consumat datorită unei tehnologii numită Redirect-on-Write ( snapshot-ul nu este o copie 1:1 a volumului ci un construct ce folosește pointeri către blocurile volumului sursă și către blocurile ce sunt modificate – snapshot-uri înlănțuite ).

Realizarea unui snapmirror de la  ElementOS ( Solidfire / Netapp HCI ) către AFF/FAS/Ontap Select :

(În cazul exemplului de mai jos au fost folosite un Ontap Select și un ElementOS demo node )
Pasul 1 : Adăugarea unui “Endpoint” din interfața ElementOS : Data Protection>SnapMirror Endpoints, Create Endpoint :

Se introduc credențialele device-ului virtual Ontap Select. 

Peering-ul device-urilor a fost efectuat.
NOTĂ :
Peering-ul se face din un singur sens ElementOS>Ontap devices ( AFF/FAS/Select) ; momentan nu se poate realiza un peering Ontap>ElementOS, datorită faptului că ElementOS nu deține SVM-uri ( Storage Virtual Machines ) și din perspectiva Ontap relația de “peering” se realizează între SVM-uri.

Pasul 2 : Crearea unui volum : ElementOS>Management>Volumes, Create Volume
Volumul ca să poate fi portat trebuie să fie construit cu un block size de 512e. și bifa Enable SnapMirror.

Pasul 3 :

Portarea Volumului folosing Snapmirror:  ElementOS > Volumes > selectarea volumului creat la pasul 2 > Actions: Create SnapMirror:

Selectăm Endpoint-ul creat la pasul 1, Create new volume ( pentru a genera pe Ontap Select un volum gazdă pentru LUN-ul ), selectăm un SVM de tip ISCSI ( Block ), selectăm un agregat din care volumul va fi construit pe Ontap Select, un Sufix pentru a fi mai ușor de filtrat volumul creat >Create destination Volume.

NOTĂ: ElementOS funcționează ca block only și volumele create pe ElementOS sunt de tip LUN-uri (block ); Toate soluțiile bazate pe Ontap fie ele HW sau Software funcționează ca file first; acest lucru înseamnă că un LUN este construit peste un Flex Volume, LUN-ul nu este de sine stătător ci încapsulat în un “volum”. 

După “construirea” volumului vom selecta tipul de relație: MirrorAndVault, când va rulă ( schedule) și selectam bifa de inițializare>Create Relationship.
Pasul 4 :
Verificarea relației de Snapmirror ( din ambele sensuri ): ElementOS>Data Protection>Snap Mirror; se observă relația făcută la pasul 3.

Acum din perspectiva Ontap Select avem o nouă intrare în Ontap Select>Protection>Volume Relationships>IP-ul de management al ElementOS-ului ( nu există SVM-uri pe ElementOS ).

Volumul gazdă creat în pasul 3 pe Ontap Select este mai mare cu circa 3-11% ca LUN-ul de pe ElementOS : Ontap Select>Storage>Volumes>se va selecta volumul cu sufixul construit în pasul 3 ( în cazul de față *_sDP ) .
LUN-ul încapsulat în volumul de mai sus: Ontap Select>Storage>Luns>selectăm volumul cu numele de la pasul 2

Notă: Copiile Volumelor / LUN-urilor aflate în relația de SnapMirror sunt read-only pe device-ul Endpoint ( Ontap Select în cazul de față ).

Pasul 5 : Ruperea relației de SnapMirror și clonarea volumelelor aflate în această relație pentru a obține volume / LUN-uri ce pot fi scrise și citite (RW) pe device-ul Endpoint ( Ontap Select ) .

Ruperea relației din perspectiva Ontap Select: Protection>Volume Relationships >selectăm IP-ul de management al ElementOS >Operations>Break .

Notă: Relația de SnapMirror se poate întrerupe din ambele capete, ElementOS și Ontap.

După întreruperea relației de mirror volumul și LUN-ul încapsulat în acest Flex Volume vor putea fi scrise ( RW).
Clonarea volumelor aflate în relații de mirroring este similară cu cea a volumelor normale, se va selecta volumul din Ontap Select>Storage>Volumes: more actions>Clone>Create>Volume

Numele este pre completat se poate schimba și se poate schimba și tipul de volum, implicit fiind selectat Thin Provisioning.

Volumul clonat este de tip RW nu de tip DP ( Data Protection ) ca volumul sursă .

Referințe:

https://www.netapp.com/us/products/converged-systems/hyper-converged-infrastructure.aspx#

https://mysupport.netapp.com/products/p/solidfire.html

https://www.netapp.com/us/media/tr-4517.pdf