SQL を使用して Azure で Murex MX.3 ワークロードをホストする

Azure Firewall
Azure ExpressRoute
Azure Key Vault
Azure Storage
Azure Monitor

この記事の目的は、Microsoft Azure で Murex ワークロードを実装するための詳細な技術情報を提供することです。

Murex は、資本市場向けの取引、リスク管理、処理業務、および取引後ソリューションにおける主要なグローバル ソフトウェア プロバイダーです。 多くの銀行では、Murex の第 3 世代プラットフォームである MX.3 を導入して、リスクを管理し、変革を加速し、コンプライアンスを簡素化しながら、収益の成長を促進しています。 Murex プラットフォームを使用すると、お客様は組織内の運用をより細かく管理し、効率を向上させ、運用コストを削減できます。

Architecture

Murex MX.3 ワークロードは、Oracle、Sybase、SQL Server などのデータベースで実行できます。 バージョン V3.1.48 では、SQL Server 2019 Standard が MX.3 でサポートされています。これにより、SQL Server によるパフォーマンス、スケーラビリティ、回復性、コスト削減のメリットを得ることができます。 MX.3 は、Windows OS を実行している Azure 仮想マシン (VM) でのみ使用できます。

Murex MX.3 アプリケーション用の Azure アーキテクチャを示す図。

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

ワークフロー

  • MX.3 のプレゼンテーション層は Azure でホストされ、ExpressRoute またはサイト間 VPN を介してオンプレミス環境からアクセスできます。
  • アプリケーション層には、プレゼンテーション レイヤー、ビジネス レイヤー、オーケストレーション レイヤー、およびグリッド レイヤーが含まれています。 この層では Windows VM 上の SQL Server にアクセスして、データの格納および取得が行われます。 セキュリティを強化するには、デスクトップ アプリケーションを実行する Azure Virtual Desktop または Windows 365 Cloud PC を使用してプレゼンテーション層にアクセスすることをお勧めします。 ただし、Web インターフェイスを介してアクセスすることもできます。
  • プレゼンテーション レイヤーでは、ビジネス レイヤー、オーケストレーション レイヤー、およびグリッド レイヤーのコンポーネントにアクセスして、ビジネス プロセスを完了します。
  • アプリケーション レイヤーでは、Azure Key Vault サービスにアクセスして、暗号化キーとシークレットを安全に格納します。
  • 管理者ユーザーは、Azure Bastion サービスを使用して、Murex MX.3 サーバーに安全にアクセスできます。

コンポーネント

  • Azure Bastion: Azure Bastion は、パブリック IP アドレスを介して公開されることなく、VM へのより安全でシームレスなリモート デスクトップ プロトコル (RDP) および Secure Shell プロトコル (SSH) アクセスを提供するフル マネージド サービスです。
  • Azure Monitor: Azure Monitor は、Azure およびオンプレミス環境からテレメトリ データを収集、分析、処理するのに役立ちます。
  • Azure Firewall: Azure Firewall は、Azure で実行されているクラウド ワークロードに最高レベルの脅威保護を提供する、クラウドネイティブでインテリジェントなネットワーク ファイアウォールのセキュリティ サービスです。
  • Azure ExpressRoute: Azure ExpressRoute を使用して、Azure のデータセンターとオンプレミスやコロケーション環境にあるインフラストラクチャの間でプライベート接続を作成します。
  • Azure Files: 業界標準の SMB および NFS プロトコルを介してアクセスできる、クラウドのフル マネージド ファイル共有。
  • Azure Disk Storage: Azure Disk Storage では、ミッションクリティカルおよびビジネスクリティカルなアプリケーション向けのハイパフォーマンスで耐久性の高いブロック ストレージが提供されています。
  • Azure Site Recovery: 計画的な停止や予期しない停止中にアプリケーションの実行を継続できるように、Site Recovery を介してレプリケーション、フェールオーバー、復旧のプロセスをデプロイします。
  • SQL Server on Windows VM: SQL Server on Azure Virtual Machines では、オンプレミスのハードウェアを一切管理することなく全バージョンの SQL Server をクラウドで利用することができます。 また、SQL Server VM によって従量課金制のライセンス料が単純化されます。
  • Azure Key Vault: Azure Key Vault を使用して、シークレットの安全な保存とアクセスを行います。
  • Azure VPN Gateway: VPN Gateway は、Azure 仮想ネットワークとオンプレミスの場所の間で、パブリック インターネットを介して暗号化されたトラフィックを送信します。
  • Azure Policy: Azure Policy を使用して、Azure 環境でポリシー定義の作成、割り当て、管理を行います。
  • Azure Backup: Azure Backup は、バックアップ ストレージのニーズに基づいて拡張できる、コスト効率に優れた安全なワンクリック バックアップ ソリューションです。

