Amazon Web Services ブログ

クラウド移行をサポートする利用可能なAWSサービス

100万以上のアクティブな顧客を抱えるAWSは、あらゆる規模の組織のワークロードをクラウドに移行する支援をした経験があります。共通のテーマは、適切なツールを選択することがリスクを軽減し、信頼性の高い移行を可能にするために重要であるということです。このブログでは、最も人気のある AWS 移行ツールをいくつか取り上げ、クラウド移行をサポートするためにそれらを使用する方法の概要を説明します。1つのアプリケーションを移行する際に、複数のツールを使用することはよくあることです。あなたのシナリオに何が当てはまるか検討してみてください。このブログ記事では、以下を紹介します。

  • AWS Application Discovery Service (ADS) – 移行計画をサポートするために、移行元サーバに関する情報を収集します。
  • End-of-Support Migration Program for Windows Server (EMP) – 旧バージョンのWindows Server上で動作するレガシーアプリケーションを、AWS上でサポートされる新しいバージョンに移行するために使用します。
  • AWS Application Migration Service (MGN) – AWSクラウドへのサーバーのリホストを自動化するアプローチを提供します。
  • AWS DataSync – オンプレミスとAWSのストレージサービス間でファイルやオブジェクトのデータ移動を自動化します。
  • AWS Schema Conversion Tool (SCT) – 評価レポートを作成し、スキーマとコードオブジェクトをターゲットデータベースエンジンと互換性のある形式に自動変換します。
  • AWS Database Migration Service (DMS) – データベースのAWSへの迅速かつ安全な移行を支援し、ソースからターゲットデータベースへのレプリケーションを提供します。

ソリューション概要

この記事では、各移行ツールのユースケースを示すために、サンプルアプリケーションを例として使用します。このシナリオでは、ビジネス上のプレッシャーから、アプリケーションをできるだけ早く移行する必要があります。しかし、各コンポーネントにはそれぞれ複雑さや要件があります。

  • プレゼンテーション層は Windows Server 2008 R2 でホストされており、アプリケーションを再インストールするためのインストールメディアはもう入手できません。オペレーティングシステムを最新の Windows Server バージョンにインプレースアップグレードする試みは成功しましたが、最新のオペレーティングシステムとのアプリケーションの非互換性の問題により、アプリケーションが機能しませんでした。このサーバーは、Amazon EC2 の最新バージョンの Windows サーバーに移行されます。
  • アプリケーション層は Windows 2022 サーバーでホストされています。アプリケーションインストールメディアが利用できなくなり、チームは最小限の労力で AWS に移行したいと考えています。このサーバーは Amazon EC2 に移行されます。
  • アプリケーションサーバーは、成果物を保存するためにSMB経由でWindowsファイルサーバーに接続します。このコンポーネントはAmazon FSxに移行される予定です。
  • データベース層は、Windows Server 2019 上で稼働する Microsoft SQL Server 2019 データベースでホストされています。これをAWS上のフルマネージドなオープンソースの代替品に移行したいという強いビジネス上の要望があります。このデータベースは、Amazon RDSに移行される予定です。

AWS Application Discovery Service (ADS)

移行に取り組む際、オンプレミスのコンポーネントに関して利用できる情報が限られていることはよくあることです。検出ツールは、移行されるサーバーに関するデータを発見し、検証する機会を提供します。これにより、データ駆動型のアーキテクチャと意思決定が可能になります。AWS Application Discovery Serviceは、オンプレミスサーバーの使用状況や設定データを収集することで、AWSへの移行計画を支援します。これには、サーバーデータ、パフォーマンスデータ、エージェントオプションがサーバーに展開されたときの依存関係データなどが含まれます。

移行シナリオでは、AWS ADSは、欠落している依存関係がないことを検証するために一般的に使用されます。サンプルアプリケーションについて、アプリケーションが頻繁に接続するレポートサーバーがあり、アプリケーションチームには知られていないと想像してみましょう。AWS ADSは、確立されている接続を表示し、移行範囲から漏れているサーバーを発見するのに役立ちます。次の画像では、AWS Migration HubでADSの検出が可視化され、エージェントがデプロイされているサーバーに接続しているさまざまなサーバーが表示されています。これは、アプリケーションと移行チームによる調査のためのバックログを提供します。

AWS Application Discovery Serviceを使用して、オンプレミスサーバーを無料で発見することができます。オンプレミスのデータを保存するためにプロビジョニングされたAWSリソースに対してのみ料金が発生します。

Windows Server向けサポート終了移行プログラム(EMP)

