To create a storage profile, you make a POST request with a region ID associated with a cloud account. The request body includes an Amazon Web Services fabric volume type.
Prerequisites
- Verify that all general prerequisites and prerequisites for the Automation Assembler Infrastructure as a Service (IaaS) service have been satisfied. See Prerequisites for API Use Case Examples.
- Verify that you have the cloud account ID for the new cloud account that you added. See Adding Cloud Accounts.
Procedure
Example: Create an Amazon Web Services storage profile
Assign the required variables including the cloud account ID for an
Amazon Web Services cloud account.
$ url='https://appliance.domain.com'
$ api_version='2021-07-15'
$ aws_cloud_account_id='c8c3c9bfdb449475-7f703c5265a63d87-5fa34c478df36b060e1ca3551254c4033013bf3283908e4661cd1c6fb2f8b9ae-ce5aad01092b47558644f6b6615d'
Look up region IDs associated with the cloud account and in the external region ID us-east-1.
$ curl -X GET -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" "$url/iaas/api/regions/?apiVersion=$api_version&"'$filter'"=externalRegionId%20eq%20'us-east-1'%20and%20cloudAccountId%20eq%20'"$aws_cloud_account_id"'" | jq "."
A snippet of the response shows the region ID.
...
"externalRegionId": "us-east-1",
"cloudAccountId": "c8c3c9bfdb449475-7f703c5265a63d87-5fa34c478df36b060e1ca3551254c4033013bf3283908e4661cd1c6fb2f8b9ae-ce5aad01092b47558644f6b6615d",
"id": "37d6c1acf4a8275586468873c739",
"updatedAt": "2022-04-02",
...
Assign the Amazon Web Services region ID.
$ aws_region_id='37d6c1acf4a8275586468873c739'
List all Amazon Web Services fabric volume types.
$ curl -X GET -H 'Content-Type: application/json' -H "Authorization: Bearer $access_token" "$url/iaas/api/fabric-aws-volume-types/?apiVersion=$api_version" | jq "."
A snippet of the response shows the volume types.
...
{
"volumeTypes": [
"standard",
"io1",
"gp2",
"sc1",
"st1"
]
},
...
Select volume type and create an AWS storage profile named aws-storage-profile.
$ curl -X POST \
$url/iaas/api/storage-profiles?apiVersion=$api_version \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $access_token" \
-d '{
"defaultItem": false,
"supportsEncryption": false,
"tags": [ { "key": "env", "value": "dev" } ],
"diskProperties": {
"deviceType": "ebs",
"volumeType": "io1",
"iops": "400"
},
"regionId": "'$aws_region_id'",
"name": "aws-storage-profile",
"description": "Example AWS storage profile"
"regionId":"'$aws_region_id'"
}' | jq "."
A snippet of the response shows the storage profile ID.
... "externalRegionId": "us-east-1", "name": "aws-storage-profile", "description": "Example AWS storage profile", "id": "3e3dc378-a090-4b7e-af41-57b1735d9526", "createdAt": "2022-04-02", "updatedAt": "2022-04-02", ...