How to set up a Migration Agent on NetApp

Set up a FileFly FPolicy migration agent for NetApp 8.3 C-mode. This process is based on and adapted from Deploy and install NetApp ONTAP Simulator 8.3 RC1 for a vSphere cluster.

Note

NetApp Storage Virtual Machines (SVMs, formerly known as Vservers) contain data volumes and logical interfaces for serving data to clients. SVMs can have a single Infinite Volume or one or more FlexVol volumes, but FileFly migration is only supported with FlexVol volumes. See this post by Cormac Hogan to learn more about Clustered Data ONTAP and SVMs.

Creating the NetApp SVM

Deployment

The simulator comes with two virtual shelves of 14 x 1GB disks, so 28 disks in total by default. With 3 disks taken for the dedicated Clustered ONTAP root aggregate, this leaves 25 disks for a data aggregate, of which two are parity disks, providing a maximum usable space of only ~23GB. It is possible to get close to 400GB usable space by editing the configuration. Note: some commands have changed from 8.2 to 8.3; the following commands are for 8.3.

  1. Download the ONTAP Simulator:

    1. Browse to http://mysupport.netapp.com/NOW/download/tools/simulator/ontap/8.X/

    2. Log in or register to the NetApp support.

    3. Download the Simulator itself: download the ESX version, plus the license codes.

  2. Deploy the compressed archive:

    1. Expand the archive.

    2. Upload it to an ESXi datastore using the datastore browser.

  3. Before the first boot, change the 4th virtual disk of the simulator. This is created as “sparse” and is not supported in ESXi, so it is best to convert the disk to a proper thin format that can be extended in ESXi.

    1. First remove the disk from the powered off virtual machine without deleting it.

    2. At the command line, navigate to the folder where the disk is located and run these commands:

      vmkfstools -i DataONTAP-sim.vmdk thin.vmdk -d thin # Clone the disk into a thin disk vmkfstools -U DataONTAP-sim.vmdk # Deletes the old sparse disk vmkfstools -E thin.vmdk DataONTAP-sim.vmdk # Renames the cloned disk like the original

      Use the following if the max number of file descriptors needs to be raised for the first command:

      ulimit -a # to find what exists ulimit -n # to increase; try 1000
    3. After these operations, reconnect the new thin disk to the virtual machine in the same IDE channel.

  4. Before powering on the virtual machine, edit the original 4 network adapters and configure them based on the network.

  5. Power on the VM and run the commands that follow.

  6. When prompted, press Ctrl+C for the Boot Menu.

  7. Select 4 ‘Clean configuration and initialize all disks’ and answer ‘y’ to the two prompts.

  8. Wait for the procedure to complete, which reboots the VSA automatically.

  9. At the node setup screen, type exit to navigate to the prompt.

  10. Login with admin with no password.

  11. Set the password for the admin user: security login password

  12. Proceed with these commands:

    security login unlock -username diag security login password -username diag # Enter new password twice set -privilege diagnostic # Press y systemshell local # Log in with the unlocked diag user setenv PATH "${PATH}:/usr/sbin" echo $PATH cd /sim/dev/,disks ls (see all the disks listed) sudo rm v0* sudo rm v1* sudo rm ,reservations cd /sim/dev vsim_makedisks -h # Type 36 sudo vsim_makedisks -n 14 -t 36 -a 0 sudo vsim_makedisks -n 14 -t 36 -a 1 sudo vsim_makedisks -n 14 -t 36 -a 2 sudo vsim_makedisks -n 14 -t 36 -a 3 ls ,disks/ # Now have 4 shelves with 14 disks each, all 9 GB exit system node halt local
  13. To accommodate the new disks, the containing vmdk disk needs to be expanded. Because the disk is in IDE format, it cannot be expanded live and requires this process:

    1. Power down the appliance.

    2. Remove the disk from the VM without deleting it.

    3. Edit the .vmdk descriptor file in the command line and change ddb.adapterType from "ide" to "lsilogic"

    4. Add the disk to the VM. Because it is now listed as SCSI, expand the disk to 550GB (to accommodate the additional shelves and disks created).

    5. Remove the vmdk from the VM.

    6. Edit the .vmdk descriptor file in the command line and change back ddb.adapterType from "lsilogic" to "ide"

    7. Add for the final time the IDE vmdk to the VM.

  14. With the disk expanded, proceed with these commands:

    1. Power on the SIM.

    2. When prompted, invoke the menu with Ctrl+C.

    3. Select option 5

    4. disk show (disks 0.16 0.17 and 0.18 are assigned for the system aggregate; all other 53 disks should be assigned later).

    5. halt

    6. Power cycle the simulator.

    7. When prompted, press Ctrl+C for the Boot Menu.

    8. Select option 4 and wait for the process to finish, which takes longer with more and higher capacity disks.

    9. Configure the node management network as proposed.

    10. Log in with the admin user and run cluster setup

    11. Select to create a new cluster that has a single node cluster, for simplicity.

    12. When prompted, supply the base license in the text file downloaded with the simulator.

  15. Now that the cluster node is running, assign all created disks to the node and configure a second aggregate to hold the data.
    In the command line of the simulator, run these commands:

