ONTAP Discussions

What is the state of LUN after a snapshot backed volume clone create?

jschen
5,365 Views

I am running cDOT 8.2 and configured 3 LUNs per volume.  For each volume, I will create a snapshot and then create a cloned volume out of the snapshot.  My question is, what is the status of the LUNs of the cloned volumes?

In 7-Mode 8.1.2, I believe the LUNs of the cloned volumes are in an offline state (I could be wrong since I don't have the 7-Mode 8.1.2 setup anymore).

In cDOT 8.2, the LUNs of the cloned volumes are in the online state regardless of the state of the LUNs of the "parent" volmes.

Could someone confirm if the LUNs from the cloned volumes will always be in the online state going forward?  Does it matter if this is 7-Mode or cDOT? 

Thanks.

1 ACCEPTED SOLUTION

madden
5,365 Views

Hi Joseph,

Indeed it seems that in cDOT all LUNs are set to online in the cloned volume regardless of their state in the parent volume.  I checked with engineering and this is by design.  When a volume is cloned the LUNs are added "as new" with a new UUID, serial #, mappings removed, and set to online state.  So you should code your automation with the premise that the LUNs in a cloned volume will always be in the online state.

Kind Regards,

Chris Madden

Storage Architect, NetApp EMEA

View solution in original post

5 REPLIES 5

vladimirzhigulin
5,365 Views

Hi Joseph,

I've got pretty  much the same setup on 7-mode 8.1.2 as you described: a cloned LUN (not volumes as you specified) appears in online state once created.

My layout:

/vol/LUN

/vol/cloned-LUN1

/vol/cloned-LUN2

The way I achieve it:

filer> snap create vol vol_snap1

filer> lun clone create /vol/cloned-LUN1 -o noreserve -b /vol/LUN vol_snap1

filer> snap create vol vol_snap2

filer> lun clone create /vol/cloned-LUN2 -o noreserve -b /vol/LUN vol_snap2

Hope it helps,

Vladimir

madden
5,365 Views

In 7DOTyou actually have two ways to create LUN clones.  One way uses a backing snapshot (lun clone create -b) and the other uses the file clone engine (clone start).  When you use a backing snapshot style LUN clone the blocks are shared with the snapshot, and the snapshot is locked until you delete the LUN clone.  When you use a file clone style LUN clone it will actually copy pointers for your new clone to reference the blocks from the source giving you an independent LUN that uses sis (aka dedupe) to share blocks with the source LUN and there is no locked snapshot.

In cDOT you only have one way to create LUN clones, and that is the file clone style. Coincidentally, file or LUN level snap restore also uses the file clone engine (and there is no longer a single file snap restore [SFSR] engine).

One other thing, in 7DOT the backing snapshot style LUN clone did not require a license, while the file clone requires the FlexClone license in both modes.

I did some quick tests for you and in all cases the LUNs are online and unmapped:

### 7DOT ###

# My source LUN

sdt-7dot1a> lun show -v /vol/sdt_win_real1_j_drive/j_drive.lun

/vol/sdt_win_real1_j_drive/j_drive.lun 50.0g (53694627840)   (r/w, online, mapped)

                Serial#: 1k/3s]A4eiz7

                Share: none

                Space Reservation: disabled

                Multiprotocol Type: windows

                Maps: sdt_win_real1=2

                Occupied Size:   45.7g (49047506944) 

                Creation Time: Mon Aug  6 20:34:06 CEST 2012

                Cluster Shared Volume Information: 0x0

# Create base snap

sdt-7dot1a> snap create sdt_win_real1_j_drive clone_base

# Create backing snapshot style LUN clone

sdt-7dot1a> clone start /vol/sdt_win_real1_j_drive/j_drive.lun /vol/sdt_win_real1_j_drive/j_drive.lun.C -s clone_base

sdt-7dot1a> lun show -v /vol/sdt_win_real1_j_drive/j_drive.lun.C

/vol/sdt_win_real1_j_drive/j_drive.lun.C   50.0g (53695479808)   (r/w, online)

                Serial#: 2FfPI+D4vzs0

                Share: none

                Space Reservation: disabled

                Multiprotocol Type: windows

                Occupied Size:   45.7g (49047506944) 

                Creation Time: Tue Aug 13 20:20:02 CEST 2013

                Cluster Shared Volume Information: 0x0

# Create file clone style LUN clone and see the details

sdt-7dot1a> lun clone create /vol/sdt_win_real1_j_drive/j_drive.lun.CC -o noreserve -b /vol/sdt_win_real1_j_drive/j_drive.lun clone_base

sdt-7dot1a> lun show -v /vol/sdt_win_real1_j_drive/j_drive.lun.CC

        /vol/sdt_win_real1_j_drive/j_drive.lun.CC   50.0g (53694627840)   (r/w, online)

                Serial#: 2FfPI+D4vzs2

                Backed by: /vol/sdt_win_real1_j_drive/.snapshot/clone_base/j_drive.lun

                Share: none

                Space Reservation: disabled

                Multiprotocol Type: windows

                Occupied Size:       0 (0)           

                Creation Time: Tue Aug 13 20:20:51 CEST 2013

                Cluster Shared Volume Information: 0x0

### cDOT ###

# My source LUN

sdt-cdot1::> lun show -path /vol/sdt_win_real2_p_drive/lun -instance  

               Vserver Name: sdt-vs-san1

                   LUN Path: /vol/sdt_win_real2_p_drive/lun

                Volume Name: sdt_win_real2_p_drive

                 Qtree Name: ""

                   LUN Name: lun

                   LUN Size: 500.1GB

                    OS Type: windows_2008

          Space Reservation: disabled

              Serial Number: 2FiM-]DCkVUC

                    Comment:

