メインフレーム・アプリケーションのOracle Cloud Infrastructure (OCI)への移行
メインフレーム・コンピュータは、世界中の大手組織にとって主要なコンピューティング・インフラストラクチャの一部となっています。
企業は、国勢調査集計、エンタープライズ・リソース・プランニング、業界統計と消費者統計、大規模なトランザクション処理などの重要なバルク・データ処理アプリケーションの実行にメインフレームの使用を開始しました。銀行、科学研究、ワクチン開発などの組織はすべてメインフレームを使用しています。メインフレームは高い信頼性と可用性を提供しますが、いくつかの制限もあります。たとえば、メインフレーム・コンピュータを最新のセキュリティ・パッチで最新の状態に保ち、新しい世代のアプリケーションの実行に必要な最新のテクノロジおよびデプロイメント頻度に遅れないようにすることは非常に困難です。
Oracle Cloud Infrastructure (OCI)は、メインフレーム・アプリケーションをクラウドに移行し、簡素化されたインフラストラクチャ管理とスケーリング、自動化されたセキュリティ・パッチ適用、メインフレーム・アプリケーションを俊敏に導入および更新するための自動化されたアプローチなど、クラウド・コンピューティングのメリットを実現するのに役立ちます。OCIは、メインフレーム・アプリケーションをクラウドに移行し、ビジネス・ニーズに応じてプラットフォームを再構築または再ファクタリングするために必要なツールとリソースを提供します。
アーキテクチャ
高可用性(HA)およびディザスタ・リカバリ(DR)アーキテクチャを使用して、メインフレーム・アプリケーションをOracle Cloud Infrastructure (OCI)に移行します。
どちらのアーキテクチャにも、メインフレーム・アプリケーションをクラウドに移行するために必要なツールとリソースが用意されており、お客様と管理者のユーザーがビジネス、管理、および運用の目的でメインフレーム・アプリケーションを使用できます。
次の図は、高可用性(HA)アーキテクチャを示しています。
高可用性アーキテクチャは、アプリケーションを同じリージョン内の複数のフォルト・ドメインにデプロイします。これにより、なんらかの理由でいずれかのフォルト・ドメインが使用できない場合でも、メインフレーム・アプリケーションが常に使用可能になります。組織は、同じリージョンの2番目の可用性ドメインにスタンバイ・インスタンスをデプロイして、回復力を高めることができます。
アーキテクチャ図は、複数のユーザー・アクセス・フローを示しています。ビジネス・ユーザーは、OCI APIゲートウェイを介して公開されているエンドポイントを使用してアプリケーションにアクセスします。これらのエンドポイントはOracle Cloud Infrastructure Web Application Firewallによって保護されるため、フロントエンドのセキュリティがデフォルトでメインフレーム・アプリケーションに適用されます。ユーザー・リクエストがロード・バランサに転送され、リクエストが複数層アプリケーションに転送されます。アプリケーションの3つの層はそれぞれ異なるサブネットでホストされ、アプリケーションが必要に応じて正しいセキュリティ・ポートが開くようにします。データベースに格納されているデータは、適切なセキュリティを確保するために別のサブネットから取得されます。
OCI上のメインフレーム・アプリケーションの操作を担当する管理ユーザーは、セキュア・シェル(SSH)およびサイト間仮想プライベート・ネットワーク(VPN)またはOracle Cloud Infrastructure FastConnectを使用してアプリケーション・サーバーにアクセスします。これにより、顧客データ・センターの顧客構内機器(CPE)をOCI上の動的ルーティング・ゲートウェイ(DRG)に接続するセキュアなトンネルが作成されます。このパスを使用して、管理者はデータ・センター・マシンからOCI上のコンピュート・インスタンスにアクセスします。このアクセスは、パッチ適用、アプリケーションのアップグレード、OSセキュリティ・アップグレードなどのすべての操作タスクが、時間どおりに簡単に実行されるようにするために必要です。
OCI自動リファクタリングは、機能的な同等性を維持しながら、レガシー・アプリケーション・スタックとそのデータ・レイヤー全体を最新のJavaベースのアプリケーションに変換するのに役立ちます。OracleのZFSおよびOracle Cloud Infrastructure Block Volumesは、必要に応じてストレージを提供し、適切なネットワーキングを使用してオンプレミス・ストレージ・システムに接続します。すべてのコードは、自動評価および変換を使用してJavaに移行されます。このコードは、仮想マシン(VM)またはベア・メタル(BM)アーキテクチャのいずれかに基づいて、コンピュート・インスタンスのOCIクラスタ上でホストされます。
Oracle Cloud Infrastructure DevOpsでは、すべてのコンポーネントがアジャイルな方法でデプロイされます。すべてのコンポーネントはTerraformを使用してデプロイされ、Ansibleを使用して保守されます。これは、OCIで自動化を活用し、Infrastructure-as-Code(IaC)アプローチに従ってメインフレーム・アプリケーションをより機敏でメンテナンスしやすくする方法を示しています。
次の図は、障害回復(DR)アーキテクチャーを示しています。