Configuration

The Simulator has an integrated web interface for management, the OnCommand System Manager. Reach it by connecting over HTTPS to the IP assigned to the cluster.

  1. Verify the new aggregate has all 53 new disks:

  2. Create an SVM. SVM (Storage Virtual Machine) is an intermediate object between the clients and the entire cluster. To configure the Simulator, create and configure at least one SVM.

  3. Add the extra licenses. The first license is for the base cluster, so it is insufficient by itself.

    1. In the OnCommand System Manager, navigate to Configuration > System Tools > Licenses:

    2. At the top of the Licenses page, click the Add button.

    3. On the dialog that opens, enter new licenses, separating each with a comma. FileFly uses the cifs license; add others as required.

  4. Before configuring storage resources, create at least one subnet, which is requested in other wizards. Select the cluster, open Configuration > Network, and create a subnet representing the storage network in use:


    Define the subnet the storage is connected to, and at least two IP addresses are used by SVM.

  5. With the subnet defined, open the Storage Virtual Machines section of the System Manager, which shows that the cluster has no SVM. Select Create to start the configuration process:

  6. For 1 - SVM Details, provide a name to the new SVM, the protocols to support, and select the root aggregate created (here, dataontap01_01) storing the SVM volumes.

  7. For 2 - Configure iSCSI protocol, create a target alias for iSCSI (if enabled), and select the subnet created. Create a new LUN for the vSphere cluster if desired, or do it as a later step, to better configure the host initiators authorized to access the LUNs:

  8. For 3 - Enter SVN administrator details, configure the username and password of the SVM (SVM provides multi-tenancy, so in a production environment access can be provided to a specific SVM instead of the entire cluster), and assign an additional interface and IP for management. One IP of the subnet has been assigned to the data interface (the one pointing to vSphere to connect via iSCSI), the other for the dedicated management interface of the SVM.

  9. The SVM itself is now ready to be used:

Creating an SVM for CIFS

  1. To create an SVM for CIFS, select it for the Data Protocol:

  2. For best results, do not provision a share at this time: if the Add Connection fails, it is quicker to delete and recreate a new SVM rather than troubleshoot the broken one and its shares.

  3. Create a password for the SVM administrator:

Creating a Volume and Share for the SVM

See Data ONTAP 8: How to create a CIFS server on a clustered Data ONTAP storage system.

  1. To create a volume for the SVM, navigate to Storage Virtual Machines > machine name > Storage > Volumes, then select Create.

  2. Specify the size of the volume (here, 10 GB):

  3. With the volume created, create a share on it:

  4. Browse to the folder and select the CIFS volume:

  5. Name the share:

  6. The connection to active directory fails if the time skew is off. Set an NTP server for the timezone to resolve the issue.

    1. As admin, log in to the management address and run the following command.

    2. Allow up to 15 minutes for the update to complete.

    3. To verify the change, use the following command:

  7. To find the IP address of the share, navigate to the Cluster's Configuration > Network > Network Interfaces and check which network IP address has been taken in the subnet:

  8. Test the configuration.

    1. Verify the CIFS server is up and configured on the NetApp side.

    2. Check if they are available on the domain.

    3. Test writing some data to the share.

Configuring FileFly for NetApp

