Azure Backup を使用した Linux VM のアプリケーション整合性バックアップの一般提供を開始

執筆者: Anurag Mehrotra (Program Manager II, Azure Backup)

このポストは、2018 年 2 月 13 日に投稿された Application consistent backup for Linux VMs using Azure Backup is generally available の翻訳です。

 

このたび、Azure で実行されている Linux VM 向けのアプリケーション整合性バックアップの一般提供 (GA) が開始され、Azure Backup で利用できるようになりました。この機能は昨年プレビュー (英語) が開始され、既に Oracle、MySQL、Mongo DB、SAP HANA、PostGreSQL などのさまざまなアプリケーションで使用されています。

アプリケーション整合性バックアップの概要

アプリケーション整合性バックアップでは、バックアップ データのトランザクションの整合性が確保されると共に、VM の復元後にアプリケーションを起動することができます。トランザクションの整合性を確保するために、VM のスナップショットを取得するときにアプリケーションを停止して、未完了のトランザクションが存在しないようにする必要があります。

Windows にはボリューム シャドウ コピー サービス (VSS) というフレームワークがあり、アプリケーションの整合性を確保しながら VM をバックアップできますが、Linux にはこのような一般的なフレームワークがありません。Azure Linux VM の利用が拡大するにつれて、VM で実行されている重要なエンタープライズ アプリケーションをバックアップしたいという要望が高まっていました。そこでマイクロソフトは、あらゆる Linux ディストリビューションで実行されている Linux アプリケーションの整合性を保ちながら VM をバックアップできるように、VSS のような一般的なフレームワークを導入しました。このフレームワークでは、VM のバックアップ プロセスの中で、カスタムの事前スクリプトおよび事後スクリプトを柔軟に実行できます。これらのスクリプトでアプリケーションの IO を停止させると、VM のスナップショットを取得する際にアプリケーションの整合性を確保できます。

f4bad234-e373-48e9-812a-46e9f90aa79e

このフレームワークはとても便利で、VM のスナップショットを取得するときにネイティブなバックアップ API を呼び出して、アプリケーションのネイティブなバックアップを取ることができます。Azure Backup はこのデータをオフサイトの Recovery Services コンテナーに移し、VM の破損や削除から保護し、災害復旧シナリオに対応できるようにします。このとき、VM をシャットダウンする必要はありません。

主な特長

  • アプリケーション データの検証と復元が容易: iSCSI を使用すると、復旧ポイントから直接アプリケーションをマウント (英語) することができます。これにより、バックアップ データをコピーすることなく、復旧ポイントの検証を手軽に行えます。また、VM 全体を復元せずに特定のアプリケーション ファイルを復旧できます。たとえば、MySQL を実行している Azure Linux VM のバックアップがある場合、クラウド上の復旧ポイントから .sql 形式のデータ ダンプをマウントし、直接そのファイルに MySQL データベースを接続すれば、バックアップをすばやく検証したり、データ ダンプ全体をダウンロードせずに個別にテーブルなどのアイテムを回収したりできます。
  • 監視機能が強力: 今回のリリースでは、フレームワークに関するエラーはすべてバックアップ ジョブに表示されるため、問題の特定や修正が簡単です。たとえば、スクリプトを「失敗しても継続する」設定にすると、エラーが発生した場合にファイル システムのバックアップまたはクラッシュ整合性バックアップとして処理が継続されますが、バックアップ ジョブが「完了 (警告あり)」となり、詳細なエラー メッセージが表示されるほか、そのスクリプト エラーを修正する場合に推奨されるアクションが提示されます。
  • アプリケーションおよびディストリビューションに依存しない: このフレームワークは、Linux のディストリビューションやバージョンに依存しません。アプリケーションの IO を一時停止、再開する API をゲスト アプリケーションが備えていれば、サポートされる Linux ディストリビューションすべてでシームレスに動作します。
  • GitHub でサンプル スクリプトを公開: マイクロソフトは、パートナーや ISV と協力して、主要な Linux アプリケーション向けのオープン ソース スクリプトを GitHub (英語) で公開しています。今回のリリース時点では、MySQL、Oracle、Caché 向けのものが公開中です。
  • Azure CLI で大規模に自動化: Azure CLI を使用すると、Azure Backup のタスクを大規模に構成、管理、自動化 (英語) できます。よく使用する操作の既定値のすばやい設定、タブ補完、パイプに対応した出力など、CLI の便利な機能を活用して、簡単に VM のバックアップや復元操作を管理できます。バックアップと復元の構成以外にも、コマンド出力に対してクエリを実行し、その他の管理タスクを自動化することも可能です。たとえば、バックアップの正常性に関する情報をプログラムで取得したり、その正常性の状態に応じて操作を開始したりできます。

使用を開始するには

以下のビデオでは、事前スクリプトおよび事後スクリプトを実行するフレームワークの構成手順を説明しています。詳細については、アプリケーションの整合性を確保した Linux VM バックアップの構成手順を参照してください。