図mainframe-app-multiregion.pngの説明
mainframe-app-multiregion:oracle.zip
ディザスタ・リカバリ・アーキテクチャでは、アプリケーションを複数のOCIリージョンにデプロイします。これにより、自然災害などのなんらかの理由でいずれかのリージョンが使用できなくなった場合に、メインフレーム・アプリケーションが使用可能になります。オプションで、リソースを複数のフォルト・ドメインに配置すると、クラウド・データ・センターでラックレベルのハードウェア障害が発生した場合にアーキテクチャが安全になり、メインフレーム・アプリケーションは停止時間なしで長年継続して実行できます。
アーキテクチャには、次のコンポーネントがあります。
- テナント
テナンシは、Oracle Cloud Infrastructureへのサインアップ時にOracleがOracle Cloud内で設定するセキュアで分離されたパーティションです。テナンシ内のOracle Cloudでリソースを作成、編成および管理できます。テナンシは、会社または組織と同義です。通常、会社は単一のテナンシを持ち、そのテナンシ内の組織構造を反映します。通常、単一のテナンシは単一のサブスクリプションに関連付けられ、単一のサブスクリプションには1つのテナンシのみが含まれます。
- リージョン
Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含むローカライズされた地理的領域です。リージョンは他のリージョンから独立しており、広大な距離で(複数の国または複数の大陸にまたがる)リージョンを分離できます。
- コンパートメント
コンパートメントは、Oracle Cloud Infrastructureテナンシ内のリージョン間論理パーティションです。コンパートメントを使用して、Oracle Cloudでリソースを編成、リソースへのアクセスを制御および使用割当てを設定します。特定のコンパートメント内のリソースへのアクセスを制御するには、誰がリソースにアクセスできるか、どのアクションを実行できるかを指定するポリシーを定義します。
- 可用性ドメイン
可用性ドメインは、リージョン内の独立したスタンドアロン・データ・センターです。各可用性ドメイン内の物理リソースは、他の可用性ドメイン内のリソースから分離されているため、フォルト・トレランスが提供されます。可用性ドメインどうしは、電力や冷却、内部可用性ドメイン・ネットワークなどのインフラを共有しません。そのため、ある可用性ドメインでの障害がリージョン内の他の可用性ドメインに影響することはほとんどありません。
- フォルト・ドメイン
フォルト・ドメインは、可用性ドメイン内のハードウェアおよびインフラストラクチャのグループです。各アベイラビリティ・ドメインに3つのフォルト・ドメインがあり、それぞれ独立した電源とハードウェアがあります。複数のフォルト・ドメインにリソースを分散すると、アプリケーションは、フォルト・ドメイン内の物理サーバー障害、システム・メンテナンスおよび電源障害を許容できます。
- 仮想クラウド・ネットワーク(VCN)およびサブネット
VCNは、Oracle Cloud Infrastructureリージョンで設定する、カスタマイズ可能なソフトウェア定義のネットワークです。VCNは、従来のデータ・センター・ネットワークと同様に、ネットワーク環境の完全な制御を可能にします。VCNには重複しない複数のCIDRブロックを含めることができ、VCNの作成後にそれらを変更できます。VCNをサブネットにセグメント化して、そのスコープをリージョンまたは可用性ドメインに設定できます。各サブネットは、VCN内の他のサブネットと重複しない連続した範囲のアドレスで構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックにもプライベートにもできます。
- ルート表
仮想ルート表には、サブネットからVCN外部の宛先(通常はゲートウェイ経由)へのトラフィックをルーティングするルールが含まれます。
- セキュリティ・リスト
サブネットごとに、サブネットの内外で許可する必要があるトラフィックのソース、宛先およびタイプを指定するセキュリティ・ルールを作成できます。
- サイト間VPN
サイト間VPNは、オンプレミス・ネットワークとOracle Cloud InfrastructureのVCN間でIPSec VPN接続を提供します。IPSecプロトコル・スイートは、パケットがソースから宛先に転送される前にIPトラフィックを暗号化し、到着時にトラフィックを復号化します。
- FastConnect
Oracle Cloud Infrastructure FastConnectは、データ・センターとOracle Cloud Infrastructureの間に専用のプライベート接続を簡単に作成する方法を提供します。FastConnectは、インターネットベースの接続と比較して、高帯域幅のオプションとより信頼性の高いネットワーク・エクスペリエンスを提供します。
- インターネット・ゲートウェイ
インターネット・ゲートウェイにより、VCN内のパブリック・サブネットとパブリック・インターネットの間のトラフィックが許可されます。
- Dynamic routing gateway (DRG)
DRGは、VCNとリージョン外部のネットワーク(別のOracle Cloud InfrastructureリージョンのVCN、オンプレミス・ネットワーク、別のクラウド・プロバイダ内のネットワークなど)間の、同じリージョン内のVCN間のプライベート・ネットワーク・トラフィックのパスを提供する仮想ルーターです。
- サービス・ゲートウェイ
サービス・ゲートウェイは、VCNからOracle Cloud Infrastructure Object Storageなどの他のサービスへのアクセスを提供します。The traffic from the VCN to the Oracle service travels over the Oracle network fabric and never traverses the internet.
- ネットワーク・アドレス変換(NAT)ゲートウェイ
NATゲートウェイを使用すると、VCN内のプライベート・リソースは、受信インターネット接続にそれらのリソースを公開することなく、インターネット上のホストにアクセスできます。
- Web Application Firewall (WAF)
Oracle Cloud Infrastructure Web Application Firewall (WAF)は、ロード・バランサやWebアプリケーション・ドメイン名などの強制ポイントにアタッチされている、支払カード業界(PCI)に準拠したリージョンベースおよびエッジ強制サービスです。WAFは、悪意のある不要なインターネット・トラフィックからアプリケーションを保護します。WAFは、インターネット接続エンドポイントを保護することで、顧客のアプリケーションに対する一貫性のあるルール適用を実現できます。
- コンピュート
Oracle Cloud Infrastructure Computeサービスを使用すると、クラウド内のコンピュート・ホストをプロビジョニングおよび管理できます。CPU、メモリー、ネットワーク帯域幅およびストレージのリソース要件を満たすシェイプを使用してコンピュート・インスタンスを起動できます。コンピュート・インスタンスを作成したら、インスタンスに安全にアクセスして再起動し、ボリュームをアタッチおよびデタッチして、不要になったら終了できます。
- ロード・バランサ
Oracle Cloud Infrastructure Load Balancingサービスは、単一のエントリ・ポイントからバックエンドの複数のサーバーへの自動トラフィック分散を提供します。
- オブジェクト・ストレージ
オブジェクト・ストレージでは、データベースのバックアップ、分析データ、イメージやビデオなどのリッチ・コンテンツなど、あらゆるコンテンツ・タイプの構造化データおよび非構造化データにすばやくアクセスできます。インターネットから直接またはクラウド・プラットフォーム内から、安全かつセキュアにデータを格納し、取得できます。パフォーマンスやサービスの信頼性を損なうことなく、シームレスにストレージを拡張できます。迅速、即時、頻繁にアクセスする必要があるホット・ストレージには、標準ストレージを使用します。長期間保持し、ほとんどまたはほとんどアクセスしないコールド・ストレージには、アーカイブ・ストレージを使用します。
- 通知
Oracle Cloud Infrastructure Notificationsサービスは、Oracle Cloud Infrastructureでホストされているアプリケーションに対して、セキュア、高信頼性、低レイテンシおよび永続的なメッセージを配信するパブリッシュ/サブスクライブ・パターンを介して、分散コンポーネントにメッセージをブロードキャストします。
- 関数
Oracle Cloud Infrastructure Functionsは、完全に管理された、スケーラビリティに優れたオンデマンドのFunctions-as-a-Service (FaaS)プラットフォームです。これは、Fn Projectのオープン・ソース・エンジンによって機能します。ファンクションを使用すると、コードをデプロイし、直接コールするか、イベントに応答してトリガーできます。Oracle Functionsでは、Oracle Cloud Infrastructure RegistryでホストされているDockerコンテナが使用されます。
- ロギングLoggingは、クラウド内のリソースから次のタイプのログへのアクセスを提供する高度にスケーラブルで完全管理型のサービスです:
- 監査ログ: Auditサービスによって発行されるイベントに関連するログ。
- サービス・ログ: APIゲートウェイ、イベント、ファンクション、ロード・バランシング、オブジェクト・ストレージ、VCNフロー・ログなどの個々のサービスによって発行されたログ。
- カスタム・ログ: カスタム・アプリケーション、他のクラウド・プロバイダまたはオンプレミス環境からの診断情報を含むログ。
- Exadata Databaseサービス
Oracle Exadata Database Serviceを使用すると、クラウドでExadataの機能を活用できます。ニーズの増加時にデータベース・コンピュート・サーバーおよびストレージ・サーバーをシステムに追加できるフレキシブルX8MおよびX9Mシステムをプロビジョニングできます。X8MおよびX9Mシステムでは、高帯域幅と低レイテンシを実現するRDMA over Converged Ethernet (RoCE)ネットワーク、永続メモリー(PMEM)モジュールおよびインテリジェントExadataソフトウェアを提供します。X8MおよびX9Mシステムをプロビジョニングするには、クォータ・ラックのX8およびX9Mシステムと同等のシェイプを使用し、プロビジョニング後はいつでもデータベース・サーバーおよびストレージ・サーバーを追加します。
推奨事項
お客様の要件は、ここで説明するアーキテクチャとは異なる場合があります。
- VCN
VCNを作成するときには、必要なCIDRブロックの数を決定し、VCN内のサブネットにアタッチする予定のリソースの数に基づいて各ブロックのサイズを決定します。標準プライベートIPアドレス空間内のCIDRブロックを使用します。
プライベート接続を設定する他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは別のクラウド・プロバイダ)と重複しないCIDRブロックを選択します。
VCNを作成した後、そのCIDRブロックを変更、追加および削除できます。
サブネットを設計するときには、トラフィック・フローおよびセキュリティ要件を考慮してください。特定の層またはロール内のすべてのリソースを同じサブネットに接続し、セキュリティ境界として機能できます。
- クラウド・ガード
Oracleによって提供されるデフォルトのレシピをクローニングおよびカスタマイズして、カスタム・ディテクタおよびレスポンダ・レシピを作成します。これらのレシピを使用すると、警告を生成するセキュリティ違反のタイプと、そのレシピに対して実行できるアクションを指定できます。たとえば、表示がパブリックに設定されているオブジェクト・ストレージ・バケットを検出できます。
クラウド・ガードをテナンシ・レベルで適用して、範囲を広げ、複数の構成を維持する管理上の負担を軽減します。
管理対象リスト機能を使用して、特定の構成をディテクタに適用することもできます。
- 障害時リカバリ(DR)
エンタープライズ・アプリケーションには、別のOCIリージョンのスタンバイDRインスタンスをお薦めします。DR戦略は、SLAおよびデータの耐久性要件を満たすために、3層間で一貫している必要があります。DR Oracle Exadata Database Service on Dedicated Infrastructureは、Oracle Data Guardを使用して本番と同期されます。スタンバイOracle Exadata Database Service on Dedicated Infrastructureは、トランザクション上の一貫したプライマリ・データベースのコピーです。Oracle Data Guardは、プライマリ・データベースからスタンバイへのREDOデータの転送および適用によって、データベースを自動的に同期します。プライマリ・リージョンで障害が発生した場合、Oracle Data Guardは自動的にセカンダリ・リージョンのスタンバイ・データベースにフェイルオーバーします。フロントエンド・ロード・バランサは、ネットワーク・ロード・バランサのスタンバイ・モードでデプロイされるか、Oracle Cloud Infrastructure Load Balancingを使用して高可用性でデプロイされます。
考慮事項
このリファレンス・アーキテクチャを実装する場合は、次のオプションを検討してください。
- パフォーマンス
Oracle Cloud Infrastructure Compute、Oracle Exadata Database Serviceおよびその他の重要なサービスは、非常にスケーラブルです。メインフレーム・アプリケーションのサイズと要件に基づいて、コンピュートおよびストレージ・リソースの数を調整することを検討してください。
- セキュリティ
ポリシーを使用して、Oracle Cloud Infrastructure (OCI)リソースにアクセスできるユーザーを制限します。Oracle Cloud Infrastructure Object Storageの場合、暗号化はデフォルトで有効になっており、オフにできません。Oracle Cloud Infrastructure Functionsにデプロイされたファンクションへのすべてのアクセスは、Oracle Cloud Infrastructure Identity and Access Management (IAM)を介して制御されます。これにより、ファンクション管理およびファンクション呼出しの両方の権限を特定のユーザーおよびユーザー・グループに割り当てることができます。Oracle Cloud Infrastructure Vaultには、OCIサービスでの認可に使用されるAPIキーや認証トークンなどのシークレットおよび機密データを格納することをお薦めします。
- 可用性
Oracleは、Oracle Cloud Infrastructure Compute、Oracle Exadata Database Serviceおよびその他のクラウド・ネイティブ・サービスおよび完全管理サービスの高可用性を保証します。単一のアベイラビリティ・ドメイン内にデプロイされたワークロードの場合、このアーキテクチャに示すようにフォルト・ドメイン間でリソースを分散することで、自己回復性を確保できます。複数の可用性ドメインがあるリージョンにワークロードをデプロイする予定の場合は、複数の可用性ドメインにリソースを分散できます。
- 拡張性
コンピュート・インスタンスのシェイプを変更することで、アプリケーション・サーバーを垂直方向にスケーリングできます。コア数が多いシェイプは、より多くのメモリーおよびネットワーク帯域幅を提供します。さらにストレージが必要な場合は、アプリケーション・サーバーにアタッチされているブロック・ボリュームのサイズを増やします。Oracle Exadata Database Serviceでより多くのコアを有効にすることで、データベースを垂直方向にスケーリングできます。クォータ・ラックでは、OCPUを2の倍数で追加できます。スケーリング操作中もデータベースは使用可能なままです。ワークロードが使用可能なCPUおよびストレージを上回る場合は、より大きなラックに移行できます。