Skip to main content

Create a working environment with PAYGO (node-based)

Contributors netapp-ranuk

You can create a new Cloud Volumes ONTAP working environment using a pay-as-you-go (PAYGO) subscription. You can add new volumes when creating the working environment.

Note
When using PAYGO subscription:
  • A marketplace subscription is required.

  • A NetApp Support Site (NSS) key is recommended to register the system for support, but it's not required.

  • You can add more volumes after creating the working environment. You can choose to create a volume using either NFS, CIFS, or iSCSI protocol.

Choose the workflow to use based on the type of the Cloud Volumes ONTAP deployment:

Create working environment for single node

You can use this workflow to create a single node Cloud Volumes ONTAP working environment.

Step 1. Select the region

Perform the workflow Get regions and choose the code value for the region parameter in step 9.

Step 2. Select the workspace

Perform the workflow Get tenants and choose the workspacePublicId value for the tenantId parameter in step 9.

Step 3. Select the permutations configuration

Perform the workflow Get permutations and choose the ontapVersion and license: type and instanceType values for the vsaMetadata parameter in step 9.

Step 4. Select the VPC

Perform the workflow Get VPCs and do the following:

  • Choose the vpcId value for the vpcId parameter in step 9.

  • Choose the cidrBlock values for the ips value of the volume parameter in step 9.

Step 5. Select the EBS volume configuration

Perform the workflow Get EBS volume types and choose the size and supportedVolumeTypes values for the ebsVolumeSize and ebsVolumeType parameters in step 9.

Note You need to choose one of the allowed values for the required ebsVolumeType parameter. We have used gp2 value for this parameter in step 9.

Step 6. Attach a marketplace subscription

Perform the workflow Attach SaaS subscription.

Step 7. (Optional) Obtain an NSS key

An NSS key is optional when using PAYGO licensing. If needed, you can create a key or select an existing key, and include the NSS key in the nssAccount parameter in step 9.

  • To create a new NSS key using the BlueXP web user interface, perform the task Generate NSS user ID and choose the NSS ID.

  • To select an existing NSS key, perform the workflow Get NSS keys and choose the id of the required NSS user.

Step 8. (Optional) Create a new volume

You can optionally add a new volume while creating a working environment.

  • Choose the name and size values for the corresponding name and size:size input parameters in step 9. The size:unit must be one of the following: TB, GB, MB, KB, or Byte.

  • Choose the policyType, ips, and the nfsVersion parameters in the exportPolicyInfo input parameter in step 9 if you choose to create a volume using the NFS protocol. The ips parameter signifies the client IP address (could be multiple addresses) that can access the volume over the network. The nfsVersion parameter signifies the version of the NFS protocol that a client will use for data transmission over a network.

    Note If you choose to create a volume using CIFS protocol, you will need to set the shareInfo parameter. If you choose to create a volume using iSCSI protocol, you will need to set the iscsiInfo parameter accordingly.

Step 9. Create the working environment

You can issue a REST API call to create a working environment.

HTTP method and endpoint

This REST API call uses the following method and endpoint.

HTTP method Path

POST

/occm/api/vsa/working-environments

Curl example
curl --request POST \
--location "https://cloudmanager.cloud.netapp.com/occm/api/vsa/working-environments" \
--header "x-agent-id: <AGENT_ID>" \
--header "Authorization: Bearer <ACCESS_TOKEN>" \
--header "Content-Type: application/json" \
--d @JSONinput
Additional input parameters

The JSON input example includes the minimum list of parameters.

Note By default, new Cloud Volumes ONTAP instances are created with Elastic Volumes enabled on aggregates. You can set "disableEv": "true" if you choose to create a Cloud Volumes ONTAP instance with an aggregate where Elastic Volumes is disabled.
Example 1. JSON input example
Enable Elastic Volumes

The ebsVolumeType parameter must be gp3 or io1.

disableEv: boolean, default value is false. By default, new Cloud Volumes ONTAP instances are created with Elastic Volumes enabled on aggregates.

