※ 本記事は、Niranjan Mohapatraによる”Network latency using OCI-Azure Interconnect and best practices“を翻訳したものです。

2023年2月21日


2019年、OracleとMicrosoftは、Oracle Cloud Infrastructure(OCI)とMicrosoft Azureクラウドをプライベートで安全かつ低レイテンシで高スループットのネットワークで接続することで、クラウドの相互運用性を強化するパートナーシップを発表しました。OCI-Azure Interconnectです。このパートナーシップにより、OracleとMicrosoftのテクノロジーを利用する多くのオンプレミスのミッションクリティカルなアプリケーションを持つ企業は、パブリック・クラウドに簡単に移行できます。相互の顧客と補完的なクラウド・サービス向けに構築されたこの一種のクラウド連携により、オンプレミス・アプリケーションの迅速な移行が可能になります。お客様は、幅広いマルチクラウド・ソリューションを使用して、実装を単一の統合エンタープライズ・クラウド・ソリューションに統合できます。現在、12のインターコネクト・クラウド・リージョンがあり、さらにインターコネクト・リージョンを追加する予定です。

お客様は、OCI-Azure Interconnectを使用してのネットワーク・レイテンシとネットワーク・スループットおよび帯域幅についてよく尋ねます。インターコネクトを使用してネットワーク・レイテンシを最適化するためのベスト・プラクティスを教えてください。

このブログ投稿では、待機時間の重要性、OCI-Azure Interconnectを使用してネットワーク・レイテンシを最適化するためのベスト・プラクティス、および様々なタイプのOracleワークロードのパフォーマンスへの影響について取り上げています。また、すべてのOCIおよびAzureの相互接続されたリージョンでクラウド内レイテンシが含められます。テスト対象の詳細と、誰でも簡単にこれらのテストを再作成する方法を提供します。

このブログ投稿には、OCI-Azure Interconnectの構成ステップが示されていませんが、ステップバイステップ・ガイドで構成ステップを確認することができます。

テスト内容と方法

sockperfツールを使用して、データベース・ワークロードのTCPおよびUDPネットワーク・レイテンシを測定し、他のワークロードのICMP pingネットワーク・レイテンシを測定しました。過去数年間にわたって複数の顧客と協業した後、OCI-Azure Interconnectネットワーク・レイテンシは、Oracleデータベースに構築されたアプリケーションの95%以上に十分であると判断しました。TCPおよびUDPラウンドトリップ・ネットワーク・レイテンシおよびICMPラウンドトリップ・ネットワーク・レイテンシは、ほとんどのOCI-Azure相互接続リージョンで1-2ミリ秒の範囲内です。

たとえば、ほとんどのOracle Applications、サードパーティのパッケージ・アプリケーションおよびカスタム・アプリケーションでは、インターコネクトのレイテンシは最小限のパフォーマンス低下で機能します。平均レイテンシ700μs(マイクロ秒)と平均レイテンシ1300μs(マイクロ秒)を使用する場合、ほとんどのOracle Applicationsのお客様やOracleデータベースで並行処理を意識して作られた最新のアプリケーションでは、アプリケーションの性能低下は無視できる程度です。

A graphic depicting the comparison of latencies on OCI and the OCI-Azure Interconnect.

OCI-Azure Interconnectのベスト・プラクティス

Azureに配置された仮想マシン(VM)とOCIに配置されたVMの間のネットワーク・レイテンシを検証するために、次のアーキテクチャを使用しました。

A graphic depicting the architecture for the OCI-Azure Interconnect.
図1: AzureとOCIで相互接続されたクラウドを使用したサンプル・アーキテクチャ

次のリストは、OCIのFastConnect仮想回線およびAzureのExpressRoute仮想回線を使用して、OCIとAzureを相互接続するためのベスト・プラクティスを示しています。OCIとAzure VMの間のネットワーク・レイテンシを検証するために、これらのベスト・プラクティスを適用しました。ただし、アプリケーションのワークロードおよびネットワーク接続の要件に基づいて変化する可能性があります。

