##Troubleshoot Volumes Size Reporting Discrepancies for Dell EqualLogic Storage## ###Problem### There is a discrepancy between both the actual volume size in EQL and the image size in Glance, with what is reported by the OpenStack databases. This could lead to confusion if a user is creating volumes from a Glance image that was uploaded from an EQL volume. The image size is larger than the target volume size, because EQL size reporting accounts for additional storage used by EQL for internal volume metadata. ####To Reproduce the issue:#### 1. Create a 1GB volume in OpenStack using Horizon or the Cinder CLI, backed with the Cinder EQL driver. 2. The volume is created and stored in the EQL array. The actual size is 1.01GB, but OpenStack reports it as 1GB. 3. Using the Cinder CLI, upload the 1.01GB volume to Glance. Once uploaded, Glance will report the image size as 1GB. 4. Using the Cinder CLI, create a new 1GB image with the Glance image as the source. The volume creation will fail as the target volume size is too small. 5. Change the target volume size to 2GB, and then repeat step 4. The volume will be created. ###Solution### Assumes that the EQL array is provisioned, and appropriate configuration settings have been included in `/etc/cinder/cinder.conf` to connect to the EQL array. **Note:** See [http://docs.openstack.org/developer/python-cinderclient/#command-line-tool](http://docs.openstack.org/developer/python-cinderclient/#command-line-tool) for details on export settings required to use Cinder and the Glance CLI. ####To Fix the Issue:#### 1. Create a new volume using the Cinder CLI (`cinder create`) or Horizon. Note the ID and size of the volume (`74cf9c04-4543-47ae-a937-a9b7c6c921e7`, `1GB` in this example).
[root@localhost ~]# cinder create --display—name volume1 1

	+--------------------------+--------------------------------------------------+
	| 	Property			 | 	            Value 				   		|
	+--------------------------+--------------------------------------------------+
	| 	attachments 		 |     	          []		  				   |			
	| 	availability zone	|				  nova    	 				   |
	| 	bootable 			| 				false 					   	|
	| 	created_at 		  | 	2014—03—21T18:31:54.248775 	  			|
	| 	display_description  |				None 	 					    |
	| 	display_name 		| 			volume1 						     |
	| 	id 				  | 	74cf9c04—4543—47ae—a937—a9b7c6c921e7 		|
	| 	metadata 			| 					[]		   				|
	| 	size 				| 					1 	   					|
	| 	snapshot_id		  | 				  None	  					 |
	| 	source volid 		| 				  None 	  					|
	| 	status 		  	| 				creating 						|
	| 	volume type		  |				   None 	 	 				|
	+--------------------------+--------------------------------------------------+

	[root@localhost ~#
2. View volume details using the EQL CLI. The actual size (`VolReserve`) is 1.01GB, size is 1GB. **Note:** When viewed using the EQL Group Manager the reported size is displayed as 1.01GB.
a2beqll2> volume select volume—74ct9c04—4S43—4?ae-a931—a9b7c6c92le
a2beqll2 (volume_volume—74cf9c04—4543—47ae—a937—a9b7c6c921e7)> show
_______________________________ Volume Information ________________________________
Name: volume-74cf9c04—4543—47ae-a937—a9b7c6c921e7
Size: 1GB
VolReserve: 1.01GB
VolReservelnUse: 0MB
ReplReservelnUse: 0MB
iSCSI Alias: volume-74cf9c04-4S43-47ae-a937—a9b7c6c921e7
iSCSI Name: iqn.2001—05.com.equallogic:0-8a0906—19f91850c-067000000b4532cl—volume-74cf9c04—4543—l7ae—a937—a9b7c6c921e7
ActualMembers: 1
Snap-Warn: 10%
Snap-Depletion: delete—oldest
Description:
Snap—Reserve: 100%
Snap-Reserve—Avail: 100% (1.01GB)
Permission: read—write
DesiredStatus: online
Status: online
Connections: O
Snapshots: O
Bind:
Type: not-replicated
ReplicationReserveSpace: 0MB
3. Upload this volume to Glance using the Cinder CLI (`cinder upload-to-image`).
[root@localhost ~]# cinder upload-to-image --disk-format raw --container-format bare volume1 image_from_volumel
+---------------------+---------------------------------------+
|       Property      |                 Value                 |
+---------------------+---------------------------------------+
|   container_format  |                  bare                 |
|     disk_format     |                  raw                  |
| display_description |                  None                 |
|           id        | 74cf9c04-4ae-a937—a9b7c6c921e7        |
|       image_id      | 3020a21d—ba37—4495-8899—07fc201161b9  |
|      image_name     |          image_from_volume1           |
|         size        |                  1                    |
|        status       |              uploading                |
|      updated_at     |      2014—03—21T18:31:55.000000       |
|     volume_type     |                 None                  |
+---------------------+---------------------------------------+
4. The size is being reported as 1GB, but when listing the image using the Glance CLI (`glance image-list`) size the actual size is 1085276160 bytes, or roughly 1.01GB.
[root@localhost ~]# glance imaqe—list
+--------------------------------------+--------------------+-------------+------------------+------------+--------+
| ID                                   | Name               | Disk Format | Container Format | Size       | Status |
+--------------------------------------+--------------------+-------------+------------------+------------+--------+
| 3020.21d-b.37—4195—ee99—07fc20fl61b9 | image_from_volume1 | raw         | bare             | 1085276160 | active |
+--------------------------------------+--------------------+-------------+------------------+------------+--------+
5. Create a new volume using the image from Glance (`id 3020a21d-ba37-4495-8899-07fc201161b9` in this example) as the source. Set the target volume size to 1GB because based upon the information presented that is the expected volume size.
[root@localhost ~]# cinder create -—display-name volume2 --image-id 3020a21d-ba37—4495—8899—07fc201161b9 1
ERROR: Invalid input received: Size of specified image 2 is larger than volume size 1. (HTTP 400) (Request-ID: req-4b9369c0—dec5-4e16-a114-c0cdl6bSd210)
6. The workaround is to increase the target volume size to the next whole number, in this case 2GB.
[root@localhost ~]# cinder create ——display-name volume2 —-image—id 3020a21d—ba37-4495—8899-07fc2Oll6lb9 2
+---------------------+--------------------------------------+
|       Property      |                Value                 |
+---------------------+--------------------------------------+
|    attachments      |                  []                  |
| availability_zone   |                 nova                 |
|      bootable       |                false                 |
|     created_at      |      2014-03-21T19:25:31.564482      |
| display_description |               None                   |
|     display_name    |             volume2                  |
|          id         | 64e8eb18—d23f—437b—bcac—b3S2afa6843a |
|   image_id          | 3020a21d—ba37—4495—8899-07fc20116lb9 |
|   metadata          |                  []                  |
|     size            |                  2                   |
| snapshot_id         |                 None                 |
| source_volid        |                 None                 |
|    status           |               creating               |
| volume_type         |                 None                 |
+---------------------+--------------------------------------+
**Note:** If using the Horizon user interface, it will suggest a suitable size for the new volume if the Glance image is selected as the source. 7. Finally, check the new volume in the EQL array.
a2beqll2> volume select volume-64e8eb18-d23f-437b-bcac-b352afa6843a
a2beqll2 (volume_volume-61e8eb18-d23f-437b-bcac-b352afa6843a)> show
______________________________ Volume Information _______________________________
Name: volume-64e8eb18-d23f-437b-bcac-b352afa6843a
Size: 2GB
VolReserve: 2.01GB
VolReserveInUse: 1.01GB
ReplReserveInUse: 0MB
iSCSI Alias: volume-64e8eb18-d23f-437b-bcac-b352afa6843a
iSCSI Name: iqn.2001-05.com.equallogic:0-8a0906-e3091850e-eae000000b7S32cl-volume—64e8eb18—d23f—437b—bcac—b3S2afa6Bl3a
ActualMembers: 1
Snap-Warn: 10%
Snap—Depletion: delete-oldest
Description:
Snap-Reserve: 100%
Snap-Reserve-Avail: 100% (2GB)
Permission: read—write
DesiredStatus: online
Status: online
Connections: 1
Snapshots: O
Bind:
Type: not-replicated
ReplicationReserveSpace: 0MB