{
    "name": "ziv01we02",
    "svmPassword": "user_password",
    "vpcId": "vpc-b16c90d4",
    "region": "us-east-1",
    "tenantId": "tenantIDgoeshere",
    "subnetId": "subnet-f4da95ac",
    "dataEncryptionType": "AWS",
    "disableEv":"false",
    "vsaMetadata": {
        "ontapVersion": "ONTAP-9.9.0.T1",
        "licenseType": "cot-explore-paygo",
        "instanceType": "m5.xlarge"
        },
    "ebsVolumeSize": {
        "size": 100,
        "unit": "GB"
    },
    "ebsVolumeType": "gp2",
    "volume": {
      "name": "ziv02vol01",
      "size": {
        "size": 200,
        "unit": "GB"
      },
      "exportPolicyInfo": {
        "policyType": "custom",
        "ips": [
          "172.31.0.0/16"
        ],
       "nfsVersion": [
          "nfs3",
          "nfs4"
        ]
      },
      "snapshotPolicyName": "default",
      "enableThinProvisioning": true,
      "enableCompression": true,
      "enableDeduplication": true
    },
    "writingSpeedState": "NORMAL"
}
Disable Elastic Volumes

You can set "disableEv": "true" if you choose to create a Cloud Volumes ONTAP instance with an aggregate where Elastic Volumes is disabled.

{
    "name": "ziv01we02",
    "svmPassword": "user_password",
    "vpcId": "vpc-b16c90d4",
    "region": "us-east-1",
    "tenantId": "tenantIDgoeshere",
    "subnetId": "subnet-f4da95ac",
    "dataEncryptionType": "AWS",
    "disableEv":"true",
    "vsaMetadata": {
        "ontapVersion": "ONTAP-9.9.0.T1",
        "licenseType": "cot-explore-paygo",
        "instanceType": "m5.xlarge"
        },
    "ebsVolumeSize": {
        "size": 100,
        "unit": "GB"
    },
    "ebsVolumeType": "gp2",
    "volume": {
      "name": "ziv02vol01",
      "size": {
        "size": 200,
        "unit": "GB"
      },
      "exportPolicyInfo": {
        "policyType": "custom",
        "ips": [
          "172.31.0.0/16"
        ],
       "nfsVersion": [
          "nfs3",
          "nfs4"
        ]
      },
      "snapshotPolicyName": "default",
      "enableThinProvisioning": true,
      "enableCompression": true,
      "enableDeduplication": true
    },
    "writingSpeedState": "NORMAL"
}

This request uses PAYGO subscription as indicated in the licenseType parameter.

JSON output example

The JSON output example includes an example of the VsaWorkingEnvironmentresponse.

{
    "publicId": "VsaWorkingEnvironment-0NWsb1aX",
    "name": "ziv01we02",
    "tenantId": "tenantIDgoeshere",
    "svmName": "svm_ziv01we02",
    "creatorUserEmail": "user_email",
    "status": null,
    "awsProperties": null,
    "reservedSize": null,
    "encryptionProperties": null,
    "clusterProperties": null,
    "ontapClusterProperties": null,
    "actionsRequired": null,
    "interClusterLifs": null,
    "cronJobSchedules": null,
    "snapshotPolicies": null,
    "svms": null,
    "activeActions": null,
    "replicationProperties": null,
    "schedules": null,
    "cloudProviderName": "Amazon",
    "isHA": false,
    "workingEnvironmentType": "VSA",
    "supportRegistrationProperties": null,
    "supportRegistrationInformation": null,
    "haProperties": null,
    "capacityFeatures": null,
    "cloudSyncProperties": null,
    "supportedFeatures": null,
    "k8sProperties": null,
    "fpolicyProperties": null,
    "saasProperties": null,
    "cbsProperties": null,
    "complianceProperties": null,
    "monitoringProperties": null
}

Create working environment for high availability pair

You can use this workflow to create an HA Cloud Volumes ONTAP working environment.

Step 1. Select the region

Perform the workflow Get regions and choose the code value for the region parameter in step 11.

Step 2. Select the cloud provider account

Perform the workflow Get cloud provider accounts and choose the publicId value of the required account for the cloudProviderAccount parameter.

Step 3. Select the workspace

Perform the workflow Get tenants and choose the workspacePublicId value for the tenantId parameter in step 12.

Step 4. Select the permutations configuration

Perform the workflow Get permutations and choose the ontapVersion and license: type and instanceType values for the vsaMetadata parameter in step 12.

Step 5. Select the packages configuration

