クイック スタート:Azure NetApp Files を設定し、NFS ボリュームを作成する

この記事では、簡単に Azure NetApp Files を設定し、NFS ボリュームを作成する方法について説明します。

このクイック スタートでは、次の項目を設定します。

  • NetApp リソース プロバイダーの登録
  • NetApp アカウント
  • 容量プール
  • Azure NetApp Files の NFS ボリューム

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

NFS ボリュームで有効にできるすべての機能と関連する考慮事項については、NFS ボリュームの作成に関する記事を参照してください。

NetApp リソース プロバイダーを登録する

注意

登録プロセスは、完了するまでに時間がかかることがあります。

ポータル

ポータルを使用して登録手順を行う場合は、前述のように Cloud Shell セッションを開き、次の Azure CLI の手順を実行します。

  1. Azure NetApp Files に対して承認されているサブスクリプションを指定します。

    az account set --subscription <subscriptionId>
    
  2. Azure リソース プロバイダーを登録します。

    az provider register --namespace Microsoft.NetApp --wait  
    

PowerShell

このハウツー記事には、Azure PowerShell モジュール Az バージョン 2.6.0 以降が必要です。 現在のバージョンを調べるには、Get-Module -ListAvailable Az を実行します。 インストールまたはアップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。 必要に応じて、PowerShell セッションで Cloud Shell コンソールを使用することもできます。

  1. PowerShell コマンド プロンプト (または PowerShell Cloud Shell セッション) で、Azure NetApp Files に対して承認されているサブスクリプションを指定します。

    Select-AzSubscription -Subscription <subscriptionId>
    
  2. Azure リソース プロバイダーを登録します。

    Register-AzResourceProvider -ProviderNamespace Microsoft.NetApp
    

Azure CLI

Azure CLI の環境を準備します。

  • Azure Cloud Shell で Bash 環境を使用します。

    新しいウィンドウで Cloud Shell を起動する

  • 必要に応じて、Azure CLI をインストールして、CLI リファレンス コマンドを実行します。

    • ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。

    • 初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。

    • az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。

  1. Azure NetApp Files に対して承認されているサブスクリプションを指定します。

    az account set --subscription <subscriptionId>
    
  2. Azure リソース プロバイダーを登録します。

    az provider register --namespace Microsoft.NetApp --wait  
    

テンプレート

[なし] :

Azure portal、PowerShell、または Azure CLI を使用して NetApp リソース プロバイダーに登録します。


NetApp アカウントを作成する

ポータル

  1. Azure portal の [検索] ボックスに「Azure NetApp Files」と入力し、表示された一覧から [Azure NetApp Files] を選択します。

    Azure NetApp Files を選択する

  2. [+ 作成] をクリックし、新しい NetApp アカウントを作成します。

  3. [新しい NetApp アカウント] ウィンドウで、次の情報を指定します。

    1. アカウント名に「myaccount1」と入力します。

    2. サブスクリプションを選択します。

    3. [新規作成] を選択し、新しいリソース グループを作成します。 リソース グループ名に「myRG1」と入力します。 [OK] をクリックします。

    4. アカウントの場所を選択します。

      [新しい NetApp アカウント] ウィンドウ

      リソース グループ ウィンドウ

  4. [作成] をクリックし、新しい NetApp アカウントを作成します。

PowerShell

  1. 他の例でも参照できるように、いくつかの変数を定義します。

    $resourceGroup = "myRG1"
    $location = "eastus"
    $anfAccountName = "myaccount1"
    

    注意

    サポートされているリージョンの一覧については、「リージョン別の利用可能な製品」を参照してください。 コマンド ライン ツールでサポートされているリージョン名を取得するには、Get-AzLocation | select Location を使用してください。

  2. New-AzResourceGroup コマンドを使用して、新しいリソース グループを作成します。

    New-AzResourceGroup -Name $resourceGroup -Location $location
    
  3. New-AzNetAppFilesAccount コマンドを使用して Azure NetApp Files アカウントを作成します。

    New-AzNetAppFilesAccount -ResourceGroupName $resourceGroup -Location $location -Name $anfAccountName
    

Azure CLI

  1. 他の例でも参照できるように、いくつかの変数を定義します。

    RESOURCE_GROUP="myRG1"
    LOCATION="eastus"
    ANF_ACCOUNT_NAME="myaccount1"
    

    注意

    サポートされているリージョンの一覧については、「リージョン別の利用可能な製品」を参照してください。 コマンド ライン ツールでサポートされているリージョン名を取得するには、az account list-locations --query "[].{Region:name}" --out table を使用してください。

  2. az group create コマンドを使って新しいリソース グループを作成します。

    az group create \
        --name $RESOURCE_GROUP \
        --location $LOCATION
    
  3. az netappfiles account create コマンドを使用して Azure NetApp Files アカウントを作成します。

    az netappfiles account create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME
    