代替

代替ソリューションとしては、SQL の代わりのデータベースとして Oracle と共に Murex MX.3 を使用できます。 詳細については、「Azure で Murex MX.3 ワークロードをホストする」を参照してください。

シナリオの詳細

MX.3 は、3 層アーキテクチャ構造に基づくクライアント/サーバー アプリケーションです。 銀行では、販売や取引、企業のリスク管理、担保と投資などのビジネス要件に MX.3 を使用します。

Azure を使用すると、MX.3 インフラストラクチャを迅速かつ簡単に作成してスケーリングできます。 これにより、運用、開発、およびテスト システム用に使用できる安全で信頼性の高い効率的な環境が提供され、MX.3 環境の運用に必要なインフラストラクチャ コストが大幅に削減されます。

Murex MX.3 アプリケーションのさまざまな階層とレイヤー、コンピューティング、ストレージの要件の詳細については、Murex 技術チームにお問い合わせください。

考えられるユース ケース

このソリューションは、次のような潜在的なユース ケースを含め、金融業界での使用に最適です。

  • 運用をより適切に管理し、効率を向上させ、インフラストラクチャ コストを削減します。
  • 運用と開発のための安全で信頼性の高い効率的な環境を創出します。

要件と制限

Murex MX.3 は、高メモリ消費量、低待機時間、高可用性の要件を備えた複雑なワークロードです。 以下は、Murex MX.3 ワークロードを Azure に実装する際に分析する必要がある技術的な制限事項と要件です。

  • MX.3 では、クライアント/サーバー アーキテクチャが使用されます。 Azure に実装すると VM 上で実行でき、アプリケーションで PaaS サービスはサポートされません。 ネイティブの Azure サービスを慎重に分析して、Murex の技術的な要件を満たしていることを確認します。
  • MX.3 アプリケーションでは、タスクを実行するために外部 (インターネット) と内部 (オンプレミス) の接続が必要です。 MX.3 アプリケーションの Azure アーキテクチャでは、内部および外部のサービスと統合するために、セキュリティで保護された接続モデルをサポートする必要があります。 オンプレミス サービスに接続するには、Azure サイト間 VPN または ExpressRoute (推奨) を使用します。
  • MX.3 ソリューションを完全に Azure にデプロイすることも、ハイブリッド モデル (この記事では説明しません) を使用して Azure コンポーネントの部分的なセットをデプロイすることもできます。 デプロイのハイブリッド モデルを使用する前に、アーキテクチャと技術要件を慎重に分析する必要があります。 MX.3 のデプロイのハイブリッド モデルは、Murex チームによる技術レビューの対象となります。

考慮事項

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

[信頼性]

信頼性により、顧客に確約したことをアプリケーションで確実に満たせるようにします。 詳細については、「信頼性の重要な要素の概要」を参照してください。

バックアップには、Azure ネイティブ バックアップ サービスと Azure ストレージを組み合わせて使用できます。 これらのサービスは、アプリケーション VM の日次、週次、または月次バックアップや、その他のアプリケーション層固有のバックアップ要件に使用します。 データベース要件に対応するには、Site Recovery を使用して、ディザスター リカバリー プロセスとネイティブ データベース レプリケーションを自動化できます。 バックアップ ツールを使用して、必要なレベルの RPO メトリックを実現することもできます。

Azure 上で Murex ソリューションの高い可用性と回復性を得るには、アプリケーション層の各レイヤーを 2 つ以上の VM で実行する必要があります。 Azure 可用性セット構成を使用して、複数の VM 間で高可用性を実現できます。 また、Azure Virtual Machine Scale Sets を使用して、複数のインスタンスに分散されるアプリケーションの冗長性とパフォーマンスの改善を得ることもできます。 オーケストレーション レイヤーを複数のインスタンスでホストし、カスタム スクリプトを使用してインスタンスを呼び出すことで、オーケストレーション レイヤーの高可用性を実現できます。 高可用性要件を満たすには、SQL Server の Always On 可用性グループなど、データベースの高可用性機能を使用します。

