Microsoft.NetApp netAppAccounts/capacityPools/volumes 2021-04-01-preview

Bicep resource definition

The netAppAccounts/capacityPools/volumes resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.NetApp/netAppAccounts/capacityPools/volumes resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.NetApp/netAppAccounts/capacityPools/volumes@2021-04-01-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  parent: resourceSymbolicName
  properties: {
    backupId: 'string'
    creationToken: 'string'
    dataProtection: {
      backup: {
        backupEnabled: bool
        backupPolicyId: 'string'
        policyEnforced: bool
        vaultId: 'string'
      }
      replication: {
        endpointType: 'string'
        remoteVolumeRegion: 'string'
        remoteVolumeResourceId: 'string'
        replicationId: 'string'
        replicationSchedule: 'string'
      }
      snapshot: {
        snapshotPolicyId: 'string'
      }
    }
    encryptionKeySource: 'string'
    exportPolicy: {
      rules: [
        {
          allowedClients: 'string'
          cifs: bool
          hasRootAccess: bool
          kerberos5iReadWrite: bool
          kerberos5pReadWrite: bool
          kerberos5ReadWrite: bool
          nfsv3: bool
          nfsv41: bool
          ruleIndex: int
          unixReadWrite: bool
        }
      ]
    }
    isRestoring: bool
    kerberosEnabled: bool
    ldapEnabled: bool
    networkFeatures: 'string'
    protocolTypes: [
      'string'
    ]
    securityStyle: 'string'
    serviceLevel: 'string'
    smbContinuouslyAvailable: bool
    smbEncryption: bool
    snapshotDirectoryVisible: bool
    snapshotId: 'string'
    subnetId: 'string'
    throughputMibps: int
    usageThreshold: int
    volumeType: 'string'
  }
}

Property values

netAppAccounts/capacityPools/volumes

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
string (required)
location Resource location string (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: capacityPools
properties Volume properties VolumeProperties (required)

VolumeProperties

Name Description Value
backupId UUID v4 or resource identifier used to identify the Backup. string

Constraints:
Min length = 36
Max length = 36
Pattern = ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\?([^\/]*[\/])*)([^\/]+)$
creationToken A unique file path for the volume. Used when creating mount targets string (required)

Constraints:
Min length = 1
Max length = 80
Pattern = ^[a-zA-Z][a-zA-Z0-9\-]{0,79}$
dataProtection DataProtection type volumes include an object containing details of the replication VolumePropertiesDataProtection
encryptionKeySource Encryption Key Source. Possible values are: 'Microsoft.NetApp' string
exportPolicy Set of export policy rules VolumePropertiesExportPolicy
isRestoring Restoring bool
kerberosEnabled Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later bool
ldapEnabled Specifies whether LDAP is enabled or not for a given NFS volume. bool
networkFeatures Basic network, or Standard features available to the volume. 'Basic'
'Standard'
protocolTypes Set of protocol types, default NFSv3, CIFS for SMB protocol string[]
securityStyle The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol 'ntfs'
'unix'
serviceLevel The service level of the file system 'Premium'
'Standard'
'Ultra'
smbContinuouslyAvailable Enables continuously available share property for smb volume. Only applicable for SMB volume bool
smbEncryption Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later bool
snapshotDirectoryVisible If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (default to true). bool
snapshotId UUID v4 or resource identifier used to identify the Snapshot. string

Constraints:
Min length = 36
Max length = 36
Pattern = ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\?([^\/]*[\/])*)([^\/]+)$
subnetId The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes string (required)
throughputMibps Maximum throughput in Mibps that can be achieved by this volume int

Constraints:
Min value = 0
Max value = 4500
usageThreshold Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes. int (required)

Constraints:
Min value = 107374182400
Max value = 109951162777600
volumeType What type of volume is this string

VolumePropertiesDataProtection

Name Description Value
backup Backup Properties VolumeBackupProperties
replication Replication properties ReplicationObject
snapshot Snapshot properties. VolumeSnapshotProperties

VolumeBackupProperties

Name Description Value
backupEnabled Backup Enabled bool
backupPolicyId Backup Policy Resource ID string
policyEnforced Policy Enforced bool
vaultId Vault Resource ID string