テンプレート

ARM テンプレートは JavaScript Object Notation (JSON) ファイルであり、プロジェクトのインフラストラクチャと構成が定義されています。 このテンプレートでは、宣言型の構文が使用されています。 宣言型の構文では、デプロイしようとしているものを、デプロイを作成する一連のプログラミング コマンドを記述しなくても記述できます。

次のコード スニペットでは、Microsoft.NetApp/netAppAccounts リソースを使用して Azure Resource Manager テンプレート (ARM テンプレート) で NetApp アカウントを作成する方法を示しています。 コードを実行するには、GitHub のリポジトリから完全な ARM テンプレートをダウンロードしてください。

{
  "type": "Microsoft.NetApp/netAppAccounts",
  "apiVersion": "2020-06-01",
  "name": "[parameters('netAppAccountName')]",
  "location": "[parameters('location')]",
  "properties": {}
},

容量プールの作成

ポータル

  1. Azure NetApp Files 管理ブレードで、自分の NetApp アカウント (myaccount1) を選択します。

    NetApp アカウントを選択する

  2. 自分の NetApp アカウントの Azure NetApp Files 管理ブレードで、 [容量プール] をクリックします。

    [容量プール] をクリックする

  3. [+ プールの追加] をクリックします。

    [プールの追加] をクリックする

  4. 容量プールの情報を指定します。

    • プール名として「mypool1」と入力します。
    • サービス レベルに [Premium] を選択します。
    • プール サイズとして 4 (TiB) を選択します。
    • [自動] QoS タイプを使用します。
  5. Create をクリックしてください。

PowerShell

  1. 今後の参照用に新しい変数を定義する

    $poolName = "mypool1"
    $poolSizeBytes = 4398046511104 # 4TiB
    $serviceLevel = "Premium" # Valid values are Standard, Premium and Ultra
    
  2. New-AzNetAppFilesPool を使用して新しい容量プールを作成する

    New-AzNetAppFilesPool -ResourceGroupName $resourceGroup -Location $location -AccountName $anfAccountName -Name $poolName -PoolSize $poolSizeBytes -ServiceLevel $serviceLevel
    

Azure CLI

  1. 今後の参照用に新しい変数を定義する

    POOL_NAME="mypool1"
    POOL_SIZE_TiB=4 # Size in Azure CLI needs to be in TiB unit (minimum 4 TiB)
    SERVICE_LEVEL="Premium" # Valid values are Standard, Premium and Ultra
    
  2. az netappfiles pool create を使用して新しい容量プールを作成する

    az netappfiles pool create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME \
        --pool-name $POOL_NAME \
        --size $POOL_SIZE_TiB \
        --service-level $SERVICE_LEVEL
    

テンプレート

次のコード スニペットでは、Microsoft.NetApp/netAppAccounts/capacityPools リソースを使用して Azure Resource Manager テンプレート (ARM テンプレート) で容量プールを作成する方法を示しています。 コードを実行するには、GitHub のリポジトリから完全な ARM テンプレートをダウンロードしてください。

{
  "type": "Microsoft.NetApp/netAppAccounts/capacityPools",
  "apiVersion": "2020-06-01",
  "name": "[variables('capacityPoolName')]",
  "location": "[parameters('location')]",
  "dependsOn": [
    "[resourceId('Microsoft.NetApp/netAppAccounts', parameters('netAppAccountName'))]"
  ],
  "properties": {
    "serviceLevel": "[parameters('serviceLevel')]",
    "size": "[parameters('poolSizeBytes')]"
  }
},

Azure NetApp Files の NFS ボリュームを作成する

