Subscribe

when migrate a volume, being snapmirrorred, across aggregates, how to copy data

[ Edited ]

Hi,

I plan to migrate a volume from aggr1 to aggr2, since aggr1 capacity has reached full and the volume can't be expanded anymore.

 

The volume is snapmirrored to a standby FAS, 1st DR FAS and 2nd DR FAS in cascade.

Please find the below system configuration.

 

My question is how to replicate data from the current volume to new volume. I come up with 2 method, described below in #5 and #6.

Can somebody suggest me which way would be correct ?  Thank you in advance.

 

1. ONTAP; 8.1.2 P4 7 mode

2. Current location of the volume : FAS - aggregate - volume (vol role, size)

   1) FAS_1 - aggr1 - vol_a (Primary 2,000GB)

   2) FAS_2 - aggr1 - vol_a (Standby 2,000GB) 

   3) FAS_3 - aggr1 - vol_a (DR1 2,000GB)

   4) FAS_4 - aggr1 - vol1_a (DR2 2,000GB)

 

3. Snapmirror topology

   FAS_1:vol_a  -> FAS_2:vol_a  ->  FAS_3:vol_a  -> FAS_4:vol_a

 

4. Goal

   1) FAS_1 - aggr2 - vol_a (Primary 10,000GB)

   2) FAS_2 - aggr2 - vol_a (Standby 10,000GB) 

   3) FAS_3 - aggr2 - vol_a (DR1 10,000GB)

   4) FAS_4 - aggr2 - vol1_a (DR2 10,000GB)

 

5. Migration Plan1

=================================================================================================

   5-1. Create vol_a_new on aggr2 on FAS_1 / FAS_2 / FAS_3 / FAS_4

   5-2. Replicate data from current volume to the new volume.

           snapmirror initialization and run a daily snapmirror for a week or so.

           FAS_1:vol_a  -> FAS1:vol_a_new

           FAS_2:vol_a  -> FAS2:vol_a_new

           FAS_3:vol_a  -> FAS3:vol_a_new

           FAS_4:vol_a  -> FAS4:vol_a_new

 

  5-3. Unmount the primay volume from servers.

 

  5-4.  Break snapmirror

          FAS_1:vol_a  -> FAS_2:vol_a  ->  FAS_3:vol_a  -> FAS_4:vol_a

 

           FAS_1:vol_a  -> FAS1:vol_a_new

           FAS_2:vol_a  -> FAS2:vol_a_new

           FAS_3:vol_a  -> FAS3:vol_a_new

           FAS_4:vol_a  -> FAS4:vol_a_new

 

  5-5. rename volumes

           FAS_1:vol_a  -> FAS1:vol_a_old

           FAS_2:vol_a  -> FAS2:vol_a_old

           FAS_3:vol_a  -> FAS3:vol_a_old

           FAS_4:vol_a  -> FAS4:vol_a_old

 

           FAS_1:vol_a_new  -> FAS1:vol_a

           FAS_2:vol_a_new  -> FAS2:vol_a

           FAS_3:vol_a_new  -> FAS3:vol_a

           FAS_4:vol_a_new  -> FAS4:vol_a

 

5-6. restart snapmirror

          FAS_1:vol_a  -> FAS_2:vol_a  ->  FAS_3:vol_a  -> FAS_4:vol_a

 

 5-7. Mount the primay volume to servers

=================================================================================================

 

6. Migration Plan2