The majority of NetApp deployments already meet most of these requirements:

  • DNS — Must be forward and reverse lookup zones for each SVM and management LIF.

  • Vserver Management access — Must be a NetApp management user for FPolicy.

  • CIFS Privileged User — Must be an AD user with the logon as a service privilege and all available NetApp privileges.

  • Hide symbolic links — Any shares used with FileFly need to hide symbolic links.

  • Flexvols only — Migration from infinite volumes is not supported.

  • No Explorer access — Any FPolicy server deployed must not have any NetApp shares mounted or accessed via Explorer.

DNS

The NetApp server creates the machine account when it connects to active directory for the first time. FileFly requires FQDNs.

  1. Create a fully qualified domain name for the management IP.

  2. Create a fully qualified domain for the CIFS server.

  3. Create forward lookups:

  4. Create reverse lookups for each:

NetApp API user

  1. Navigate to the storage virtual machine and select Configuration > Security > Users to set up the ONTAP API user.

  2. On the Users page select Add to set up the user.

  3. Set a username and password then select Add in the User Login Methods section:

  4. Create a login method for the ONTAP API:

Creating a CIFS privileged user with log on as a service right

  1. Log on as a service to create a new user in AD for this role and grant them rights to log on as a service.

    1. Navigate to Active Directory Users and Computers.

    2. Create a new user.

    3. Set the password and enable the option to keep it from expiring:

  2. On the FPolicy server (where the FPolicy agent is installed), grant that user logon as a service. Similar steps can be done for a local user account.

    1. Navigate to the mmc and open a new one. Navigate to the Start menu and type mmc to locate it quickly:

    1. When the console root opens, it is blank.

    2. On the File menu, select Add/Remove Snap-in..:

    3. Select and Add the Group Policy Object Editor:

    4. Select Finish:

    5. Back on the console, navigate to Local Computer Policy > Computer Configuration > Windows Settings > Security Settings > Local Policies > User Rights Assignment.

    6. Open (double-click) Log on as a service and click the Add User or Group... button.

    7. The rights appear in the center when Apply is selected.

Granting the FPolicy user privileges for NetApp

  1. In the ONTAP GUI, open up the SVM.

  2. Select Configuration > Users and Groups > Windows.

  3. Add the FPolicy user to the administrator group.

  4. Edit the group and enable all privileges.

  1. Navigate to Shares under Storage Virtual Machines.

  2. Select the Share Name to edit, then right-click and select Edit.

  3. Set Symbolic Links to Hide on the Options tab.

  4. Select Save and Close.

  5. Install the Caringo FileFly NetApp FPolicy Server.

  6. Choose Clustered ONTAP 8.2.2 or above for the Installation Type.

  7. Enter the FPolicy user created and granted privileges to for the FPolicy Server Credentials.


    Important: Add this user to the local administrators as well.

  8. Click Install; The installer stops to correct them if the credentials are invalid.

  9. Record the activation code, which is needed to activate the server:

  10. Open the FileFly Admin Portal to add the FPolicy Server.

  11. Select Add New Server and provide the type, hostname, and activation code:





  12. Until at least one NetApp Vserver is configured, the system stays in an error state:

  13. Return to the FPolicy Server installation and finish the setup; it prompts to restart the server.

Configuring the NetApp Connection

  1. Install the “Caringo FileFly NetApp Cluster-mode Config”.

  2. Configure the FPolicy:

  3. Save the configuration in C:\Program Files\Caringo FileFly\data\FileFly Agent\netapp_clustered.cfg

  4. Verify the config file is located in the FileFly Agent folder on the FPolicy server, as directed:

  5. Restart the FileFly Agent service.

  6. Navigate to the FileFly Admin Portal to check the status of the FPolicy agent.

Tip

The FPolicy server is always a migration agent, so CloudScaler / Swarm plugins can be installed on it and data can be migrated from this server without using any other server.

Configuring NetApp Source and Migrating Data

  1. Create a new source to target the NetApp share.


    Any additional SVMs configured for that FPolicy agent should also show up.

  2. Point the URL to the FPolicy server when the field out. From there it shows the available SVMs.

  3. Create a task with a destination, rule, and policy once the source is created.

  4. Run the migration job to test that everything is setup correctly.

  5. As with any files migrated via FileFly, double-clicking demigrates the file.

  6. Within Content UI, the files are like any other file migrated via FileFly:

© DataCore Software Corporation. · https://www.datacore.com · All rights reserved.