describe_stored_iscsi_volumes ( $opt )

This operation returns description of the gateway volumes specified in the request. The list of gateway volumes in the request must be from one gateway. In the response Amazon Storage Gateway returns volume information sorted by volume ARNs.

Access

public

Parameters

Parameter

Type

Required

Description

$opt

array

Optional

An associative array of parameters that can have the following keys:

  • VolumeARNs - string|array - Required - An array of strings where each string represents the Amazon Resource Name (ARN) of a stored volume. All of the specified stored volumes must from the same gateway. Use ListVolumes to get volume ARNs for a gateway. Pass a string for a single value, or an indexed array for multiple values.
  • curlopts - array - Optional - A set of values to pass directly into curl_setopt(), where the key is a pre-defined CURLOPT_* constant.
  • returnCurlHandle - boolean - Optional - A private toggle specifying that the cURL handle be returned rather than actually completing the request. This toggle is useful for manually managed batch requests.

Returns

Type

Description

CFResponse

A CFResponse object containing a parsed HTTP response.

Examples

Volumes and Snapshots

$ec2 = new AmazonEC2();
$sg = new AmazonStorageGateway();

// Get network interface ID
$response = $sg->describe_gateway_information(array('GatewayARN' => $gateway_arn));
var_dump($response->isOK());
$network_interface_id = (string) $response->body->GatewayNetworkInterfaces->Ipv4Address;

// Get local disk
$response = $sg->list_local_disks(array('GatewayARN' => $gateway_arn));
var_dump($response->isOK());
$disks = $response->body->DiskId()->map_string();
$disk_id = $disks[1];

// List iSCSI volumes
$response = $sg->list_volumes(array('GatewayARN' => $gateway_arn));
var_dump($response->isOK());

// Add iSCSI volume
$response = $sg->create_stored_iscsi_volume(array(
	'GatewayARN'           => $gateway_arn,
	'DiskId'               => $disk_id,
	'NetworkInterfaceId'   => $network_interface_id,
	'PreserveExistingData' => true,
	'TargetName'           => 'aws-sdk-php-test-volume-01',
));
var_dump($response->isOK());
$volume_arn = (string) $response->body->VolumeARN;
$target_arn = (string) $response->body->TargetARN;

// Wait until volume is available
do
{
	sleep(20); echo '.';
	$response = $sg->describe_stored_iscsi_volumes(array('VolumeARNs' => array($volume_arn)));
	$status = $response->body->VolumeStatus()->map_string();
	$status = (string) reset($status);
} while ($status !== 'AVAILABLE');

// List iSCSI volumes
$response = $sg->list_volumes(array('GatewayARN' => $gateway_arn));
var_dump($response->isOK());

// Update snapshot schedule
$response = $sg->update_snapshot_schedule(array(
	'VolumeARN'         => $volume_arn,
	'StartAt'           => 0,
	'RecurrenceInHours' => 24,
	"Description"       => 'daily snapshot',
));
var_dump($response->isOK());

// Describe snapshot schedule
$response = $sg->describe_snapshot_schedule(array(
	'VolumeARN' => $volume_arn,
));
var_dump($response->isOK());

// Update chap credentials
$response = $sg->update_chap_credentials(array(
	'TargetARN'                     => $target_arn,
	'SecretToAuthenticateInitiator' => '111111111111',
	'InitiatorName'                 => 'example-initiator',
	'SecretToAuthenticateTarget'    => '222222222222',
));
var_dump($response->isOK());

// Describe chap credentials
$response = $sg->describe_chap_credentials(array(
	'TargetARN' => $target_arn,
));
var_dump($response->isOK());

// Delete chap credentials
$response = $sg->delete_chap_credentials(array(
	'TargetARN'     => $target_arn,
	'InitiatorName' => 'example-initiator',
));
var_dump($response->isOK());

// Delete iSCSI volume
$response = $sg->delete_volume(array(
	'VolumeARN'  => $volume_arn,
));
var_dump($response->isOK());

// List iSCSI volumes
$response = $sg->list_volumes(array('GatewayARN' => $gateway_arn));
var_dump($response->isOK());

Source

Method defined in services/storagegateway.class.php | Toggle source view (12 lines) | View on GitHub

public function describe_stored_iscsi_volumes($opt = null)
{
    if (!$opt) $opt = array();
    
    // List (non-map)
    if (isset($opt['VolumeARNs']))
    {
        $opt['VolumeARNs'] = (is_array($opt['VolumeARNs']) ? $opt['VolumeARNs'] : array($opt['VolumeARNs']));
    }

    return $this->authenticate('DescribeStorediSCSIVolumes', $opt);
}

Copyright © 2010–2013 Amazon Web Services, LLC


Feedback