ReplicationObject

Name Description Value
endpointType Indicates whether the local volume is the source or destination for the Volume Replication 'dst'
'src'
remoteVolumeRegion The remote region for the other end of the Volume Replication. string
remoteVolumeResourceId The resource ID of the remote volume. string (required)
replicationId Id string
replicationSchedule Schedule '_10minutely'
'daily'
'hourly' (required)

VolumeSnapshotProperties

Name Description Value
snapshotPolicyId Snapshot Policy ResourceId string

VolumePropertiesExportPolicy

Name Description Value
rules Export policy rule ExportPolicyRule[]

ExportPolicyRule

Name Description Value
allowedClients Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names string
cifs Allows CIFS protocol bool
hasRootAccess Has root access to volume bool
kerberos5iReadWrite Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5pReadWrite Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5ReadWrite Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later bool
nfsv3 Allows NFSv3 protocol. Enable only for NFSv3 type volumes bool
nfsv41 Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes bool
ruleIndex Order index int
unixReadWrite Read and write access bool

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create new ANF resource with NFSV3/NFSv4.1 volume

Deploy to Azure
This template allows you to create a new Azure NetApp Files resource with a single Capacity pool and single volume configured with NFSV3 or NFSv4.1 protocol. They are all deployed together with Azure Virtual Network and Delegated subnet that are required for any volume to be created
Create new ANF resource with SMB volume

Deploy to Azure
This template allows you to create a new Azure NetApp Files resource with a single Capacity pool and single volume configured with SMB protocol.

ARM template resource definition

The netAppAccounts/capacityPools/volumes resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.NetApp/netAppAccounts/capacityPools/volumes resource, add the following JSON to your template.

{
  "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes",
  "apiVersion": "2021-04-01-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "properties": {
    "backupId": "string",
    "creationToken": "string",
    "dataProtection": {
      "backup": {
        "backupEnabled": "bool",
        "backupPolicyId": "string",
        "policyEnforced": "bool",
        "vaultId": "string"
      },
      "replication": {
        "endpointType": "string",
        "remoteVolumeRegion": "string",
        "remoteVolumeResourceId": "string",
        "replicationId": "string",
        "replicationSchedule": "string"
      },
      "snapshot": {
        "snapshotPolicyId": "string"
      }
    },
    "encryptionKeySource": "string",
    "exportPolicy": {
      "rules": [
        {
          "allowedClients": "string",
          "cifs": "bool",
          "hasRootAccess": "bool",
          "kerberos5iReadWrite": "bool",
          "kerberos5pReadWrite": "bool",
          "kerberos5ReadWrite": "bool",
          "nfsv3": "bool",
          "nfsv41": "bool",
          "ruleIndex": "int",
          "unixReadWrite": "bool"
        }
      ]
    },
    "isRestoring": "bool",
    "kerberosEnabled": "bool",
    "ldapEnabled": "bool",
    "networkFeatures": "string",
    "protocolTypes": [ "string" ],
    "securityStyle": "string",
    "serviceLevel": "string",
    "smbContinuouslyAvailable": "bool",
    "smbEncryption": "bool",
    "snapshotDirectoryVisible": "bool",
    "snapshotId": "string",
    "subnetId": "string",
    "throughputMibps": "int",
    "usageThreshold": "int",
    "volumeType": "string"
  }
}

Property values

netAppAccounts/capacityPools/volumes

Name Description Value
type The resource type 'Microsoft.NetApp/netAppAccounts/capacityPools/volumes'
apiVersion The resource api version '2021-04-01-preview'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
location Resource location string (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates
properties Volume properties VolumeProperties (required)

VolumeProperties

Name Description Value
backupId UUID v4 or resource identifier used to identify the Backup. string

Constraints:
Min length = 36
Max length = 36
Pattern = ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\?([^\/]*[\/])*)([^\/]+)$
creationToken A unique file path for the volume. Used when creating mount targets string (required)