ポータル

  1. 自分の NetApp アカウントの Azure NetApp Files 管理ブレードで、 [ボリューム] をクリックします。

    [ボリューム] をクリックする

  2. [+ ボリュームの追加] をクリックします。

    [ボリュームの追加] をクリックする

  3. [ボリュームの作成] ウィンドウで、ボリュームの情報を指定します。

    1. ボリューム名として「myvol1」と入力します。

    2. 容量プールを選択します (mypool1)。

    3. クォータの既定値を使用します。

    4. 仮想ネットワークで [新規作成] をクリックし、新しい Azure 仮想ネットワーク (Vnet) を作成します。 次の情報を入力します。

      • Vnet 名として「myvnet1」と入力します。
      • 10.7.0.0/16 など、自分の設定用のアドレス空間を指定します。
      • サブネット名として「myANFsubnet」と入力します。
      • 10.7.0.0/24 など、サブネット アドレス範囲を指定します。 専用サブネットは他のリソースと共有できません。
      • サブネットの委任に [Microsoft.NetApp/volumes] を選択します。
      • [OK] をクリックして Vnet を作成します。
    5. サブネットで、新しく作成した Vnet (myvnet1) を委任サブネットとして選択します。

      ボリューム ウィンドウを作成する

      仮想ネットワーク ウィンドウを作成する

  4. [プロトコル] をクリックし、次のアクションを実行します。

    • ボリュームのプロトコルの種類として [NFS] を選択します。
    • ボリュームのエクスポート パスを作成する際に使用するファイル パスとして「myfilepath1」と入力します。
    • ボリュームの NFS バージョン ( [NFSv3] または [NFSv4.1] ) を選択します。 NFS のバージョンについては、「考慮事項」および「ベスト プラクティス」を参照してください。

    クイック スタートの NFS プロトコルを指定する

  5. [確認および作成] をクリックし、作成するボリュームの情報を表示します。

  6. [作成] をクリックして、ボリュームを作成します。 作成されたボリュームが [ボリューム] ブレードに表示されます。

    ボリュームが作成されました