SQL Server の Always On 可用性グループを使用すると、プライマリ SQL Server インスタンスと 1 つ以上のセカンダリ インスタンスを設定することで、DR フェールオーバーを自動化できます。 各サーバー インスタンスで Always On 可用性グループ機能を構成します。

MX.3 を使用するには、SQL Server で DTC を有効にする必要があります。 SQL Server on RedHat Linux OS では、SQL Server Always On 可用性グループに対する DTC サポートをまだ利用できないため、DTC トランザクションをサポートするには、SQL Server を Windows Server VM 上でホストすることをお勧めします。

ディザスター リカバリーに対応するには、ディザスター リカバリー サイトを別の Azure リージョンで実行する必要があります。 SQL Server については、目標復旧時点と目標復旧時間の要件に基づき、アクティブ/パッシブのディザスター リカバリー構成を使用できます。 アクティブ/アクティブは、マルチリージョンの書き込みができないため、SQL Server では使用しせん。 待ち時間とバックアップのタイミングによるデータ損失を考慮する必要があります。 Site Recovery を使用して、ディザスター リカバリー プロセスとネイティブ データベース レプリケーションを自動化できます。 バックアップ ツールを使用して、必要なレベルの RPO メトリックを実現することもできます。

Linux は、各社の商標です。 このマークを使用することは、保証を意味するものではありません。

セキュリティ

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

MX.3 クライアント層には、ユーザー デスクトップから直接アクセスすることも、Azure Virtual Desktop や Windows 365 クラウド PC、またはその他の Microsoft 以外のソリューションによる仮想デスクトップ ソリューションを介してアクセスすることもできます。

Azure Key Vault などのサービスを使用して、キーと証明書を格納することで、Azure の MX.3 アプリケーションのセキュリティ要件に対処します。 仮想ネットワーク、ネットワーク セキュリティ グループ (NSG)、アプリケーション セキュリティ グループを使用して、さまざまなレイヤーと層間のアクセスを制御できます。 セキュリティ要件に応じてフロントエンド レイヤーを保護するには、Azure Firewall、DDoS 保護、Azure Application Gateway または Web Application Firewall サービスを使用します。

データ レベルでセキュリティの手法を提供する SQL Server の機能と可能性を確認します。 さらに、Azure のセキュリティ対策により、機密データの暗号化、ウイルスやマルウェアからの VM の保護、ネットワーク トラフィックのセキュリティ保護、脅威の特定と検出、コンプライアンス要件の遵守、およびハイブリッド クラウドでのセキュリティ ニーズに対する単一の管理方法とレポート作成が可能になります。 これらのセキュリティに関する考慮事項の詳細については、「Azure Virtual Machines 上の SQL Server のセキュリティに関する考慮事項」を参照してください。

SQL Server VM のベスト プラクティスの詳細については、このシリーズの他の記事を参照してください。

コストの最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳しくは、コスト最適化の柱の概要に関する記事をご覧ください。

Azure ハイブリッド特典を利用すると、Azure SQL データベースおよび Azure SQL Managed Instance で、既存のライセンスを割引料金で交換できます。 Azure でソフトウェア アシュアランス対応の SQL Server ライセンスを使用することにより、SQL データベースと SQL Managed Instance の料金を最大 30% 以上節約できます。 Azure ハイブリッド特典ページには、節約できる金額を知るための計算機能があります。

いくつかのオプションがコストに影響を与える可能性があるため、コストとビジネス要件が釣り合うように適切な VM SKU を選択することが重要です。

Virtual Machine Scale Sets では、アプリケーションの需要が増加すると VM インスタンスの数を自動的に増やし、需要が減少すると VM インスタンスの数を減らすことができます。

需要が少ないときは、自動スケーリングでも、アプリケーションを実行する不要な VM インスタンスの数を最小限に抑えます。 需要が増加すると VM インスタンスが自動的に追加され、お客様は引き続き許容レベルのパフォーマンスを得ることができます。 この機能は、必要に応じてコストを削減し、Azure リソースを効率的に作成するのに役立ちます。

料金の詳細については、「Azure VM 上の SQL Server の料金ガイダンス」を参照してください。 Azure 料金計算ツールを使用してコストを見積もることもできます。