Constraints:
Min length = 1
Max length = 80
Pattern = ^[a-zA-Z][a-zA-Z0-9\-]{0,79}$
dataProtection DataProtection type volumes include an object containing details of the replication VolumePropertiesDataProtection
encryptionKeySource Encryption Key Source. Possible values are: 'Microsoft.NetApp' string
exportPolicy Set of export policy rules VolumePropertiesExportPolicy
isRestoring Restoring bool
kerberosEnabled Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later bool
ldapEnabled Specifies whether LDAP is enabled or not for a given NFS volume. bool
networkFeatures Basic network, or Standard features available to the volume. 'Basic'
'Standard'
protocolTypes Set of protocol types, default NFSv3, CIFS for SMB protocol string[]
securityStyle The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol 'ntfs'
'unix'
serviceLevel The service level of the file system 'Premium'
'Standard'
'Ultra'
smbContinuouslyAvailable Enables continuously available share property for smb volume. Only applicable for SMB volume bool
smbEncryption Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later bool
snapshotDirectoryVisible If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (default to true). bool
snapshotId UUID v4 or resource identifier used to identify the Snapshot. string

Constraints:
Min length = 36
Max length = 36
Pattern = ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\?([^\/]*[\/])*)([^\/]+)$
subnetId The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes string (required)
throughputMibps Maximum throughput in Mibps that can be achieved by this volume int

Constraints:
Min value = 0
Max value = 4500
usageThreshold Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes. int (required)

Constraints:
Min value = 107374182400
Max value = 109951162777600
volumeType What type of volume is this string

VolumePropertiesDataProtection

Name Description Value
backup Backup Properties VolumeBackupProperties
replication Replication properties ReplicationObject
snapshot Snapshot properties. VolumeSnapshotProperties

VolumeBackupProperties

Name Description Value
backupEnabled Backup Enabled bool
backupPolicyId Backup Policy Resource ID string
policyEnforced Policy Enforced bool
vaultId Vault Resource ID string

ReplicationObject

Name Description Value
endpointType Indicates whether the local volume is the source or destination for the Volume Replication 'dst'
'src'
remoteVolumeRegion The remote region for the other end of the Volume Replication. string
remoteVolumeResourceId The resource ID of the remote volume. string (required)
replicationId Id string
replicationSchedule Schedule '_10minutely'
'daily'
'hourly' (required)

VolumeSnapshotProperties

Name Description Value
snapshotPolicyId Snapshot Policy ResourceId string

VolumePropertiesExportPolicy

Name Description Value
rules Export policy rule ExportPolicyRule[]

ExportPolicyRule

Name Description Value
allowedClients Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names string
cifs Allows CIFS protocol bool
hasRootAccess Has root access to volume bool
kerberos5iReadWrite Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5pReadWrite Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5ReadWrite Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later bool
nfsv3 Allows NFSv3 protocol. Enable only for NFSv3 type volumes bool
nfsv41 Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes bool
ruleIndex Order index int
unixReadWrite Read and write access bool

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create new ANF resource with NFSV3/NFSv4.1 volume

Deploy to Azure
This template allows you to create a new Azure NetApp Files resource with a single Capacity pool and single volume configured with NFSV3 or NFSv4.1 protocol. They are all deployed together with Azure Virtual Network and Delegated subnet that are required for any volume to be created
Create new ANF resource with SMB volume

Deploy to Azure
This template allows you to create a new Azure NetApp Files resource with a single Capacity pool and single volume configured with SMB protocol.

Terraform (AzAPI provider) resource definition

The netAppAccounts/capacityPools/volumes resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.NetApp/netAppAccounts/capacityPools/volumes resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.NetApp/netAppAccounts/capacityPools/volumes@2021-04-01-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      backupId = "string"
      creationToken = "string"
      dataProtection = {
        backup = {
          backupEnabled = bool
          backupPolicyId = "string"
          policyEnforced = bool
          vaultId = "string"
        }
        replication = {
          endpointType = "string"
          remoteVolumeRegion = "string"
          remoteVolumeResourceId = "string"
          replicationId = "string"
          replicationSchedule = "string"
        }
        snapshot = {
          snapshotPolicyId = "string"
        }
      }
      encryptionKeySource = "string"
      exportPolicy = {
        rules = [
          {
            allowedClients = "string"
            cifs = bool
            hasRootAccess = bool
            kerberos5iReadWrite = bool
            kerberos5pReadWrite = bool
            kerberos5ReadWrite = bool
            nfsv3 = bool
            nfsv41 = bool
            ruleIndex = int
            unixReadWrite = bool
          }
        ]
      }
      isRestoring = bool
      kerberosEnabled = bool
      ldapEnabled = bool
      networkFeatures = "string"
      protocolTypes = [
        "string"
      ]
      securityStyle = "string"
      serviceLevel = "string"
      smbContinuouslyAvailable = bool
      smbEncryption = bool
      snapshotDirectoryVisible = bool
      snapshotId = "string"
      subnetId = "string"
      throughputMibps = int
      usageThreshold = int
      volumeType = "string"
    }
  })
}