インターコネクトの設定

  • アプリケーション・ワークロードに必要なスループットに基づいて、適切なポート・サイズでAzure ExpressRoute回線を作成します。プロバイダとして「Oracle Cloud FastConnect」を選択し、Azure ExpressRoute仮想回線の「ローカル」SKUオプションを選択します。

  • Azure ExpressRoute Gatewayを作成し、Azure ExpressRoute Gatewayのために「ultra-performance」SKUを選択します。

  • アプリケーション・ワークロードに必要なスループットに基づいて、適切なポート・サイズでOCI FastConnect仮想回線を作成します。プロバイダとして「Microsoft Azure: ExpressRoute」を選択し、パートナ・サービス・キーとしてAzure ExpressRoute仮想回線の「サービス・キー」を使用します。

  • Azure ExpressRoute Gatewayで接続を追加する場合は、FastPathオプションを有効にします。

  • Azure ExpressRoute仮想回線のポート・サイズがOCI FastConnect仮想回線と同じサイズであることを確認します。

  • OracleとAzureは、OCIデータ・センターからAzureデータ・センターに複数のダークファイバー・ケーブルを接続する物理レイヤーに高可用性を構築します。

  • 複数の仮想回線(FastConnectポートおよびExpressRouteポート)を使用して、OCIとAzure間で必要なスループットを実現することを選択できます。

VM設定

  • Azure VMでSR-IOVと高速ネットワークを有効にします。

  • 複数のVMを使用してアプリケーション・ワークロードをデプロイする場合は、Azure近接性グループを使用してAzure VMを配置します。

  • Azure可用性ゾーンおよびOCI可用性ドメインは、クラウド・リージョン内の物理データ・センターの論理マッピングです。Azureのテナントとアカウント、OCIテナンシごとに異なります。OCI可用性ドメインに最も近いAzure可用性ゾーンを見つけて、アプリケーションVMおよびOracleデータベースを適切なAzure可用性ゾーンおよびOCI可用性ドメインに配置します。

  • OCI VMのハードウェア支援(SR-IOV)ネットワークを有効にします。

  • AzureとOCIの両方でVMを適切にサイズ設定し、仮想ネットワーク・インタフェース・カード(VNIC)でネットワーク・スループットを実現します。

  • Azure可用性ゾーンから最も近いOCI可用性ドメインを選択して、Oracleデータベースを配置します。

OCI-Azure Interconnectを使用したネットワーク・レイテンシ

sockperfツールを使用してTCPおよびUDPネットワーク・レイテンシを取得し、ICMP pingを使用してネットワークpingレイテンシを取得する2種類のテストを実行しました。各Azure可用性ゾーンにプライベートCIDRおよびサブネットを持つVMを作成し、マルチ可用性ドメインおよびマルチ可用性ゾーン・クラウド・リージョンに各OCI可用性ドメインを作成しました。

各テストを5分間実行し、ラウンドトリップ(RTT)ネットワーク・レイテンシを取得しました。テストには、Azure ExpressRouteの1Gbpsポート・サイズとOCI FastConnectの1Gbpsポート・サイズを使用しました。次のVMシェイプを使用して、OCI VMとAzure VM間のレイテンシをテストしました。

OCI VM構成

  • オペレーティング・システム: Oracle Linux 7.9

  • VMシェイプ: VM. Standard3.Flex (2 OCPU、32 GB RAM、2 Gbpsのネットワーク帯域幅)

Azure VM configuration

  • オペレーティング・システム: Oracle Linux 7.9

  • VMシェイプ: D4s_v3 (4 vCPU、16 GB RAM)

ICMP pingテスト

1マイクロ秒間隔と5分間連続実行を使用して、すべてのICMPレイテンシ・テストを実行しました。5分後、平均往復遅延時間を取得しました。各Azure可用性ゾーンおよびOCI可用性ドメインから、Azure VMとOCI VMの間でICMPテストを実行しました。

次のコマンドは、ネットワーク待機時間の取得に使用したものをサンプリングします。:

sudo ping <Private IP Address> -i 0.000001

Syntax:

 -i (interval): The amount of time in seconds to wait between ICMP echo requests. Fractional seconds are allowed. The value must be in the range of 0.000001-6000.

Sockperfテスト

sockperfツールを使用してすべてのTCPおよびUDPレイテンシ・テストを実行し、5分間継続的に実行しました。5分後、平均往復遅延時間を取得しました。各Azure可用性ゾーンおよびOCI可用性ドメインから、Azure VMとOCI VMの間でTCPおよびUDPネットワーク・レイテンシ・テストを実行しました。

