cloudmesh-volume

A command called volume and foo for the cloudmesh shell


License
Apache-2.0
Install
pip install cloudmesh-volume==4.1.6

Documentation

Cloudmesh Volume Management

image

image

image

image

Abstract

A simple abstraction layer to manage Cloud Volumes for AWS, Azure, Google, Openstack and Multipass

In this project we will be developing features related to completing and simplifying the volume management interface to an existing cloud. We will also benchmark the clouds while comparing the volume management functions that are deployed on different clouds.

Team members

  • Peter McCandless sp20-516-222
  • Xin Gu sp20-516-227
  • Ashley Thornton sp20-516-230
  • Ashok Singam sp20-516-232

Volume Management functions

  • Volume create - Create new volume - Ashok
    volume create [name]
                  [--size <size>]
                  [--type <volume-type>]
                  [--image <image> | --snapshot <snapshot> | --source <volume>]
                  [--description <description>]
  • Volume delete - Delete volume - Ashok
     volume delete [volume] 
  • Volume list - List volumes - Xin

List volume of vm in specified region and provider. List all the volumes in certain region or provider.

    volume list [--vm=VM NAME]
                [--region=REGION]
                [--cloud=CLOUD]
                [--refresh]
  • Volume migrate - Migrate volume to a new host - Xin

Migrate volume from one vm to another vm within the same region, service or provider. Migrate volume from one vm to another vm between different regions, services or providers.

    volume migrate NAME FVM TVM
                    [--fregion=FROM REGION]
                    [--tregion=TO REGION]
                    [--fservice=FROM SERVICE]
                    [--tservice=TO SERVICE]
                    [--fcloud=FROM CLOUD]
                    [--tcloud=TO CLOUD]
                    [--cloud=CLOUD]
                    [--region=REGION]
                    [--service=SERVICE] 
  • volume sync - Peter

Volume sync alows for data to shared bewteen two volumes. Sync can be used to backup data to or from file services or other block volumes.

    volume sync [VOLUME NAME A] [VOLUME NAME B]
                    [--region=REGION]
                    [--cloud=CLOUD]
  • Volume set - Set volume properties - Ashley

Volume set ties a group of storage blocks together. While the data spans multiple drives, volume set sees them as continious.

    volume set [VOLUME NAME]
                    [--name <name>]
                    [--size <size>]
                    [--description <description>]
                    [--no-property]
                    [--property <key=value> [...] ]
                    [--image-property <key=value> [...] ]
                    [--state <state>]
                    [--type <volume-type>]
                    [--retype-policy <retype-policy>]
                    [--bootable | --non-bootable]
                    [--read-only | --read-write]
  • Volume show - Show volume details - Ashley

Volume show provides information about all volumes, including the name, state, type, size, and percentage of space used.

    volume show [VOLUME NAME]
  • Volume unset - Unset volume properties - Peter

Volume unset separates a volume from a grouping of block volumes.

    volume unset [VOLUME NAME]
                    [--property <key>]
                    [--image-property <key>]
  • volume cost
    • Multicloud enhanced function including cost estimates and the actual cost accured - All

Volume Providers:

Test cases

Write test cases in the form of reproducable pytests

Distribution of clouds between team memebers

https://cloudmesh.github.io/cloudmesh-manual/