Avanade AMT による IBM z/OS メインフレームの移行

Azure Load Balancer
Azure SQL データベース
Azure Virtual Machines
Azure Virtual Network

この記事では、Avanade の Automated Migration Technology (AMT) によって IBM z/OS メインフレーム システムを Azure クラウドに移行する方法について説明します。 Avanade AMT フレームワークは、独自の IBM z/OS メインフレーム アプリケーションを、Windows Server OS または Linux OS の仮想マシン (VM) 上で実行されるネイティブ .NET アプリケーションに変換するものです。 オンプレミスのメインフレーム リソースは、コスト効率に優れていてスケーラブルかつ安全な、Azure のサービスとしてのインフラストラクチャ (IaaS) およびサービスとしてのプラットフォーム (PaaS) 環境に移行します。

Architecture

Avanade AMT 移行によって z/OS メインフレーム コンポーネントが Azure の機能にどのようにマップされるかを示す図。

このアーキテクチャの Visio ファイルをダウンロードします。

ワークフロー

上の図は、IBM z/OS メインフレーム システムの一般的なコンポーネントを Azure の機能にどのようにマップおよび移行できるかを示しています。

  1. Azure リソースにアクセスする Web ブラウザーは、HTTPS や TN3270 ターミナル エミュレーションなどの標準のメインフレーム プロトコルの後継となるものです。 ユーザーは、トランスポート層セキュリティ (TLS) ポート 443 を使用して、プライベートの Azure ExpressRoute 接続を介して Web ベースのアプリケーションにアクセスします。

  2. セキュリティとパフォーマンスのために、このソリューションではすべての Azure リソースが Azure 仮想ネットワーク内にデプロイされます。 ネットワーク セキュリティ グループはトラフィックの管理に役立ちます。

  3. Azure Bastion では、開いているポートの数を制限することで、管理者が Azure VM にアクセスするときのセキュリティを最大限に高めます。

  4. Avanade AMT により、メインフレームのプレゼンテーション読み込みが VM サーバー ファームに変換されます。 2 つの VM の 2 つのセットによって Web 層とアプリケーション層が実行されます。 VM では、高速ネットワークでハイ パフォーマンスを実現する Premium SSD または Ultra Disk Storage が使用されます。

    Azure Load Balancer では、クエリ トラフィックを分散するためにこれらの VM をアクティブ/アクティブ配置で前面に配置します。

    プレゼンテーション レイヤー コードはインターネット インフォメーション サービス (IIS) で実行され、ASP.NET を使用して、z/OS メインフレーム ユーザー インターフェイス画面が維持されます。 Web アプリケーションのプレゼンテーション層は変更せずに、ユーザーの再トレーニングを最小限に抑えることができます。また、プレゼンテーション層を最新のユーザー エクスペリエンス フレームワークで更新することもできます。

  5. サーバー ファームではスケール セット機能を使用して、変換されたメインフレームのバッチ読み込みとトランザクションの読み込みを処理します。 サーバー ファームがワークロードのピークを処理します。 Azure Load Balancer はトランザクション サーバーの前面に配置され、サーバー ファーム全体でアクティブ/アクティブ配置でトラフィックを分散します。

  6. メインフレーム アプリケーション コードは .NET C# と Java アーティファクトのいずれかに変換されます。 この移行されたコードは、トランザクション サーバー上で実行され、現在のビジネス ロジックを提供します。

  7. Avanade AMT Transform は、データベース管理システム (IBM Db2、IMS、Adabas)、データベース (階層型、ネットワーク、リレーショナル)、VSAM ファイル、スキーマから最新のデータベースおよびファイル処理への移行を自動化します。

    Avanade AMT Transform はジョブ制御言語 (JCL) と Rexx スクリプトを PowerShell (.NET C#)、Python、または Java に変換します。 Azure プライベート リンクを使用すると、Azure VM からデータベースにプライベートな直接接続を行うことができます。

  8. Azure 対応のワークロードの自動化、スケジュール設定、レポート、およびシステム監視機能は、現在のプラットフォームのままとすることができます。 この例では、操作に Avanade AMT コントロール センターを使用します。

    システムでは、プリンターおよびその他のレガシ システムの出力デバイスをサポートできます (Azure ネットワークに接続された IP アドレスをこれらが持つ場合)。

  9. Azure Site Recovery により、Azure データセンターの障害が発生した場合の迅速なフェールオーバーとディザスター リカバリー (DR) のために、Azure VM がセカンダリ Azure リージョンにミラー化されます。

コンポーネント

  • Azure ExpressRoute により、接続プロバイダーが提供するプライベート接続を介して、オンプレミス ネットワークが Microsoft クラウドへと拡張されます。 ExpressRoute を使用して、Azure や Microsoft 365 などのクラウド サービスへの接続を確立できます。

  • Azure Bastion は、お使いの仮想ネットワーク内で設定する、完全に管理されたサービスとしてのプラットフォーム (PaaS) です。 Azure Bastion により、TLS 経由で Azure portal から直接、仮想ネットワーク内の VM に安全かつシームレスなリモート デスクトップ プロトコル (RDP) および Secure Shell (SSH) 接続を行うことができます。

  • Azure Virtual Machines は、オンデマンドでスケーラブルなコンピューティング リソースを提供します。 仮想マシンを使用すると、物理ハードウェアを購入して維持する必要なしに、柔軟に仮想化を利用できます。

  • Azure Virtual Network は、Azure のプライベート ネットワークの基本的な構成ブロックです。 Virtual Network を使用すると、VM などの Azure リソースでは、相互に、またインターネットやオンプレミス ネットワークと安全に通信できます。 仮想ネットワークは、従来のオンプレミスのネットワークと似ていますが、スケーラビリティ、可用性、分離などの Azure のインフラストラクチャのさらなる利点が提供されます。

  • 仮想ネットワーク インターフェイス は、Azure VM とインターネット、Azureリソース、オンプレミス リソースの間の通信を実現します。 1 つの Azure VM に複数のネットワーク インターフェイス カードを追加することができ、それにより、子 VM で独自の専用ネットワーク インターフェイス デバイスと IP アドレスを使用できます。

  • Azure Managed Disks は、Azure によって Azure VM 上で管理されるブロックレベルのストレージ ボリュームです。 使用可能なディスクの種類は、Ultra Disk、Premium SSDs、Standard SSDs、Standard HDDs です。

  • Azure Files を使用すると、クラウドまたはオンプレミスからアクセスできる、Azure Storage アカウント内のフル マネージド ファイル共有を実現できます。 Windows、Linux、および macOS のデプロイでは、Azure ファイル共有を同時にマウントし、業界標準のサーバー メッセージ ブロック (SMB) プロトコルを介してファイルにアクセスできます。

  • Azure SQL Database は、安定した最新バージョンの SQL Server とパッチ適用済み OS 上で常に実行され、99.99% の可用性がある、完全に管理された PaaS データベース エンジンです。 SQL Database では、アップグレード、修正プログラムの適用、バックアップ、監視などのほとんどのデータベース管理機能がユーザーの介入なしで処理されます。 これらの PaaS 機能を使用すると、ユーザーはビジネス クリティカルな、ドメイン固有のデータベースの管理と最適化に集中できます。

  • Site Recovery では、計画的な、および予期しない停止中にアプリケーションの実行を継続できるように、レプリケーション、フェールオーバー、復旧のプロセスが使用されます。

  • Load Balancer では、クラウド サービスや VM 向けの組み込みのアプリケーション負荷分散を使うことで、数分で可用性とスケーラビリティに優れたアプリを作成できます。 Load Balancer は、HTTP、HTTPS、SMTP などの TCP/UDP ベースのプロトコルをサポートしています。 Load Balancer を使用すると、増加するアプリ トラフィックを自動的にスケーリングしてカスタマー エクスペリエンスを向上させることができます。 ロード バランサーを再構成または管理する必要はありません。

シナリオの詳細

Avanade AMT の移行にはいくつかのメリットがあります。 たとえば、次のようなことができます。

  • メインフレームの高コスト、制限、柔軟性のなさを回避するためにインフラストラクチャを最新化する。

  • 完全な再開発を行うことなく、メインフレームのワークロードをクラウドに移行する。

  • ミッション クリティカルなアプリケーションをクラウドに移行することで、オンプレミスのメインフレーム アプリケーションで継続性を維持する。

  • 柔軟な水平方向および垂直方向のスケーラビリティを実現する。

  • 高可用性 (HA) と DR の機能を実現する。

このソリューションは、独自のレガシ アプリケーション、インフラストラクチャ、ビジネス ロジック、およびプロセスを、標準化されベンチマークされたクラウド テクノロジに変換することで、今日の生産性の標準になっているアジャイルな DevOps の原則とプラクティスを促進します。 レガシ アプリケーションおよびインフラストラクチャを変換し、統合されたビジネスと IT の連携を実現します。

Avanade AMT フレームワークを使用すると、アプリケーション コードの書き換えやデータ アーキテクチャの再設計を行うことなく、リソースを Azure にすばやく移行できます。 この移行フレームワークでは、ソース コードのレイアウトを元の形式で維持しながら、レガシ コードが .NET C# または Java に変換されます。 アプリケーションのユーザー インターフェイスや操作を変更する必要がないため、ユーザーの再トレーニングの必要性が最小限に抑えられます。

考えられるユース ケース

Avanade AMT フレームワークでは、ワークロードを Azure に移行するための手法がいくつかサポートされています。

  • システム全体の変換: メインフレーム システム全体を一度に変換して Azure に移動できるため、中間メインフレームのメンテナンスと施設サポート コストが抑えられます。 スムーズな移行のためには、アプリケーションの変換、データ移行、テストなど、すべてのプロセスを調整する必要があるため、このアプローチを慎重に検討し、管理する必要があります。

  • 段階的なアプリケーションの移行: アプリケーションを メインフレーム から Azure に段階的に移行することで、最終的に完全な移行を完了できます。 個々のアプリケーションでコストを削減することができます。 また、各アプリケーションの変換について学び、その教訓を後続の変換に適用することもできます。

  • 段階的移行によるリソースの最適化: メインフレームでリソースを解放することが目標の場合、段階的な方法では、アプリケーションを Azure に変換して移行するため、メインフレーム上でより多くの処理サイクルを提供できます。 この方法では、メインフレームへの一時的なインターフェイスの設定や複雑なコードの分離など、さまざまな要因により、より複雑な移行が行われます。 すべての移行フェーズが完了したら、メインフレームを廃止することができます。

考慮事項

以降の考慮事項には、ワークロードの品質向上に使用できる一連の基本原則である Azure "Well-Architected Framework" の要素が組み込まれています。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

[信頼性]

信頼性により、顧客に確約したことをアプリケーションで確実に満たせるようにします。 詳細については、「信頼性の設計レビュー チェックリスト」を参照してください。

  • Site Recovery を使用すると、Azure データセンターの障害が発生した場合の迅速なフェールオーバーと DR を実行するために、Azure VM をセカンダリ Azure リージョンにミラーリングできます。

  • Azure 自動フェールオーバー グループ レプリケーションを使用することで、データベースのレプリケーションと別のリージョンへのフェイルオーバーを管理します。

  • Load Balancer を使用して、このソリューションへの回復性を構築します。 1 つのプレゼンテーションまたはトランザクション サーバーで障害が発生した場合、Load Balancer の背後にあるもう一方のサーバーがワークロードを引き受けます。

セキュリティ

セキュリティは、重要なデータやシステムの意図的な攻撃や悪用に対する保証を提供します。 詳細については、「セキュリティの設計レビュー チェックリスト」を参照してください。

  • Azure ネットワーク セキュリティ グループ (NSG) を使用して、Azure リソース間のトラフィックを管理します。

  • Private Link を使用すると、Azure VM から SQL Database への、Azure ネットワーク バックボーンに分離されたプライベートな直接接続を提供できます。

  • Azure Bastion を使用して開いているポートの数を制限することで、管理者アクセスのセキュリティを最大限に高めることができます。 Bastion では、仮想ネットワーク内で Azure portal から VM に TLS 経由で安全かつシームレスに RDP および SSH 接続できます。

コストの最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳細については、「コスト最適化の設計レビュー チェックリスト」を参照してください。

  • VM が不要な場合は無効にし、Azure Reserved Virtual Machine Instances を最適化するために既知の使用パターンのスケジュールをスクリプト化します。 Azure の Avanade AMT は、コストを最適化する Windows または Linux VM 上で実行されます。

  • サーバー セット内の VM が重複している場合は、Site Recovery で 1 つの VM インスタンスのみを使用してください。 Site Recovery では、保護されたインスタンスごと支払いが発生します。

  • このソリューションの実装のコストを見積もって計算するには、 Azure 料金計算ツールを使用します。

パフォーマンス効率

パフォーマンス効率とは、ユーザーからの要求に合わせて効率的な方法でワークロードをスケーリングできることです。 詳細については、「パフォーマンス効率の設計レビュー チェックリスト」を参照してください。

  • スケーリング機能を利用します。 Avanade AMT には、少なくとも 280 億命令/秒 (MIPS) または 33 億サービス ユニット (MSU) に相当する単一アプリケーションのスケーラビリティの実績があります。

  • Azure Virtual Machine Scale Sets を使用し、サーバーの各セットをスケールアウトしてスループットを向上させることができます。

  • SQL Database ハイパースケール レベルまたはビジネス クリティカル レベルは、高入出力操作/秒 (IOPS) と高稼働時間サービス レベル アグリーメント (SLA) に使用します。 料金情報については、SQL Database の価格に関する記事を参照してください。

  • 最高のパフォーマンスを得るには SSD または Ultra Disk Storage を使用します。 価格情報については、「Managed Disks の価格」を参照してください。

共同作成者

この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。

プリンシパル作成者:

  • Philip Brooks | シニア テクニカル プログラム マネージャー

パブリックでない LinkedIn プロファイルを表示するには、LinkedIn にサインインします。

次のステップ