オペレーショナル エクセレンス

オペレーショナル エクセレンスは、アプリケーションをデプロイし、それを運用環境で実行し続ける運用プロセスをカバーします。 詳細については、「オペレーショナル エクセレンスの重要な要素の概要」を参照してください。

Azure Monitor を使用すると、Azure インフラストラクチャ コンポーネントを監視できます。 アラート メカニズムにより、自動スケーリングや通知などの予防措置を講じることができます。

Azure Resource Manager テンプレートや Terraform スクリプトなど、コードとしてのインフラストラクチャ サービスを使用して、インフラストラクチャの自動化を実現できます。

Azure DevOps を使用すると、Terraform など、サポートされている任意の IaC を使用して Azure SQL Server をデプロイできます。 Murex DevOps ツールを使用して、アプリケーション レベルの DevOps 要件に対処できます。 このアプローチに関するガイダンスについては、直接 Murex にお問い合わせください。

パフォーマンス効率

パフォーマンス効率とは、ユーザーによって行われた要求に合わせて効率的な方法でワークロードをスケーリングできることです。 詳細については、「パフォーマンス効率の柱の概要」を参照してください。

さまざまな層で Murex MX.3 ワークロードを運用するには、機能要件と技術要件を満たす特定の種類のコンピューティング リソースが必要です。 MX.3 ワークロードのコンピューティング、メモリ、ストレージの要件については、Murex MX.3 アーキテクチャを参照してください。

Murex ワークロードに必要なパフォーマンス メトリックを実現するには、Premium SSD を使用する Azure Managed Disks に MX.3 アプリケーション ディレクトリとデータベースを格納することを検討してください。 Azure で近接通信配置グループとネットワーク アクセラレーションを使用して、レイヤー間で高いネットワーク スループットを実現できます。

Azure VM 上の SQL には、Premium SSD または Ultra SSD ストレージを使用します。 Premium SSD の詳細については、「Azure VM の SQL Server 用ストレージ構成ガイドライン」を参照してください。

一方、Ultra SSD は、待ち時間をミリ秒未満とするミッション クリティカルなワークロード向けに Azure で利用できる、高スループットなストレージ オファリングです。 Ultra SSD では、1 TB の Ultra SSD ディスクが 1 台あればよく、これを最大 50,000 IOPS までスケールアップできます。 Ultra SSD は柔軟に構成でき、サイズと IOPS は個別にスケーリングできます。 Ultra SSD の詳細については、「Mission critical performance with Ultra SSD for SQL Server on Azure VM」(Azure ブログ | Microsoft Azure) を参照してください。

Azure VM 上の SQL Server のパフォーマンスを最適化するためのベスト プラクティスとガイドラインの簡単なチェックリストが、「チェックリスト: Azure VM 上の SQL Server のベスト プラクティス」に記載されています。 SQL Server VM に関するベスト プラクティスの詳細については、このシリーズの他の記事を参照してください。

Azure VM 上の SQL Server 用の SQL アセスメントを有効にすると、既知のベスト プラクティスに照らしてお使いの SQL Server を評価し、その結果を Azure portal の SQL VM 管理ページで確認できます。

Virtual Machine Scale Sets を使用している場合は、ビジネス層のコンピューティング需要を満たすために、スケールアウトして追加の VM を作成することもできます。 ただし、Murex MX.3 では、アクティブなセッションを終了せずにこの操作を行う必要があります。 Murex MX.3 のお客様は、製品サポート エンジニアと連携して、安全な VM スケーリングを実現するための戦略を立てることができます。

ネットワーク ハブ アンド スポーク モデル

Azure で MX.3 ワークロードを実装する際の重要な考慮事項は、ランディング ゾーン アーキテクチャを定義することです。 このアーキテクチャには、サブスクリプション、リソース グループ、仮想ネットワークの分離、ソリューションのさまざまなコンポーネント間の接続が含まれています。 このセクションでは、Microsoft クラウド導入フレームワークに基づいて、Azure に MX.3 ワークロードを実装するためのランディング ゾーン アーキテクチャについて説明します。

次の図は、Azure のハブアンドスポーク ネットワーク トポロジを使用するランディング ゾーンの概要を示しています。