Space Reservations Honored: false

           Space Allocation: disabled

                      State: online

                   LUN UUID: f8ca227a-1ac7-4d20-b6f9-eb76f9c42707

                     Mapped: mapped

                 Block Size: 512

           Device Legacy ID: -

           Device Binary ID: -

             Device Text ID: -

                  Read Only: false

Inaccessible Due to Restore: false

                  Used Size: 100.7GB

        Maximum Resize Size: 4.90TB

              Creation Time: 8/8/2013 14:31:02

                      Class: regular

                      Clone: false

   Clone Autodelete Enabled: false

           QoS Policy Group: -

# Create base snap

sdt-cdot1::> volume snapshot create -vserver sdt-vs-san1 -volume sdt_win_real2_p_drive -snapshot clone_base

# Create file clone style LUN clone and see the details

sdt-cdot1::> volume file clone create -source-path /vol/sdt_win_real2_p_drive/lun -destination-path /vol/sdt_win_real2_p_drive/lun-C -snapshot-name clone_base

sdt-cdot1::> lun show -path /vol/sdt_win_real2_p_drive/lun-C -instance

               Vserver Name: sdt-vs-san1

                   LUN Path: /vol/sdt_win_real2_p_drive/lun-C

                Volume Name: sdt_win_real2_p_drive

                 Qtree Name: ""

                   LUN Name: lun-C

                   LUN Size: 500.1GB

                    OS Type: windows_2008

          Space Reservation: disabled

              Serial Number: 2FiM-]DCkVUH

                    Comment:

Space Reservations Honored: false

           Space Allocation: disabled

                      State: online

                   LUN UUID: 29176993-5e5a-46f2-8563-b8fbea839675

                     Mapped: unmapped

                 Block Size: 512

           Device Legacy ID: -

           Device Binary ID: -

             Device Text ID: -

                  Read Only: false

Inaccessible Due to Restore: false

                  Used Size: 100.7GB

        Maximum Resize Size: 4.90TB

              Creation Time: 8/13/2013 20:02:20

                      Class: regular

                      Clone: true

   Clone Autodelete Enabled: true

           QoS Policy Group: -

Hope that helps!

Kind Regards,

Chris Madden

