Migrating volumes to an encrypted pool
For systems with encryption enabled, you can migrate existing volumes from non-encrypted pools to encrypted pools. Both the management GUI and the command-line interface can be used to migrate volumes to encrypted pools.
During system setup in the management GUI, you can activate and enable encryption licenses. The management GUI automatically displays any nodes that support encryption. The license can either be automatically or manually activated and then enabled for the system and the supported nodes. Any pools that created after encryption is enabled are assigned a key that can be used to encrypt and decrypt data. However, if encryption was configured after volumes were already assigned to non-encrypted pools, you can migrate those volumes to an encrypted pool by using child pools. When you create a child pool after encryption is enabled, an encryption key is created for the child pool even when the parent pool is not encrypted. You can then use volume mirroring to migrate the volumes from the non-encrypted parent pool to the encrypted child pool. You can use either the management GUI or the command-line interface to migrate volumes to an encrypted pool.
The system supports both internal storage and external storage. Internal storage is comprised of arrays that attached directly to the system through serial-attached SCSI connections. External storage is also comprised of arrays that are attached to the system over a storage-area network (SAN). Depending on the type of underlying storage the volume uses, the migration process is different.
If you are migrating volumes that use SAN-attached MDisks, you must complete the migration steps for Migrating volumes that use SAN-attached MDisks.
Migrating volumes that use SAN-attached MDisks
To migrate volumes that use SAN-attached MDisks in the management GUI, complete these steps:
- In the management GUI, select .
- Right-click the non-encrypted parent pool that contains the volumes that you want to migrate and select Create Child Pool.
- On the Create Child Pool page, enter the name for the child pool and the amount of capacity. Ensure that you select enough capacity to accommodate the migrated volumes. Encryption is selected by default when the system is enabled for encryption.
- Click Create. After the child pool is created, you can migrate the volumes to the child pool by adding volume copies.
- In the management GUI, select .
- Select the non-encrypted parent pool to display all the volumes.
- Right-click the volume and select Add Volume Copy....
- On the Add Volume Copy page, select Basic for the type of copy that you are creating. From the list of available pools, select the child pool as the target pool for the copy of the volume.
- Click Add.
- Repeat these steps to add volume copies to the encrypted child pool for the remaining volumes in the parent pool.
- After all the copies are synchronized in the encrypted child pool, you can delete the all the primary copies from the parent pool. The empty parent pool must remain unused to use encrypted volumes in the child pool.
To migrate volumes that use SAN-attached MDisks in the command-line interface, complete these steps:
- In the command-line interface, enter the following command to create a child
pool.
where my_encrypted_child_pool is the name of the new child pool and mypoolis the name of the parent pool.mkmdiskgrp -name my_encrypted_child_pool -parentmdiskgrp mypool -encrypt yes - Issue the CLI command addvdiskcopy to create mirrored copies of the
volumes that are in the parent pool, in the new child pool. An example of this command would
be:
where my_encrypted_child_pool is the name of the new child pool and volume1 is the name of the volume that is being copied. Use the -autodelete to automatically delete the primary copy of the volume after the copy synchronizes.addvdiskcopy -autodelete -mdiskgrp my_encrypted_child_pool -vdisk volume1 - Repeat step 2 until all the volumes from the original parent contain mirrored copies in the new child pool. The empty parent pool must remain unused to use encrypted volumes in the child pool.
Migrating volumes that use internal MDisks
- If you have spare drives, create a new encrypted array with the spare drives.
- If you do not have spare drives, add unassigned external MDisks to the parent pool and create a new encrypted child pool. If you chose this option and intend to keep the external MDisk in the pool after migration, then use the instructions in Migrating volumes that use SAN-attached MDisks.
These steps assume that these tasks have been completed.
- In the management GUI, select .
- Select the pool and right-click the MDisk that represents the array that you want to delete and select Remove.
- To add the array back to the pool, select . The new available internal storage is displayed at the bottom of the panel. Select the icon that represents the drive class of the drives that were formerly in the array that was deleted and select Assign. The new array is encrypted by default. After all the arrays are encrypted, the pool is considered encrypted and data on volumes in that pool is also encrypted.
- To verify the data on these volumes have been migrated to encrypted arrays and are now encrypted,, select .
- Select the pool and verify that the volumes that are listed are encrypted. A key icon is displayed under the Encryption column to indicate the data on the volume is encrypted.
- To remove an array from pool, enter the following command:
In this example, mdisk3 is the array that is removed from pool2.rmarray -mdisk mdisk3 pool2 - To create an new encrypted array and add the array to the storage pool, enter the following
command:
In this example, the array is encrypted by default because encryption is enabled on the I/O group for the array. The data that is stored on the volumes that use that array is now encrypted.mkarray -level raid5 -drive 0:1:2:3 -mdiskgrp pool2 - To verify that the volumes in the pool are encrypted, enter the following
command:
The encrypt state is yes if all the data on the volume is encrypted.lsvdisk