Azure サービスでのハブ アンド スポーク モデルの例を示す図。

  • このモデルでは、異なる環境を実行するために使用されるスポーク ネットワークを厳密に分離できます。 このモデルでは、ハブ ネットワーク内のセキュリティで保護された制御アクセスと共有サービス レイヤーも維持されます。
  • これはマルチリージョン ソリューションであるため、同じハブスポーク モデルを別のリージョンで使用できます。 リージョンごとにハブを構築した後、非運用と運用のために異なるスポークを作成できます。
  • このランディング ゾーンは、組織によるアプリケーションの分類方法に応じて、単一サブスクリプションまたは複数のサブスクリプションに使用します。

ここでは、ランディング ゾーン内の各コンポーネントについて説明します。

ハブ: ハブは、MX.3 クライアントのオンプレミス ネットワークと、複数のワークロードで使用されるホスティング サービスへの外部接続を管理するための中心的な場所として機能する仮想ネットワークです。

スポーク: スポークは、MX.3 の Azure ワークロードをホストし、仮想ネットワーク ピアリングを介して中央のハブに接続する仮想ネットワークです。

仮想ネットワーク ピアリング: ハブとスポークの仮想ネットワークは、仮想ネットワーク ピアリングを使用して接続され、これによって仮想ネットワーク間の待機時間の短い接続がサポートされます。

ゲートウェイ: ゲートウェイは、MX.3 クライアントのオンプレミス ネットワークから Azure 仮想ネットワークにトラフィックを送信するために使用されます。 トラフィックは、送信前に暗号化できます。

ゲートウェイ サブネット: オンプレミスから Azure にトラフィックを送信するゲートウェイは、ゲートウェイ サブネットと呼ばれる特定のサブネットを使用します。 ゲートウェイ サブネットは、仮想ネットワークの構成時に指定した仮想ネットワーク IP アドレス範囲に含まれます。 そこには、仮想ネットワーク ゲートウェイのリソースやサービスによって使用される IP アドレスが含まれます。

Azure Jumpbox VM: Jumpbox では、動的 IP を使用して、アプリケーション層と永続化層の Azure VM を接続します。 Jumpbox を使用すると、すべてのアプリケーションとデータベースの VM がパブリックに公開されなくなります。 この接続は、オンプレミス ネットワークから RDP 経由で接続するためのエントリ ポイントです。

Azure Firewall: MX.3 VM とインターネットの間のすべての受信接続と送信接続を、Azure Firewall 経由でルーティングする必要があります。 そのような接続の典型的な例は、時刻同期やウィルス対策定義の更新です。

Azure Bastion: Azure Bastion を使用すると、Azure portal を介してアプリケーションとデータベースの VM を安全に接続できます。 ハブ仮想ネットワーク内に Azure Bastion ホストをデプロイした後、ピアリングされたスポーク仮想ネットワーク内の VM にアクセスします。 このコンポーネントは省略可能で、必要に応じて使用できます。

Azure Bastion サブネット: Azure Bastion では、専用サブネット AzureBastionSubnet が必要です。 このサブネットをハブに作成し、Bastion ホストをこのサブネットにデプロイする必要があります。

Azure 管理サブネット: Azure Jumpbox が管理サブネットに存在する必要があります。 Jumpbox には、スポーク仮想ネットワーク内のアプリケーション VM とデータベース VM の管理機能と監視機能を実装する VM が含まれています。

アプリケーション サブネット: アプリケーション層の下のすべてのコンポーネントをここに配置できます。 専用のアプリケーション サブネットを使用することは、ビジネス レイヤー、オーケストレーション レイヤー、およびテクニカル サービス レイヤーへのトラフィックを NSG を介して制御することにも役立ちます。

データベース サブネット: データベース サブネット内のコンポーネントを専用サブネットに配置して、データベース周辺のトラフィックを管理できます。

プライベート リンク: Recovery Services コンテナー、Azure Cache for Redis、Azure Files などの Azure サービスはすべて、仮想ネットワークへのプライベート リンクを介して接続されます。 これらのサービスと仮想ネットワークの間にプライベート リンクを設定すると、インターネットへのデータ公開がなくなることで、Azure 内のエンドポイント間の接続がセキュリティで保護されます。

共同作成者

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

プリンシパルの作成者:

  • Vandana Bagalkot | プリンシパル クラウド ソリューション アーキテクト
  • Gansu Adhinarayanan | ディレクター - パートナー テクノロジ ストラテジスト

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

次のステップ