Storage Architect, NetApp EMEA

madden
5,365 Views

After posting that reply I realized you actually asked about doing the clone at the volume level. This works the same in 7DOT and cDOT although after testing the online state is different; in 7DOT the LUN is set offline while in cDOT the LUN is left online.  In both cases the LUN is not mapped

### 7DOT ###

#Do the vol clone

sdt-7dot1a> vol clone create clone -s none -b sdt_win_real1_j_drive clone_base

Creation of clone volume 'clone' has completed.

sdt-7dot1a> Tue Aug 13 20:44:55 CEST [sdt-7dot1a:lun.newLocation.offline:warning]: LUN /vol/clone/j_drive.lun has been taken offline to prevent map conflicts after a copy or move operation. 

Tue Aug 13 20:44:55 CEST [sdt-7dot1a:wafl.volume.clone.created:info]: Volume clone clone of volume sdt_win_real1_j_drive was created successfully.

#Check the cloned LUN details:

sdt-7dot1a> lun show -v /vol/clone/j_drive.lun

        /vol/clone/j_drive.lun      50.0g (53694627840)   (r/w, offline)

                Serial#: 2FfPI+D4vzs3

                Share: none

                Space Reservation: disabled

                Multiprotocol Type: windows

                Occupied Size:   45.7g (49047506944) 

                Creation Time: Mon Aug  6 20:34:06 CEST 2012

                Cluster Shared Volume Information: 0x0

### cDOT ###

#Do the vol clone

sdt-cdot1::> volume clone create -flexclone clone -type RW -parent-volume sdt_win_real2_p_drive -parent-snapshot clone_base

[Job 349] Job succeeded: Successful   

#Check the cloned LUN details:

sdt-cdot1::> lun show -path /vol/clone/lun -instance

               Vserver Name: sdt-vs-san1

                   LUN Path: /vol/clone/lun

                Volume Name: clone

                 Qtree Name: ""

                   LUN Name: lun

                   LUN Size: 500.1GB

                    OS Type: windows_2008

          Space Reservation: disabled

              Serial Number: 2FiM-]DCkVUI

                    Comment:

Space Reservations Honored: false

           Space Allocation: disabled

                      State: online

                   LUN UUID: 9f1ffc93-98b0-4e2a-be78-d4da1f979940

                     Mapped: unmapped

                 Block Size: 512

           Device Legacy ID: -

           Device Binary ID: -

             Device Text ID: -

                  Read Only: false

Inaccessible Due to Restore: false

                  Used Size: 100.7GB

        Maximum Resize Size: 4.90TB

              Creation Time: 8/8/2013 14:31:02

                      Class: regular

                      Clone: false

   Clone Autodelete Enabled: false

           QoS Policy Group: -

Hope that helps!

Kind Regards,

Chris Madden

Storage Architect, NetApp EMEA


jschen
5,365 Views

Hi Chris and Vladmir, thanks for your prompt reply!  To Chris, yes, I am performing volume clones and discover the difference of the state of the LUNs in 7-Mode 8.1.2 and cDOT 8.2. 

I also discovered that in cDOT 8.2, even if the "parent volume > LUN1" is offine, the snapshot based "cloned volume > LUN1" will be online.  It looks like the LUNs of a snapshot based cloned volume will always be online regardless of the status of the LUNs in the parent volume.

A question that I have is, can we expect this behavior (LUNs of a snapshot based cloned volume will always be online after the cloned volume is created) for the future releases of cDOT beyond 8.2?

Thanks again all for your effort. 

madden
5,366 Views

Hi Joseph,

Indeed it seems that in cDOT all LUNs are set to online in the cloned volume regardless of their state in the parent volume.  I checked with engineering and this is by design.  When a volume is cloned the LUNs are added "as new" with a new UUID, serial #, mappings removed, and set to online state.  So you should code your automation with the premise that the LUNs in a cloned volume will always be in the online state.

Kind Regards,

Chris Madden

Storage Architect, NetApp EMEA

Public