Azure CLI を使用して Azure ファイル共有をバックアップする

Azure CLI では、Azure リソースを管理するためのコマンド ライン エクスペリエンスが提供されます。 これは、Azure リソースを使用するためのカスタム オートメーションを構築するための優れたツールです。 この記事では、Azure CLI を使用した Azure ファイル共有のバックアップ方法について詳しく説明します。 これらの手順は、Azure PowerShell または Azure portal を介して実行することもできます。

このチュートリアルを最後まで読むと、Azure CLI を使用して以下の操作を実行する方法がわかります。

  • Recovery Services コンテナーを作成する
  • Azure ファイル共有のバックアップを有効にする
  • ファイル共有のオンデマンド バックアップをトリガーする

前提条件

  • Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。

  • CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。

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

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

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

  • このチュートリアルには、Azure CLI のバージョン 2.0.18 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。

Recovery Services コンテナーを作成する

Recovery Service コンテナーは、すべてのバックアップ項目にわたって統合されたビューと管理機能を提供するエンティティです。 保護されたリソースのバックアップ ジョブを実行すると、Recovery Services コンテナー内に復元ポイントが作成されます。 この復元ポイントのいずれかを使用して、データを特定の時点に復元できます。

Recovery Services コンテナーを作成するには、次の手順に従います。

  1. コンテナーはリソース グループに配置されます。 既存のリソース グループがない場合は、az group create を使用して新しいリソース グループを作成します。 このチュートリアルでは、米国東部リージョンで新しいリソース グループ、azurefiles を作成します。

    az group create --name AzureFiles --location eastus --output table
    
    Location    Name
    ----------  ----------
    eastus      AzureFiles
    
  2. az backup vault create コマンドレットを使用して、コンテナーを作成します。 リソース グループに使用したのと同じコンテナーの場所を指定します。

    次の例では、米国東部リージョンに azurefilesvault という名前の Recovery Services コンテナーを作成します。

    az backup vault create --resource-group azurefiles --name azurefilesvault --location eastus --output table
    
    Location    Name                ResourceGroup
    ----------  ----------------    ---------------
    eastus      azurefilesvault     azurefiles
    

Azure ファイル共有のバックアップを有効にする

このセクションでは、バックアップを構成する Azure ファイル共有が既にあることを前提としています。 お持ちでない場合は、az storage share create コマンドを使用して Azure ファイル共有を作成します。

ファイル共有のバックアップを有効にするには、バックアップ ジョブの実行時間と回復ポイントの保存期間を定義する保護ポリシーを作成する必要があります。 az backup policy create コマンドレットを使用してバックアップ ポリシーを作成できます。

次の例では、az backup protection enable-for-azurefileshare コマンドレットを使用して、schedule 1 バックアップ ポリシーを使用して afsaccount ストレージ アカウントの azurefileshare ファイル共有のバックアップを有効にします。

az backup protection enable-for-azurefileshare --vault-name azurefilesvault --resource-group  azurefiles --policy-name schedule1 --storage-account afsaccount --azure-file-share azurefiles  --output table
Name                                  ResourceGroup
------------------------------------  ---------------
0caa93f4-460b-4328-ac1d-8293521dd928  azurefiles

出力の Name 属性は、バックアップの有効化操作のためにバックアップ サービスによって作成されたジョブの名前に対応しています。 ジョブの状態を追跡するには、az backup job show コマンドレットを使用します。

ファイル共有のオンデマンド バックアップをトリガーする

スケジュールされた時刻にバックアップ ポリシーがジョブを実行するのを待たずに、ファイル共有のオンデマンド バックアップをトリガーする場合は、az backup protection backup-now コマンドレットを使用します。

オンデマンド バックアップをトリガーするには、次のパラメーターを定義する必要があります。

  • --container-name は、ファイル共有がホストされているストレージ アカウントの名前です。 コンテナーの名前またはフレンドリ名を取得するには、az backup container list コマンドを使用します。
  • --item-name は、オンデマンド バックアップをトリガーするファイル共有の名前をです。 バックアップ項目の名前またはフレンドリ名を取得するには、az backup item list コマンドを使用します。
  • --retain-until は、回復ポイントを保持する日付を指定します。 値は UTC 時刻形式 (dd-mm-yyyy) で設定する必要があります。

次の例では、afsaccount ストレージ アカウントの azurefiles ファイル共有のオンデマンド バックアップを、20-01-2020 まで保持した状態でトリガーします。

az backup protection backup-now --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --retain-until 20-01-2020 --output table
Name                                  ResourceGroup
------------------------------------  ---------------
9f026b4f-295b-4fb8-aae0-4f058124cb12  azurefiles

出力の Name 属性は、"オンデマンド バックアップ" 操作のためにバックアップ サービスによって作成されたジョブの名前に対応しています。 ジョブの状態を追跡するには、az backup job show コマンドレットを使用します。

次のステップ