Cloud Drives (ASG) using pxctl
Cloud Drive operations
If Portworx is managing your cloud drives, the CLI provides a set of commands that display information about your EBS volumes.
Cloud Drive Help
Run the pxctl clouddrive command with the --help flag to display the list of the available subcommands and flags.
Listing all Cloud Drives
Enter the following command to display all the cloud drives used by Portworx:
pxctl clouddrive list
Cloud Drives Summary
Number of nodes in the cluster: 3
Number of drive sets in use: 3
List of storage nodes: [ip-172-20-52-178.ec2.internal ip-172-20-53-168.ec2.internal ip-172-20-33-108.ec2.internal]
List of storage less nodes: []
Drive Set List
NodeIndex NodeID InstanceID Zone Drive IDs
0 ip-172-20-53-168.ec2.internal i-0347f50a091716c66 us-east-1a vol-0a3ff5863c7b2c2e4, vol-0f821f3e3a884e275
1 ip-172-20-33-108.ec2.internal i-089b22fc89bb11a92 us-east-1a vol-048dd9c1fd5ed421d, vol-012a4ed30013590ef
2 ip-172-20-52-178.ec2.internal i-09169ceb37b251bac us-east-1a vol-0bd9aaab0fb615351, vol-0c9f027d111844227
Inspecting Cloud Drives
To display more detailed information about the drives attached to a node, run the pxctl clouddrive inspect with the --node id flag and pass it the id of the node.
pxctl clouddrive inspect --node ip-172-20-53-168.ec2.internal
Drive Set Configuration
Number of drives in the Drive Set: 2
NodeID: ip-172-20-53-168.ec2.internal
NodeIndex: 0
InstanceID: i-0347f50a091716c66
Zone: us-east-1a
Drive 0
ID: vol-0a3ff5863c7b2c2e4
Type: io1
Size: 16 Gi
Iops: 100
Path: /dev/xvdf
Drive 1
ID: vol-0f821f3e3a884e275
Type: gp2
Size: 8 Gi
Iops: 100
Path: /dev/xvdg
Transfer cloud drives to a storageless node
The pxctl clouddrive transfer operation allows you to move your cloud drives from an existing node to a storageless node using a single command. Using this command, you can transfer cloud drives to new nodes more quickly and with fewer steps than manually detaching, then reattaching cloud drives.
The pxctl clouddrive transfer command works by:
- Putting your storage pools in maintenance mode
- Detaching the cloud drive from the source node
- Attaching it to the destination node
- Ending maintenance mode
- This command is only supported on Google cloud.
- This is not supported when Portworx is installed using an internal KVDB.
Initiate a cloud drive transfer to a storageless node
Perform the following steps to transfer cloud drives to a storageless node:
-
Create replacement nodes and add them to your cluster, or identify an existing storageless node you want to transfer your cloud storage drives to.
-
Enter the
pxctl clouddrive transfer submitcommand, specifying the following options:-
The
-sflag with the ID of the Portworx node that currently owns the drive set. This is the 'NodeID' displayed in the output of the 'pxctl clouddrive list' command. -
Optional: The
-dflag with the ID of the instance you want to transfer the drive set to. You can find the instance ID of your node by entering thepxctl clouddrive listcommand. The destination instance must be a storageless node (i.e. have no Drive IDs) and in the same zone, if your cluster has zones.
pxctl clouddrive transfer submit -s <source-node-ID> -d <dest-node-ID>Request to transfer clouddrive submitted, Check status using: pxctl cd transfer status -i 123456789 -
Once you start a cloud drive transfer, the operation will run in the background.