Property values

netAppAccounts/capacityPools/volumes

Name Description Value
type The resource type "Microsoft.NetApp/netAppAccounts/capacityPools/volumes@2021-04-01-preview"
name The resource name string (required)
location Resource location string (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: capacityPools
tags Resource tags Dictionary of tag names and values.
properties Volume properties VolumeProperties (required)

VolumeProperties

Name Description Value
backupId UUID v4 or resource identifier used to identify the Backup. string

Constraints:
Min length = 36
Max length = 36
Pattern = ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\?([^\/]*[\/])*)([^\/]+)$
creationToken A unique file path for the volume. Used when creating mount targets string (required)

Constraints:
Min length = 1
Max length = 80
Pattern = ^[a-zA-Z][a-zA-Z0-9\-]{0,79}$
dataProtection DataProtection type volumes include an object containing details of the replication VolumePropertiesDataProtection
encryptionKeySource Encryption Key Source. Possible values are: 'Microsoft.NetApp' string
exportPolicy Set of export policy rules VolumePropertiesExportPolicy
isRestoring Restoring bool
kerberosEnabled Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later bool
ldapEnabled Specifies whether LDAP is enabled or not for a given NFS volume. bool
networkFeatures Basic network, or Standard features available to the volume. "Basic"
"Standard"
protocolTypes Set of protocol types, default NFSv3, CIFS for SMB protocol string[]
securityStyle The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol "ntfs"
"unix"
serviceLevel The service level of the file system "Premium"
"Standard"
"Ultra"
smbContinuouslyAvailable Enables continuously available share property for smb volume. Only applicable for SMB volume bool
smbEncryption Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later bool
snapshotDirectoryVisible If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (default to true). bool
snapshotId UUID v4 or resource identifier used to identify the Snapshot. string

Constraints:
Min length = 36
Max length = 36
Pattern = ^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\?([^\/]*[\/])*)([^\/]+)$
subnetId The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes string (required)
throughputMibps Maximum throughput in Mibps that can be achieved by this volume int

Constraints:
Min value = 0
Max value = 4500
usageThreshold Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes. int (required)

Constraints:
Min value = 107374182400
Max value = 109951162777600
volumeType What type of volume is this string

VolumePropertiesDataProtection

Name Description Value
backup Backup Properties VolumeBackupProperties
replication Replication properties ReplicationObject
snapshot Snapshot properties. VolumeSnapshotProperties

VolumeBackupProperties

Name Description Value
backupEnabled Backup Enabled bool
backupPolicyId Backup Policy Resource ID string
policyEnforced Policy Enforced bool
vaultId Vault Resource ID string

ReplicationObject

Name Description Value
endpointType Indicates whether the local volume is the source or destination for the Volume Replication "dst"
"src"
remoteVolumeRegion The remote region for the other end of the Volume Replication. string
remoteVolumeResourceId The resource ID of the remote volume. string (required)
replicationId Id string
replicationSchedule Schedule "_10minutely"
"daily"
"hourly" (required)

VolumeSnapshotProperties

Name Description Value
snapshotPolicyId Snapshot Policy ResourceId string

VolumePropertiesExportPolicy

Name Description Value
rules Export policy rule ExportPolicyRule[]

ExportPolicyRule

Name Description Value
allowedClients Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names string
cifs Allows CIFS protocol bool
hasRootAccess Has root access to volume bool
kerberos5iReadWrite Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5pReadWrite Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5ReadWrite Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later bool
nfsv3 Allows NFSv3 protocol. Enable only for NFSv3 type volumes bool
nfsv41 Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes bool
ruleIndex Order index int
unixReadWrite Read and write access bool