Perform the Get Packages and choose the packageName, instanceTenancy and writingSpeedState values for the corresponding parameters in step 12.

Step 6. Select the VPC

Perform the workflow Get VPCs and do the following:

  • Choose the vpcId value for the vpcId parameter in step 12.

  • Choose three subnets and choose the subnetId value for the haParams:mediatorSubnetId, haParams:node1SubnetId, haParams:node2SubnetId in step 12.

  • Select the IPs for the clusterFloatingIP, dataFloatingIP, dataFloatingIP2 values for the corresponding parameters in step 12.

Step 7. Select route table

Perform the workflow Get route tables and choose the id value of the required route table for haParams:routeTableIds parameter is step 12.

Step 8. Select the EBS volume configuration

Perform the workflow Get EBS volume types and choose the size and supportedVolumeTypes values for the ebsVolumeSize and ebsVolumeType parameters in step 12.

Note You need to choose one of the allowed values for the required ebsVolumeType parameter. We have used gp2 value for this parameter in step 12.

Step 9. Attach a marketplace subscription

Perform the workflow Attach SaaS subscription.

Step 10. (Optional) Obtain an NSS key

An NSS key is optional when using PAYGO licensing. If needed, you can create a key or select an existing key, and include the NSS key in the nssAccount parameter in step 12.

  • To create a new NSS key using the BlueXP web user interface, perform the task Generate NSS user ID and choose the NSS ID.

  • To select an existing NSS key, perform the workflow Get NSS keys and choose the id of the required NSS user.

Step 11. (Optional) Create a new volume

You can optionally add a new volume while creating a working environment.

  • Choose the name and size values for the corresponding name and size:size input parameters in step 12. The size:unit must be one of the following: TB, GB, MB, KB, or Byte.

  • Choose the policyType, ips, and the nfsVersion parameters in the exportPolicyInfo input parameter in step 12 if you choose to create a volume using the NFS protocol. The ips parameter signifies the client IP address (could be multiple addresses) that can access the volume over the network. The nfsVersion parameter signifies the version of the NFS protocol that a client will use for data transmission over a network.

    Note If you choose to create a volume using CIFS protocol, you will need to set the shareInfo parameter. If you choose to create a volume using iSCSI protocol, you will need to set the iscsiInfo parameter accordingly.

Step 12. Create the working environment

You can issue a REST API call to create a working environment for an HA pair.

HTTP method and endpoint

This REST API call uses the following method and endpoint.

HTTP method Path

POST

/occm/api/aws/ha/working-environments

Curl example
curl --request POST \
--location "https://cloudmanager.cloud.netapp.com/occm/api/aws/ha/working-environments" \
--header "x-agent-id: <AGENT_ID>" \
--header "Authorization: Bearer <ACCESS_TOKEN>" \
--header "Content-Type: application/json" \
--d @JSONinput
Example 2. JSON input example
Enable Elastic Volumes

The ebsVolumeType parameter must be gp3 or io1.

disableEv: boolean, default value is false. By default, new Cloud Volumes ONTAP instances are created with Elastic Volumes enabled on aggregates.

{
  "name": "ziv04we02ha",
  "svmPassword": "password",
  "vpcId": "vpc-b16c90d4",
  "region": "us-east-1",
  "tenantId": "tenantIDgoeshere",
  "disableEv": "false",
  "ebsVolumeSize": {
    "size": 100,
    "unit": "GB"
  },
  "ebsVolumeType": "gp2",
  "vsaMetadata": {
    "ontapVersion": "ONTAP-9.9.0X6.T1.ha",
    "licenseType": "ha-cot-explore-paygo",
    "instanceType": "m5.xlarge"
  },
  "dataEncryptionType": "AWS",
  "ontapEncryptionParameters": null,
  "haParams": {
    "node1SubnetId": "subnet-f4da95ac",
    "node2SubnetId": "subnet-b4387a9e",
    "mediatorSubnetId": "subnet-76e6d400",
    "clusterFloatingIP": "4.4.4.4",
    "dataFloatingIP": "5.5.5.5",
    "dataFloatingIP2": "6.6.6.6",
    "mediatorKeyPairName": "Developers_Virginia",
    "routeTableIds": [
      "rtb-02a45467"
    ],
    "failoverMode": "FloatingIP",
    "mediatorAssignPublicIP": true
  },
  "volume": {
    "name": "ziv02vol01",
    "size": {
      "size": 200,
      "unit": "GB"
    },
    "exportPolicyInfo": {
      "policyType": "custom",
      "ips": [
        "172.31.0.0/16"
      ],
     "nfsVersion": [
        "nfs3",
        "nfs4"
      ]
    },
    "snapshotPolicyName": "default",
    "enableThinProvisioning": true,
    "enableCompression": true,
    "enableDeduplication": true
  },
  "optimizedNetworkUtilization": false,
  "instanceTenancy": "default",
  "packageName": "aws_ha_poc",
  "cloudProviderAccount": "InstanceProfile",
  "backupVolumesToCbs": false,
  "enableMonitoring": "false",
  "writingSpeedState": "NORMAL"
}
Disable Elastic Volumes

