Azure でのアプリのバックアップBack up your app in Azure

Azure App Service のバックアップと復元の機能により、アプリのバックアップを手動またはスケジュール設定により簡単に作成できます。The Backup and Restore feature in Azure App Service lets you easily create app backups manually or on a schedule. 以前の状態のスナップショットにアプリを復元するには、既存のアプリを上書きするか、別のアプリに対して復元を行います。You can restore the app to a snapshot of a previous state by overwriting the existing app or restoring to another app.

アプリをバックアップから復元する方法については、 Azure でのアプリの復元に関するページを参照してください。For information on restoring an app from backup, see Restore an app in Azure.

バックアップ対象What gets backed up

App Service によって、アプリで使用するようにユーザーが構成した Azure ストレージ アカウントとコンテナーに、次の情報をバックアップできます。App Service can back up the following information to an Azure storage account and container that you have configured your app to use.

  • アプリの構成App configuration
  • ファイルのコンテンツFile content
  • アプリに接続されているデータベースDatabase connected to your app

次のデータベース ソリューションがバックアップ機能でサポートされています。The following database solutions are supported with backup feature:

注意

各バックアップは増分更新ではなく、アプリの完全なオフライン コピーです。Each backup is a complete offline copy of your app, not an incremental update.

要件および制限Requirements and restrictions

  • バックアップと復元の機能には、Standard レベルまたは Premium レベル以上のレベルにある App Service プランが必要です。The Backup and Restore feature requires the App Service plan to be in the Standard tier or Premium tier. 上位レベルを使用するための App Service プランの拡張の詳細については、 Azure でのアプリのスケールアップに関するページを参照してください。For more information about scaling your App Service plan to use a higher tier, see Scale up an app in Azure.
    Premium レベルでは、Standard レベルよりも多くの回数の日次バックアップが可能です。Premium tier allows a greater number of daily back ups than Standard tier.
  • バックアップするアプリと同じサブスクリプション内に Azure ストレージ アカウントとコンテナーが必要です。You need an Azure storage account and container in the same subscription as the app that you want to back up. Azure ストレージ アカウントについて詳しくは、「Azure ストレージ アカウントの概要」をご覧ください。For more information on Azure storage accounts, see Azure storage account overview.
  • 最大 10 GB のアプリとデータベースのコンテンツをバックアップできます。Backups can be up to 10 GB of app and database content. バックアップのサイズがこの制限を超えた場合、エラーが発生します。If the backup size exceeds this limit, you get an error.
  • SSL が有効な Azure Database for MySQL はサポートされていません。Backups of SSL enabled Azure Database for MySQL is not supported. バックアップが構成されている場合は、バックアップが失敗したと表示されます。If a backup is configured, you will get failed backups.
  • SSL が有効な Azure Database for PostgreSQL はサポートされていません。Backups of SSL enabled Azure Database for PostgreSQL is not supported. バックアップが構成されている場合は、バックアップが失敗したと表示されます。If a backup is configured, you will get failed backups.
  • アプリ内 MySQL データベースは、構成しなくても自動的にバックアップされます。In-app MySQL databases are automatically backed up without any configuration. 接続文字列を追加するなど、アプリ内 MySQL データベースを手動で設定すると、バックアップが正しく動作しない場合があります。If you make manually settings for in-app MySQL databases, such as adding connection strings, the backups may not work correctly.
  • バックアップの保存先として、ファイアウォールが有効なストレージ アカウントを使用することは、サポートされていません。Using a firewall enabled storage account as the destination for your backups is not supported. バックアップが構成されている場合は、バックアップが失敗したと表示されます。If a backup is configured, you will get failed backups.