=================================================================================================

   6-1. Create vol_a_new on aggr2 on FAS_1 / FAS_2 / FAS_3 / FAS_4

   6-2. Replicate data from current volume to the new volume.

           snapmirror initialization sequentially and run a daily snapmirror for a week or so.

           FAS_1:vol_a  -> FAS1:vol_a_new  ->  FAS2:vol_a_new -> FAS3:vol_a_new -> FAS4:vol_a_new

 

  6-3. Unmount the primay volume from servers.

 

  6-4.  Break snapmirror

          FAS_1:vol_a  -> FAS_2:vol_a  ->  FAS_3:vol_a  -> FAS_4:vol_a

           FAS_1:vol_a  -> FAS1:vol_a_new  ->  FAS2:vol_a_new -> FAS3:vol_a_new -> FAS4:vol_a_new

 

  6-5. rename volumes

           FAS_1:vol_a  -> FAS1:vol_a_old

           FAS_2:vol_a  -> FAS2:vol_a_old

           FAS_3:vol_a  -> FAS3:vol_a_old

           FAS_4:vol_a  -> FAS4:vol_a_old

 

           FAS_1:vol_a_new  -> FAS1:vol_a

           FAS_2:vol_a_new  -> FAS2:vol_a

           FAS_3:vol_a_new  -> FAS3:vol_a

           FAS_4:vol_a_new  -> FAS4:vol_a

 

6-6. restart snapmirror

          FAS_1:vol_a  -> FAS_2:vol_a  ->  FAS_3:vol_a  -> FAS_4:vol_a

 

 6-7. Mount the primay volume to servers

=================================================================================================

 

Re: when migrate a volume, being snapmirrorred, across aggregates, how to copy data

I would go with Migration Plan 2. Please see my comments in red. I think you would be good to go with this. Best of luck!!

 

 Migration Plan2

=================================================================================================

6-1. Create vol_a_new on aggr2 on FAS_1 / FAS_2 / FAS_3 / FAS_4

6-2. Replicate data from current volume to the new volume.

*Remember you need to restrict the new volumes before snapmirror initialize

snapmirror initialization sequentially and run a daily snapmirror for a week or so.

FAS_1:vol_a -> FAS1:vol_a_new -> FAS2:vol_a_new -> FAS3:vol_a_new -> FAS4:vol_a_new


On the Actual cutover day

6-3. Unmount the primay volume from servers.

6-3.1 Make a manual snapmirror update

FAS_1:vol_a -> FAS1:vol_a_new -> FAS2:vol_a_new -> FAS3:vol_a_new -> FAS4:vol_a_new

 

6-4. Quiesce and Break snapmirror

FAS_1:vol_a -> FAS_2:vol_a -> FAS_3:vol_a -> FAS_4:vol_a

FAS_1:vol_a -> FAS1:vol_a_new -> FAS2:vol_a_new -> FAS3:vol_a_new -> FAS4:vol_a_new

 

6-5. rename volumes

FAS_1:vol_a -> FAS1:vol_a_old

FAS_2:vol_a -> FAS2:vol_a_old

FAS_3:vol_a -> FAS3:vol_a_old

FAS_4:vol_a -> FAS4:vol_a_old

 

FAS_1:vol_a_new -> FAS1:vol_a

FAS_2:vol_a_new -> FAS2:vol_a

FAS_3:vol_a_new -> FAS3:vol_a

FAS_4:vol_a_new -> FAS4:vol_a

 

6-6. Update snapmirror relationships

FAS_1:vol_a -> FAS_2:vol_a -> FAS_3:vol_a -> FAS_4:vol_a

 

6-7. Mount the primay volume to servers

Re: when migrate a volume, being snapmirrorred, across aggregates, how to copy data

Minor adjustment Smiley Happy

 

6-6. Resync snapmirror relationships

FAS_1:vol_a -> FAS_2:vol_a -> FAS_3:vol_a -> FAS_4:vol_a

Re: when migrate a volume, being snapmirrorred, across aggregates, how to copy data

You could about it an entirely different way. I had to migrate to new filers from prod to DR as well, and it made more sense to work backwards (move DR first, then prod)

 

Break and delete the DR2 snapmirror relationship to DR1

Create a local snapmirror copy from DR2_agg1 to DR2_aggr2

once its complete, break the snapmirror relationship from DR_aggr1 to DR2 Aggr2

Expand DR2_Aggr2 to 10000GB

resync DR2_Aggr2 to DR1_Aggr1

 

Repeat for all the others. There would be some doubling up of resyncs as you move the middle volumes, but if the change rate isn't very high, it will be pretty quick to break, delete and resync once you get going, and you can have more control over the process than trying to do it all at once.