レガシーアプリケーションが新しい Windows バージョンとの互換性に問題がある場合、Windows インプレースアップグレードを使用してサポート終了サーバーを最新化することは、簡単な解決策ではないかもしれません。たとえアプリケーションが新しいWindowsのバージョンと互換性があっても、最新のインストールメディアとインストール手順にアクセスできなければ、移行することはできません。さらに、サポートされていないバージョンの Windows Server でのみ実行できるアプリケーションを使用することは、無料のセキュリティパッチ更新プログラムを入手できなくなるため問題があります。このようなアプリケーションを大幅なコード変更なしにクラウドに移行することは難しく、移行にかかる労力とタイムラインが増加します。AWS は Windows Server のサポート終了移行プログラム (EMP) を提供し、以下を支援します。

  1. アップグレードが成功しない、希望した結果にならない、または実現不可能な場合
  2. 最新のインストールメディアがないアプリケーションを移行する
  3. 新しいバージョンの Windows Server と互換性のないアプリケーションを移行する

EMP for Windows Server には、コードを変更することなく、レガシーアプリケーションを Windows Server 2003、2008、および 2008 R2 から AWS でサポートされている新しいバージョンに移行するためのツールが含まれています。EMP ツールは、古いバージョンの OS に対するアプリケーションの依存関係を特定し、新しいバージョンの Windows Server でアプリケーションを実行するために必要なリソースを含むパッケージを作成します。パッケージには、すべてのアプリケーションファイル、ランタイム、コンポーネント、デプロイツール、および API 呼び出しをアプリケーションからレジストリーおよびパッケージ内のファイルにリダイレクトするエンジンが含まれています。これで依存関係が解決され、アプリケーションが基盤となる OS から切り離されます。これにより、パッケージ化されたアプリケーションを将来のバージョンの Windows Server で実行できます。つまり、Windows Server の次のサポート終了イベントが発生したときに、これらのアプリケーションのアップグレードについて心配する必要がなくなります。

例に戻ると、AWS EMP ツールセットを使用すると、Windows Server 2008 R2 プレゼンテーションサーバーで実行されているレガシーアプリケーションがオペレーティングシステムから切り離され、EMP パッケージにキャプチャされ、AWS 上の Windows Server の最新バージョンにデプロイされます。
AWS 移行の対象となるサポート終了の Windows サーバーでレガシーアプリケーションを実行している場合は、EMPのドキュメントを読むことをお勧めします。EMPを実際に使ってみたい方、EMPを使い始めるためのサポートが必要な方は、こちらのフォームにご記入ください。

AWS Application Migration Service (MGN)

AWS Application Migration Service(MGN)は、ソース環境からAmazon Elastic Cloud Compute(EC2)へ、さまざまなサーバーを高度に自動化してリホストすることができます。移行元サーバーにAWS MGNレプリケーションエージェントをインストールし、レプリケーションの設定を行います。これにより、AWS アカウントのステージングエリアへの継続的なブロックベースのデータレプリケーションが開始されます。データが完全にレプリケートされると、ターゲットのAmazon EC2インスタンスを起動することができ、自動的にAWS上で動作するように変換されます。AWS MGNを使用することで、サーバーのリホスト時に時間がかかり、エラーが発生しやすい手動プロセスを最小化することができます。

AWS MGNは幅広いOSをサポートしており、多くのアプリケーションで同じ自動化されたプロセスとパターンを使用できるため、移行を簡素化することができます。さらに一歩進んで、AWSはCloud Migration Factoryソリューションを開発し、数百または数千のサーバーをAWSに効率良く移行することを容易にするための追加の自動化を提供しています。

仮説のアプリケーションでは、AWS MGN を活用して Windows 2022 アプリケーションサーバーの移行を実行します。ソースコードやインストールメディアがなくても、AWS MGN を介してこのサーバーを移行できます。これにより、最小限の労力でサーバーを移行することができ、アプリケーションチームは、より多くの変更を必要とする他のコンポーネントに専念することができます。

移行したいソースサーバーごとに、AWS Application Migration Serviceを2,160時間(連続使用で90日間)の無料期間で利用することができます。

AWS DataSync

データをクラウドに移行するには、多くの場合、時間、予算、および従業員のリソースを割り当てる必要があります。このアプリケーションの例では、Windowsファイルサーバーから、フルマネージドで高性能なファイルシステムであるAmazon FSx for Windowsへデータを移行する必要があります。ただし、データはライブシステムであるため頻繁に変更され、移行が複雑になります。上記の課題を簡素化して軽減するために、AWS DataSync が活用されます。これは、オンプレミスとAWSのストレージサービス間のデータ移行を自動化、高速化するオンラインデータ転送サービスです。データの増分転送を行うため、アクティブなファイルシステムの移行に適しています。