手動バックアップの作成Create a manual backup

  1. Azure Portal で、アプリのページに移動し、 [バックアップ] を選択します。In the Azure portal, navigate to your app's page, select Backups. [バックアップ] ページが表示されます。The Backups page is displayed.

    バックアップ ページ

    注意

    次のメッセージが表示された場合は、メッセージをクリックして App Service プランをアップグレードした後、バックアップに進むことができます。If you see the following message, click it to upgrade your App Service plan before you can proceed with backups. 詳細については、 Azure でのアプリのスケールアップ に関するページを参照してください。For more information, see Scale up an app in Azure.
    ストレージ アカウントの選択Choose storage account

  2. [バックアップ] ページで、 [構成] をクリックします。 [構成] をクリックするIn the Backup page, Click Configure Click Configure

  3. [バックアップ構成] ページで、 [ストレージ:未構成] をクリックし、ストレージ アカウントを構成します。In the Backup Configuration page, click Storage: Not configured to configure a storage account.

    ストレージ アカウントの選択

  4. [ストレージ アカウント][コンテナー] を選択して、バックアップ先を選択します。Choose your backup destination by selecting a Storage Account and Container. ストレージ アカウントは、バックアップするアプリと同じサブスクリプションに属する必要があります。The storage account must belong to the same subscription as the app you want to back up. 必要に応じて、各ページで新しいストレージ アカウントまたは新しいコンテナーを作成できます。If you wish, you can create a new storage account or a new container in the respective pages. 完了したら、 [選択] をクリックします。When you're done, click Select.

    ストレージ アカウントの選択

  5. 開いたままになっている [バックアップ構成] ページで、 [データベースをバックアップする] を構成し、バックアップに含めるデータベース (SQL データベースまたは MySQL) を選択してから、 [OK] をクリックします。In the Backup Configuration page that is still left open, you can configure Backup Database, then select the databases you want to include in the backups (SQL database or MySQL), then click OK.

    ストレージ アカウントの選択

    注意

    この一覧に表示されるデータベースでは、その接続文字列がアプリの [アプリケーション設定] ページの [接続文字列] セクションに存在する必要があります。For a database to appear in this list, its connection string must exist in the Connection strings section of the Application settings page for your app.

    アプリ内 MySQL データベースは、構成しなくても自動的にバックアップされます。In-app MySQL databases are automatically backed up without any configuration. 接続文字列を追加するなど、アプリ内 MySQL データベースを手動で設定すると、バックアップが正しく動作しない場合があります。If you make manually settings for in-app MySQL databases, such as adding connection strings, the backups may not work correctly.

  6. [バックアップ構成] ページで、 [保存] をクリックします。In the Backup Configuration page, click Save.

  7. [バックアップ] ページで、 [バックアップ] をクリックします。In the Backups page, click Backup.

    BackUpNow ボタン

    バックアップ処理中に、進行状況についてのメッセージが表示されます。You see a progress message during the backup process.

ストレージ アカウントとコンテナーの構成が終わったら、いつでも手動バックアップを開始できます。Once the storage account and container is configured, you can initiate a manual backup at any time.

自動バックアップの構成Configure automated backups

  1. [バックアップ構成] ページで、 [スケジュールされたバックアップ]オンに設定します。In the Backup Configuration page, set Scheduled backup to On.

    ストレージ アカウントの選択

  2. バックアップ スケジュールのオプションが表示されます。 [スケジュールされたバックアップ]オンに設定し、必要に応じてバックアップ スケジュールを構成して、 [OK] をクリックします。Backup schedule options will show up, set Scheduled Backup to On, then configure the backup schedule as desired and click OK.

    自動化されたバックアップを有効にする

部分バックアップの構成Configure Partial Backups

