Kubernetesクラスターでは、Enterprise Distributed Application Service (EDAS) は、Dubboマイクロサービス指向アプリケーションのエンドツーエンドトラフィック調整機能をサポートしています。エンドツーエンドトラフィック調整機能を使用すると、トラフィック調整環境を簡単に作成し、特定の特性を持つトラフィックを指定されたバージョンのアプリケーションにルーティングできます。
背景情報
EDASでは、Kubernetesクラスターにデプロイされている一部のDubboアプリケーションが特定のバージョンに更新される場合があります。この場合、特定の特性を持つトラフィックが、指定されたバージョンのアプリケーションにルーティングされない可能性があります。これは、アプリケーションがランダムに相互に呼び出しを行うためです。エンドツーエンドトラフィック調整機能を使用すると、独立したランタイム環境であるレーンで、あるバージョンのアプリケーションを他のアプリケーションから分離できます。レーンでトラフィック調整ルールを設定して、ルールに一致するリクエストトラフィックを指定されたバージョンのアプリケーションにルーティングできます。
このセクションでは、eコマースアーキテクチャの注文シナリオでエンドツーエンドトラフィック調整機能を使用する方法について説明します。
顧客が注文すると、トラフィックはイングレスアプリケーションから入ります。イングレスアプリケーションは、マイクロサービスゲートウェイにすることもできます。イングレスアプリケーションはトランザクションセンターを呼び出し、トランザクションセンターは商品センターを呼び出し、商品センターはダウンストリームの在庫センターを呼び出します。
トランザクションセンターと商品センターは両方とも、2つの新しいバージョンV1.0とV2.0で実行されています。カナリアリリース中に2つのバージョンを検証する必要があります。イングレスアプリケーションで特定のトラフィック調整ルールに一致するリクエストトラフィックを新しいバージョンのアプリケーションにルーティングし、残りのすべてのトラフィックを公式バージョンであるオンラインバージョンのアプリケーションにルーティングします。
用語
イングレスアプリケーション
マイクロサービスシステムへのイングレストラフィックのエントリポイント。イングレスアプリケーションは、Spring Cloud GatewayまたはSpring Cloud Netflix Zuulに基づいて構築されたゲートウェイ、あるいはSpring Boot、Spring MVC、またはDubboアプリケーションにすることができます。
レーン
同じバージョンのアプリケーションに対して定義された分離環境。特定のトラフィック調整ルールに一致するトラフィックのみを、レーンでマークされたアプリケーションにルーティングできます。1つのアプリケーションが複数のレーンに属することができます。1つのレーンに複数のアプリケーションを含めることができます。アプリケーションとレーンは多対多の関係にあります。
レーン グループ
レーンのコレクション。レーン グループは、異なるチームまたは異なるシナリオを区別するために使用されます。
制限事項
アプリケーションに対してエンドツーエンドトラフィック調整を設定した後、これらのアプリケーションはカナリアリリースをサポートしなくなります。
Spring Cloud Gatewayに基づいてイングレスゲートウェイを構築する場合は、Spring Cloud Gatewayのバージョンが 2.1.x 以降であることを確認してください。
レーン グループとレーンのクォータは、EDASのエディションによって異なります。次の制限が適用されます。
Standard Edition:すべてのリージョンを合わせて最大 2 つのレーン グループを作成でき、各レーン グループに最大 5 つのレーンを作成できます。
Professional EditionとPlatinum Edition以外のすべてのエディションはStandard Editionです。
Professional Edition:すべてのリージョンを合わせて最大 20 のレーン グループを作成でき、各レーン グループに最大 50 のレーンを作成できます。
Platinum Edition:すべてのリージョンを合わせて最大 20 のレーン グループを作成でき、各レーン グループに最大 50 のレーンを作成できます。
レーン グループとレーンのクォータを自分で増やすことはできません。
クォータの増加が必要な場合は、テクニカルサポートのためにDingTalkグループ(グループ番号:31723701)にご参加ください。