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-5fa34c478df36b060e1ca3551254c403301
3bf3283908e4661cd1c6fb2f8b9ae-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", ...