アプリのすべてをバックアップしたくない場合があります。Sometimes you don't want to back up everything on your app. 次に例をいくつか示します。Here are a few examples:

  • 古いブログの投稿や画像などの、変更されることがない静的コンテンツを含むアプリを 毎週バックアップするように設定 している。You set up weekly backups of your app that contains static content that never changes, such as old blog posts or images.
  • アプリのコンテンツが 10 GB を超えている (つまり、一度にバックアップできる最大量を超えている)。Your app has over 10 GB of content (that's the max amount you can back up at a time).
  • ログ ファイルはバックアップしない。You don't want to back up the log files.

部分バックアップでは、バックアップするファイルを詳細に選択できます。Partial backups allow you choose exactly which files you want to back up.

注意

バックアップ内の個々のデータベースは最大 4 GB となりますが、バックアップの合計最大サイズは 10 GB です。Individual databases in the backup can be 4GB max but the total max size of the backup is 10GB

バックアップからファイルを除外するExclude files from your backup

一度バックアップされており今後まったく変更されることがないログ ファイルや静止画像を含むアプリがあるとします。Suppose you have an app that contains log files and static images that have been backup once and are not going to change. このような場合には、将来のバックアップ時にそれらのフォルダーやファイルを保存しないように除外できます。In such cases, you can exclude those folders and files from being stored in your future backups. バックアップからファイルやフォルダーを除外するには、アプリの D:\home\site\wwwrootフォルダー内に _backup.filter ファイルを作成します。To exclude files and folders from your backups, create a _backup.filter file in the D:\home\site\wwwroot folder of your app. このファイルに、除外するファイルやフォルダーの一覧を指定します。Specify the list of files and folders you want to exclude in this file.

ファイルにアクセスする簡単な方法として Kudu を使用できます。An easy way to access your files is to use Kudu. Web アプリ の [高度なツール] -> [移動] 設定をクリックして、Kudu にアクセスします。Click Advanced Tools -> Go setting for your web app to access Kudu.

ポータルを使用する Kudu

バックアップから除外するフォルダーを識別します。Identify the folders that you want to exclude from your backups. たとえば、強調表示されたフォルダーおよびファイルを除外したいとします。For example, you want to filter out the highlighted folder and files.

images フォルダー

_backup.filter という名前のファイルを作成し、前のリストをこのファイルに配置します。ただし D:\home は削除します。Create a file called _backup.filter and put the preceding list in the file, but remove D:\home. 1 つのディレクトリまたはファイルを 1 行に配置します。List one directory or file per line. したがって、ファイルの内容は次のようになります。So the content of the file should be:

   \site\wwwroot\Images\brand.png
   \site\wwwroot\Images\2014
   \site\wwwroot\Images\2013

_backup.filterファイルを、ftpやその他の方法を使用して、サイトの D:\home\site\wwwroot\ ディレクトリにアップロードします。Upload _backup.filter file to the D:\home\site\wwwroot\ directory of your site using ftp or any other method. Kudu の DebugConsole を使用してファイルを直接作成し、そこにコンテンツを挿入することもできます。If you wish, you can create the file directly using Kudu DebugConsole and insert the content there.

通常と同じ方法 (手動または自動) でバックアップを実行します。Run backups the same way you would normally do it, manually or automatically. これで、_backup.filter に指定されたファイルとフォルダーは、スケジュール設定されているか手動で開始されるかにかかわらず、将来のバックアップから除外されます。Now, any files and folders that are specified in _backup.filter is excluded from the future backups scheduled or manually initiated.

注意

定期的なバックアップからの復元と同様の手順で、サイトを部分バックアップから復元することもできます。You restore partial backups of your site the same way you would restore a regular backup. 復元プロセスは正常に実行されます。The restore process does the right thing.

完全バックアップが復元されると、サイト上のすべてのコンテンツは、バックアップの中身に置き換えられます。When a full backup is restored, all content on the site is replaced with whatever is in the backup. サイト上に存在したファイルも、バックアップに存在しなければ削除されます。If a file is on the site, but not in the backup it gets deleted. ただし、部分バックアップが復元されるとき、ブラック リスト化されたディレクトリまたはファイルのいずれかに配置されているコンテンツは放置されます。But when a partial backup is restored, any content that is located in one of the blacklisted directories, or any blacklisted file, is left as is.

バックアップの保存方法How backups are stored

アプリの 1 つ以上のバックアップを作成すると、ストレージ アカウントとアプリの [コンテナー] ページに、バックアップが表示されます。After you have made one or more backups for your app, the backups are visible on the Containers page of your storage account, and your app. ストレージ アカウントでは、各バックアップは、バックアップ データを含む .zip ファイルと、.zip ファイルの内容のマニフェストを含む .xml ファイルで構成されます。In the storage account, each backup consists of a.zip file that contains the backup data and an .xml file that contains a manifest of the .zip file contents. バックアップにアクセスする場合は、これらのファイルを解凍して参照でき、アプリを実際に復元する必要はありません。You can unzip and browse these files if you want to access your backups without actually performing an app restore.

アプリのデータベースのバックアップは、.zip ファイルのルートに保存されます。The database backup for the app is stored in the root of the .zip file. SQL データベースの場合、これは BACPAC ファイルで (ファイル拡張子はありません)、インポートできます。For a SQL database, this is a BACPAC file (no file extension) and can be imported. BACPAC のエクスポートに基づく SQL データベースの作成については、「BACPAC ファイルのインポートによる新しいユーザー データベースの作成」を参照してください。To create a SQL database based on the BACPAC export, see Import a BACPAC File to Create a New User Database.

警告

websitebackups コンテナー内のファイルを変更すると、バックアップが無効になり、復元できなくなる可能性があります。Altering any of the files in your websitebackups container can cause the backup to become invalid and therefore non-restorable.

スクリプトで自動化するAutomate with scripts

Azure CLI または Azure PowerShell を使用すると、バックアップ管理をスクリプトで自動化できます。You can automate backup management with scripts, using the Azure CLI or Azure PowerShell.

サンプルについては、以下を参照してください。For samples, see:

次の手順Next Steps

アプリをバックアップから復元する方法については、 Azure でのアプリの復元に関するページを参照してください。For information on restoring an app from a backup, see Restore an app in Azure.