AWS DataSync を使用する場合は、まず、オンプレミスシステム (この場合は Windows ファイルサーバー) からデータを読み取るようにエージェントを設定します。次に、オンプレミスからターゲット AWS ロケーション (この場合は Amazon FSx for Windows) にファイルを転送するタスクを設定します。最後に、データ転送タスクを開始してデータを複製できます。AWS DataSync でタスクスケジューリングを使用すると、ソースストレージシステムから宛先への転送タスクを定期的に実行できます。たとえば、データ移行を 1 時間ごとに実行するようにスケジュールできます。次に、カットオーバーの前にアプリケーションテストを可能にするために、ターゲットにデータの最新のコピーがあります。

DataSyncがサポートするストレージシステムをご覧いただき、ご利用いただくリージョンの価格情報をご確認いただくことをお勧めします。

AWS Schema Conversion Tool (SCT)

サンプルアプリケーションでは、Microsoft SQL Server 2019からオープンソースの代替品に移行したいという強いビジネス上の要望があります。ツールを使用せずに、ソースデータベースが別のターゲットデータベースエンジンとどの程度互換性があるかを理解するのは難しい場合があります。さらに、互換性を理解した上で、スキーマやその他のオブジェクトの変換を行わなければなりません。そのため、異種混在環境での移行は 2 段階のプロセスになります。まず、AWS Schema Conversion Tool(AWS ウェブサイトから無料でダウンロード)を使用して、移行元のスキーマとコードを移行先データベースに合わせて変換します。次に、AWS Database Migration Service (以下で説明) を使用して、ソースデータベースからターゲットデータベースにデータを移行します。

AWS SCTは、自動スキーマ変換を提供すると同時に、所定のデータベースエンジンへの移行に必要な複雑さと労力の難易度を理解するための評価レポートを生成するオプションを提供します。下の画像は、サンプルの SCT 評価レポートのエグゼクティブサマリーのスクリーンショットです。この例では、データベースストレージオブジェクトの 90% とデータベースコードオブジェクトの 77% を自動的に、または最小限の変更で変換可能であることがわかります。さらに、複雑なアクションが必要な領域が強調表示されています。この評価を使用することで、データドリブンな移行が可能になります。多くの異種データベース移行を行う場合、迅速な成功を見極めるために、スコープ全体に対して評価プロセスを実行することをお勧めします。

AWS Database Migration Service (DMS)

Windowsのファイルシステムと同様に、データベースも移行が困難な場合があります。それらは、移行プロジェクト中に頻繁に変更されるライブデータを格納します。AWS Database Migration Service (AWS DMS)は、データベースをAWSに迅速かつ安全に移行するためのサービスです。移行中も移行元のデータベースは完全に稼働し続けるため、データベースに依存しているアプリケーションのダウンタイムを最小限に抑えることができます。レプリケーションインスタンスと追加のログストレージに対してのみ料金が発生します。各データベース移行インスタンスには、スワップスペース、レプリケーションログ、およびほとんどのレプリケーションのデータキャッシュに十分なストレージが含まれており、インバウンドのデータ転送は無料です。

AWS Database Migration Service は、Oracle から Oracle への同種の移行や、異なるデータベースプラットフォーム間での異種間の移行をサポートします。この例では、DMS と SCT を結合することで、Microsoft SQL Server から PostgreSQL への異種移行が可能になります。AWS DMS は、移行中に必要なすべてのデータ型変換を自動的に処理します。

移行するデータベースがある場合は、データ移行用の DMSソース をご確認いただくことをお勧めします。

まとめ

このBlog全体を通して、移行を簡略化するために利用可能ないくつかの AWS 移行ツールの概要を説明しました。単一のアプリケーションスタックに焦点を当てましたが、ツールはデータセンターの閉鎖など、大規模な移行の一部を処理するために頻繁に適用されます。AWS ツールを使用すると、移行を簡略化し、予測しやすくし、より低いリスクでビジネス目標の達成を加速することができます。移行目標の達成に役立つツールやサービスがあるかどうか、ぜひ調べてみることをお勧めします。

なお、ここでご紹介したのは、AWSのマイグレーションツールやサービスのほんの一部に過ぎません。次のような追加サービスの検討も行ってみてください。

  • Migration Evaluatorは、AWS クラウドの計画および移行のための方向性のあるビジネスケースの作成を支援します。
  • Porting Assistant for .NETは、.NET Framework アプリケーションをスキャンして .NET Core 互換性評価を生成する分析ツールで、アプリケーションを Linux に迅速に移植するのに役立ちます。
  • AWS App2Containerは、.NET および Java アプリケーションをコンテナ化するためのコマンドラインツールです。A2Cは、仮想マシン、オンプレミス、またはクラウドで実行されているすべてのアプリケーションのインベントリを分析し構築します。
  • AWS Migration Hubは、AWS リージョンへの移行を追跡しながら、IT 資産インベントリデータを保存するための単一の場所を提供します。

翻訳はソリューションアーキテクト秋田が担当しました。原文はこちらです。