You can set "disableEv": "true" if you choose to create a Cloud Volumes ONTAP instance with an aggregate where Elastic Volumes is disabled.

{
  "name": "ziv04we02ha",
  "svmPassword": "password",
  "vpcId": "vpc-b16c90d4",
  "region": "us-east-1",
  "tenantId": "tenantIDgoeshere",
  "ebsVolumeSize": {
    "size": 100,
    "unit": "GB"
  },
  "disableEv": "true",
  "ebsVolumeType": "gp2",
  "vsaMetadata": {
    "ontapVersion": "ONTAP-9.9.0X6.T1.ha",
    "licenseType": "ha-cot-explore-paygo",
    "instanceType": "m5.xlarge"
  },
  "dataEncryptionType": "AWS",
  "ontapEncryptionParameters": null,
  "haParams": {
    "node1SubnetId": "subnet-f4da95ac",
    "node2SubnetId": "subnet-b4387a9e",
    "mediatorSubnetId": "subnet-76e6d400",
    "clusterFloatingIP": "4.4.4.4",
    "dataFloatingIP": "5.5.5.5",
    "dataFloatingIP2": "6.6.6.6",
    "mediatorKeyPairName": "Developers_Virginia",
    "routeTableIds": [
      "rtb-02a45467"
    ],
    "failoverMode": "FloatingIP",
    "mediatorAssignPublicIP": true
  },
  "volume": {
    "name": "ziv02vol01",
    "size": {
      "size": 200,
      "unit": "GB"
    },
    "exportPolicyInfo": {
      "policyType": "custom",
      "ips": [
        "172.31.0.0/16"
      ],
     "nfsVersion": [
        "nfs3",
        "nfs4"
      ]
    },
    "snapshotPolicyName": "default",
    "enableThinProvisioning": true,
    "enableCompression": true,
    "enableDeduplication": true
  },
  "optimizedNetworkUtilization": false,
  "instanceTenancy": "default",
  "packageName": "aws_ha_poc",
  "cloudProviderAccount": "InstanceProfile",
  "backupVolumesToCbs": false,
  "enableMonitoring": "false",
  "writingSpeedState": "NORMAL"
}

This request uses PAYGO licensing as indicated in the licenseType parameter.

JSON output example

The JSON output example includes an example of the HA working environment details.

{
    "publicId": "VsaWorkingEnvironment-sQ9AELDS",
    "name": "ziv04we02ha",
    "tenantId": "tenantIDshownhere",
    "svmName": "svm_ziv04we02ha",
    "creatorUserEmail": "user_email",
    "status": null,
    "awsProperties": null,
    "reservedSize": null,
    "encryptionProperties": null,
    "clusterProperties": null,
    "ontapClusterProperties": null,
    "actionsRequired": null,
    "interClusterLifs": null,
    "cronJobSchedules": null,
    "snapshotPolicies": null,
    "svms": null,
    "activeActions": null,
    "replicationProperties": null,
    "schedules": null,
    "cloudProviderName": "Amazon",
    "isHA": true,
    "workingEnvironmentType": "VSA",
    "supportRegistrationProperties": null,
    "supportRegistrationInformation": null,
    "haProperties": null,
    "capacityFeatures": null,
    "cloudSyncProperties": null,
    "supportedFeatures": null,
    "k8sProperties": null,
    "fpolicyProperties": null,
    "saasProperties": null,
    "cbsProperties": null,
    "complianceProperties": null,
    "monitoringProperties": null
}