PowerShell

  1. New-AzDelegation コマンドを使用して、"Microsoft.NetApp/volumes" へのサブネットの委任を作成します。

    $anfDelegation = New-AzDelegation -Name ([guid]::NewGuid().Guid) -ServiceName "Microsoft.NetApp/volumes"
    
  2. New-AzVirtualNetworkSubnetConfig コマンドを使用して、サブネットの構成を作成します。

    $subnet = New-AzVirtualNetworkSubnetConfig -Name "myANFSubnet" -AddressPrefix "10.7.0.0/24" -Delegation $anfDelegation
    
  3. New-AzVirtualNetwork コマンドを使用して、仮想ネットワークを作成します。

    $vnet = New-AzVirtualNetwork -Name "myvnet1" -ResourceGroupName $resourceGroup -Location $location -AddressPrefix "10.7.0.0/16" -Subnet $subnet
    
  4. New-AzNetAppFilesVolume コマンドを使用して、ボリュームを作成します。

    $volumeSizeBytes = 1099511627776 # 100GiB
    $subnetId = $vnet.Subnets[0].Id
    
    New-AzNetAppFilesVolume -ResourceGroupName $resourceGroup `
        -Location $location `
        -AccountName $anfAccountName `
        -PoolName $poolName `
        -Name "myvol1" `
        -UsageThreshold $volumeSizeBytes `
        -SubnetId $subnetId `
        -CreationToken "myfilepath1" `
        -ServiceLevel $serviceLevel `
        -ProtocolType NFSv3
    

Azure CLI

  1. 後で使用するために、いくつかの変数を定義します。

    VNET_NAME="myvnet1"
    SUBNET_NAME="myANFSubnet"
    
  2. az network vnet create コマンドを使用して、サブネットがない仮想ネットワークを作成します。

    az network vnet create \
        --resource-group $RESOURCE_GROUP \
        --name $VNET_NAME \
        --location $LOCATION \
        --address-prefix "10.7.0.0/16"
    
    
  3. az network vnet subnet create コマンドを使用して、委任されたサブネットを作成します。

    az network vnet subnet create \
        --resource-group $RESOURCE_GROUP \
        --vnet-name $VNET_NAME \
        --name $SUBNET_NAME \
        --address-prefixes "10.7.0.0/24" \
        --delegations "Microsoft.NetApp/volumes"
    
  4. az netappfiles volume create コマンドを使用して、ボリュームを作成します。

    VNET_ID=$(az network vnet show --resource-group $RESOURCE_GROUP --name $VNET_NAME --query "id" -o tsv)
    SUBNET_ID=$(az network vnet subnet show --resource-group $RESOURCE_GROUP --vnet-name $VNET_NAME --name $SUBNET_NAME --query "id" -o tsv)
    VOLUME_SIZE_GiB=100 # 100 GiB
    UNIQUE_FILE_PATH="myfilepath2" # Please note that creation token needs to be unique within subscription and region
    
    az netappfiles volume create \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --account-name $ANF_ACCOUNT_NAME \
        --pool-name $POOL_NAME \
        --name "myvol1" \
        --service-level $SERVICE_LEVEL \
        --vnet $VNET_ID \
        --subnet $SUBNET_ID \
        --usage-threshold $VOLUME_SIZE_GiB \
        --file-path $UNIQUE_FILE_PATH \
        --protocol-types "NFSv3"
    

テンプレート

次のコード スニペットでは、Azure Resource Manager テンプレート (ARM テンプレート) で VNet を設定し、Azure NetApp Files ボリュームを作成する方法を示しています。 VNet の設定では、Microsoft.Network/virtualNetworks リソースを使用します。 ボリュームの作成では、Microsoft.NetApp/netAppAccounts/capacityPools/volumes リソースを使用します。 コードを実行するには、GitHub のリポジトリから完全な ARM テンプレートをダウンロードしてください。

{
  "type": "Microsoft.Network/virtualNetworks",
  "apiVersion": "2020-06-01",
  "name": "[parameters('virtualNetworkName')]",
  "location": "[parameters('location')]",
  "properties": {
    "addressSpace": {
      "addressPrefixes": [
        "[parameters('vnetAddressPrefix')]"
      ]
    },
    "subnets": [
      {
        "name": "[parameters('subnetName')]",
        "properties": {
          "addressPrefix": "[parameters('subnetAddressPrefix')]",
          "delegations": [
            {
              "name": "NetAppDelegation",
              "properties": {
                "serviceName": "Microsoft.NetApp/volumes"
              }
            }
          ]
        }
      }
    ]
  }
},
{
  "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes",
  "apiVersion": "2020-06-01",
  "name": "[variables('volumeName')]",
  "location": "[parameters('location')]",
  "dependsOn": [
    "[resourceId('Microsoft.NetApp/netAppAccounts/capacityPools', parameters('netAppAccountName'), parameters('netAppPoolName'))]",
    "[resourceId('Microsoft.Network/virtualNetworks', parameters('virtualNetworkName'))]"
  ],
  "properties": {
    "serviceLevel": "[parameters('serviceLevel')]",
    "creationToken": "[parameters('netAppVolumeName')]",
    "usageThreshold": "[parameters('volSizeBytes')]",
    "exportPolicy": {
      "rules": [
        {
          "ruleIndex": 1,
          "unixReadOnly": "[parameters('unixReadOnly')]",
          "unixReadWrite": "[parameters('unixReadWrite')]",
          "cifs": false,
          "nfsv3": "[if(equals( parameters('protocolTypes'), 'NFSv3'),bool('true'),bool('false'))]",
          "nfsv41": "[if(equals(parameters('protocolTypes'), 'NFSv4.1'),bool('true'),bool('false'))]",
          "allowedClients": "[parameters('allowedClients')]"
        }
      ]
    },
    "protocolTypes": [
      "[parameters('protocolTypes')]"
    ],
    "subnetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('virtualNetworkName'), parameters('subnetName'))]",
    "snapshotDirectoryVisible": "[parameters('snapshotDirectoryVisible')]"
  }
}

リソースをクリーンアップする

ポータル

手順が終了していて必要な場合、リソース グループを削除することができます。 リソース グループの削除操作は、元に戻すことができません。

重要

リソース グループ内のすべてのリソースが完全に削除され、元に戻すことはできません。

  1. Azure portal の [検索] ボックスに「Azure NetApp Files」と入力し、表示された一覧から [Azure NetApp Files] を選択します。

  2. サブスクリプションの一覧で、削除するリソース グループ (myRG1) をクリックします。

    リソース グループに移動する

  3. [リソース グループ] ページで、 [リソース グループの削除] をクリックします。

    [リソース グループの削除] ボタンが強調表示されているスクリーンショット。

    ウィンドウが開き、リソース グループと共に削除されるリソースに関する警告が表示されます。

  4. リソース グループの名前 (myRG1) を入力して、リソース グループとその中のすべてのリソースを完全に削除することを確認してから、 [削除] をクリックします。

    リソース グループの削除の確認

PowerShell

手順が終了していて必要な場合、リソース グループを削除することができます。 リソース グループの削除操作は、元に戻すことができません。

重要

リソース グループ内のすべてのリソースが完全に削除され、元に戻すことはできません。

  1. Remove-AzResourceGroup コマンドを使用して、リソース グループを削除します。

    Remove-AzResourceGroup -Name $resourceGroup
    

Azure CLI

手順が終了していて必要な場合、リソース グループを削除することができます。 リソース グループの削除操作は、元に戻すことができません。

重要

リソース グループ内のすべてのリソースが完全に削除され、元に戻すことはできません。

  1. az group delete コマンドを使用して、リソース グループを削除します。

    az group delete \
        --name $RESOURCE_GROUP
    

テンプレート

[なし] :

Azure portal、PowerShell、または Azure CLI を使用してリソース グループを削除します。


次のステップ