[embed]https://sec.ch9.ms/ch9/39bd/285da36f-8485-4b9a-bcb9-7f5b310539bd/finalv3_high.mp4[/embed]

 

バックアップ データをコピーすることなくアプリケーションを VM バックアップから直接マウントしてデータを検証する詳細については、次のビデオをご覧ください。

[embed]https://sec.ch9.ms/ch9/9d32/4e7535bb-3645-489e-86bb-69325ec39d32/restore-finalv2_high.mp4[/embed]

お客様の成功事例

The Open University (OU、英語) では、Azure を基盤とする各種仮想学習環境の運用を間もなく開始しようとしていますが、この環境で使用している Linux データベース サーバーの整合性を確保したイメージ ベースのバックアップに Azure の Linux 向け整合性バックアップ ソリューションを活用しています。

OU は英国のミルトン キーンズに設置されたオンプレミス データセンターなどで仮想化を活用し、複数の仮想学習環境を運用しており、現在は Azure に新たな仮想学習環境をデプロイしようと取り組んでいます。Azure Backup と Linux 向け整合性バックアップ ソリューションを使用することで、整合性を保ちながら Linux データベースをバックアップできるため、Azure でホストされる学習環境のデプロイメント、バックアップ、復旧が簡素化されます。

「Azure での停止前と停止後のプロセスは、現在オンプレミス仮想マシンのイメージ レベルのバックアップ ソリューションで行っているプロセスとほとんど違いがありません。したがって、この既存のパッケージ化された停止前スクリプトと停止後スクリプトを変更せずにそのまま利用できます。そのおかげで、Azure への仮想学習環境のデプロイメントが大幅に簡素化され、Azure の仮想マシン バックアップ機能を使用しつつ、データベースのバックアップの整合性も確保できました」

- The Open University、IT サービス & サポート担当システム プログラマー、Gareth Robins 氏

マイクロソフト パートナーの Intercept (英語) は、アプリケーション整合性バックアップを Azure Linux VM で実行されている Oracle データベースに実装しています。機能についてのフィードバックを以下にご紹介します。

「当社が Linux 向けのアプリケーション整合性バックアップ機能を実装したのは、あるお客様のために、Azure VM の Oracle データベースの整合性を維持しながらバックアップを取れるようにしたかったからです。お客様は、シンプルなバックアップ ツールと Azure ネイティブなソリューションで簡単に管理できることをお望みでした。また、同じエクスペリエンスですべての Azure リソースをバックアップしたいとお考えでした。それを実現できるのが、Azure の Linux 向けアプリケーション整合性バックアップだったのです」

- Intercept、Remco Vrielink 氏

Impacting SA (英語) では、このソリューションを MySQL と MongoDB で使用したところ、復元作業に要する時間が大幅に (最大 70%) 短縮されました。これは、特定のアプリケーション ファイルのみを復元すればよく、VM 全体の復元は不要であるからです。Impacting SA からのフィードバックを以下にご紹介します。

「わかりやすく書かれたシンプルなドキュメントとガイドラインに従うだけでよかったので、簡単にこの機能を稼働させることができました。また、処理が開始されてから復元できるようになるまでの一連の所要時間が短縮される点にも満足しています。以前と比較すると、バックアップからの復旧に要する時間が 4 時間から約 20 分へと、約 70% も短縮されました」

Oracle DB 用サンプル スクリプト

このソリューションは既に多くのお客様に MySQL や Oracle でご利用いただいており、MySQL のオープン ソース スクリプトは既に GitHub でアップロードされています。今回新たに、Oracle 用のサンプル スクリプト (英語) が公開されました。これを参考にしてお客様独自のスクリプトを作成し、このフレームワークの機能をご活用ください。

オープン ソース コミュニティへのご協力のお願い

このフレームワークを普及させ、Windows VSS などのさまざまなアプリケーションをサポートするために、開発者、ISV、IT 愛好家、パートナーの皆様には、オープン ソース スクリプトを GitHub リポジトリ (英語) にお寄せくださるようご協力をお願いしています。スクリプトはすべてのユーザーに公開されますので、どなたでもそのまま使用したり、要件に合わせてカスタマイズしたりしていただけます。ご興味をお持ちでしたら、linuxazurebackupteam@service.microsoft.com までメールでお問い合わせください。GitHub での公開や使用ガイドの掲載についてお手伝いさせていただくと共に、皆様のご貢献に対して感謝の印をお渡ししたいと思っています。

関連情報

·         この機能の詳細については、ドキュメント「Azure Linux VM のアプリケーション整合性バックアップ」をご参照ください。

·         ご不明な点がある場合は、Azure Backup フォーラム (英語) をご利用いただくか、Azure Backup に関するドキュメントをご参照ください。

·         Azure Backup についてのご要望やアイデアは、フィードバック フォーラム (英語) までお寄せください。また、他の方のご意見への投票もお願いいたします。

·         最新情報は Twitter アカウント (@AzureBackup) をフォローしてください。

·         Azure Backup の使用は初めてというお客様は、無料の Azure 評価版サブスクリプションにサインアップしてお試しください。