How to Migrate Data Disks to a New SoftNAS VM

You may need to migrate data disks, along with their associated storage pools and volumes, from one SoftNAS instance to another. Examples of such cases may be:

  • Copy or move data from one SoftNAS VM to a different site or location.
  • Copy or move data from one SoftNAS instance on Amazon EC2 (or Azure block storage) to a different region/availability set (different data center or data center sub-section).
  • Restore a data image from backup (not common, but one of the valid use cases one should always be prepared to handle). For example, you may have EBS volume images snapshots saved on Amazon EC2, and want to migrate a backup copy into a new SoftNAS instance.

SoftNAS contains a feature known as Storage Pool Import. The Import feature scans the attached data disks to identify any pools that are currently offline that are eligible to be imported and made active again. This feature is also handy should you ever accidentally delete a pool.

To move one or more storage pools (with its associated volumes) from one SoftNAS instance to another, follow the steps given below:

  1. Make sure that there are no active workloads on NFS shares, CIFS shares or iSCSI targets making use of the storage pool and volumes. For Azure, the best way to ensure this is to ensure that both the source virtual machine and the target to which you are migrating are both shut down.

    Do not attempt to move a volume that is active or data loss could occur.
  2. Find the disk you wish to migrate in the platform UI of choice (i.e., for AWS, look in Elastic Block Store, under Volumes, and for Azure, select the virtual machine, and find Disks under Settings. Consult platform documentation for more assistance.)

  3. Detach the inactive disk devices from the SoftNAS VM , Azure VM, or EC2 instance.

    1. On Amazon EC2, use the Detach option for each EBS volume that you want to move. Refer to the Attaching EBS Volumes and Detaching  EBS Volumes articles in AWS documentation for more information.
    2. On Azure, from the virtual machine in question, select Disks (found under Settings), select the disk you wish to migrate, and select Detach, from the menu bar. (See Detaching a Disk and Attaching a Disk in Azure Documentation)
    3. On VMware, remove each virtual hard disk from the VM using the Settings dialog.

  4. Copy or move the disks (as appropriate) to the destination (if required).
     
  5. Attach the disk devices to the new SoftNAS VM or EC2 instance.

    1. On Amazon EC2, use the Attach option for each EBS volume. Refer to the Attaching EBS Volumes and Detaching  EBS Volumes articles in AWS documentation for more information.
    2. On Azure, select the virtual machine you wish to import to, select Disks (again, under Settings), and select Attach Existing, then in Attach Existing Disk, select the location of the disk. Under Storage accounts, select the account and container that holds the .vhd file. Under Attach existing disk, the file you just selected is listed under VHD File. Click OK. (See Detaching a Disk and Attaching a Disk in Azure Documentation.)
    3. On VMware, add each virtual hard disk to the VM using the Settings dialog

  6. Log into the destination SoftNAS StorageCenter user-interface.(For Azure, turn on the SoftNAS virtual machine, then log in.)
     
  7. In the Left Navigation Pane, select the Storage Pools option under the Storage section.

  8. Click the Import option in the toolbar.
    The Import Pools dialog will be displayed.
    It has two sections labeled Deleted Pools Available for Import and Foreign Pools Available for Import. The Foreign Pools listed (if any are present)are storage pools created on a different SoftNAS system.

  9. If the pools are ready to import, there will be a button labeled Import <poolname>, where poolname will be the pool that's available to import. Click that button.

  10. You will need to select the Force Import checkbox, to force the system to import foreign pools from another system.

  11. For each volume, configure the volume's Snapshots to use the desired schedule. 

    They are not imported automatically, but can be manually copied from the old system by copying the snapshots.ini and schedules.ini files in the /var/www/softnas/snserver folder.
  12. For each NFS and CIFS share you want, create the appropriate NFS exports and CIFS shares (they are not imported automatically.)

  13. For each iSCSI target (if any), define the appropriate iSCSI devices and targets. 

    They are not imported automatically, but can be manually copied from the old system by copying the file /etc/tgt/targets.conf to the new system, then restart the iSCSI Server.


    The data disks will now be ready for use.
     

  14. Click the Refresh button on the Storage Pools panel.

  15. Similarly, navigate to the Volumes and LUNs panel and view the volumes.