次のコマンドは、ネットワークの取得に使用したものをサンプリングします。:

  • サーバー上(宛先ホスト)

    Syntax: #sudo sockperf sr --tcp -i <IP of Local host> -p <Unused server port>
    
    Example: #sudo sockperf sr --tcp -i 10.0.5.21-p 15000
  • クライアント上(ソース・ホスト)

    Syntax: #sockperf ping-pong -i <IP of Destination host> --tcp -t 300 -p <Destination server port> --full-rtt
    
    Example: #sockperf ping-pong -i 10.0.5.21 --tcp -t 300 -p 15000 --full-rtt

次の表に、Azure可用性ゾーンとOCI可用性ドメイン間の最小レイテンシと、相互接続された各リージョンから1マイクロ秒(μs)のAzure可用性ゾーンとOCI可用性ドメイン間の最大レイテンシを示します。

インターコネクト・リージョン

Azure可用性ゾーン(AZ)およびOCI可用性ドメイン(AD)のVM

ICMP RTT in μs

TCP and UDP RTT in μs

OCI Ashburn and Azure US East

Azure AZ3–OCI AD1

866 μs

691 μs

Azure AZ1–OCI AD3

1,647 μs

1,411 μs

OCI London and Azure UK South

Azure AZ2–OCI AD2

869 μs

787 μs

Azure AZ1–OCI AD3

2,102 μs

1,780 μs

OCI Frankfort and Azure Germany West Central

Azure AZ1–OCI AD1

1,457 μs

974 μs

Azure AZ3–OCI AD2

1,666 μs

1,611 μs

OCI Phoenix and Azure US West3

Azure AZ3–OCI AD3

1,715 μs

1,140 μs

Azure AZ1–OCI AD1

2,754 μs

2,730 μs

OCI Tokyo and Azure Japan East

Azure AZ2–OCI AD1

1,667 μs

1,464 μs

Azure AZ1–OCI AD1

2,143 μs

1,937 μs

OCI San Jose and Azure US West

Azure AZ1–OCI AD1

872 μs

815 μs

OCI Toronto and Azure Canada Central

Azure AZ1–OCI AD1

1,777 μs

1,602 μs

Azure AZ3–OCI AD1

2,001 μs

1,643 μs

OCI Amsterdam and Azure West Europe

Azure AZ3–OCI AD1

1,640 μs

1,554 μs

Azure AZ1–OCI AD1

2,134 μs

1,755 μs

OCI Vinhedo and Azure Brazil South

Azure AZ2–OCI AD1

1,584 μs

1,525 μs

Azure AZ3–OCI AD1

1,949 μs

1,667 μs

OCI Seoul and Azure South Korea Central

Azure AZ2–OCI AD1

1,045 μs

1,146 μs

Azure AZ3–OCI AD1

1,492 μs

1,276 μs

OCI Singapore and Azure Southeast Asia

Azure AZ2–OCI AD1

1,541 μs

1,362 μs

Azure AZ1–OCI AD1

1,836 μs

1,696 μs

OCI South Africa Central and Azure South Africa North

Azure AZ2–OCI AD1

1,455 μs

1,246 μs

Azure AZ3–OCI AD1

2,009 μs

1,624 μs

レイテンシ番号は、Azure近接性グループでのVMの配置、可用性ゾーン、特定のクラウド・リージョンでのOCI可用性ドメイン、ハブ・スポーク転送ルーティングを使用したネットワーク・アーキテクチャに基づいてわずかに変化する可能性があります。Azure可用性ゾーンおよびOCI可用性ドメイン・マッピングは、顧客のAzureアカウント、テナントおよびOCIテナンシによって異なります。

まとめ

OCIおよびAzure Interconnectを使用すると、エンタープライズ顧客は、アプリケーション・ワークロードをリファクタリングして再設計することなく、OracleベースのワークロードをOCIおよびMicrosoft中心のワークロードをAzureに移行またはデプロイできます。Oracle Cloud InfrastructureとAzureの間の低レイテンシで安全なプライベート・ネットワーク接続により、お客様はパフォーマンス・セキュリティを損なうことなく、ビジネスクリティカルなワークロードを実行できます。

Oracle Interconnect for Azureの詳細は、次のリソースを参照してください。: