MSE マイクロサービスガバナンスを使用すると、単一のガバナンスセンターから、アプリケーションを接続し、サービスをクエリし、トラフィックガバナンスルールを適用し、エンドツーエンドカナリアリリースを実行し、コンポーネント設定を管理できます。
アプリケーションの接続
MSE マイクロサービスガバナンスは複数の接続方法をサポートしています。適切な方法は、アプリケーションの実行場所と構築方法によって異なります。
マイクロサービス名前空間の管理
マイクロサービス名前空間は、マイクロサービスとその依存関係をグループ化することで、グループごとに個別のセキュリティポリシー、アクセス制御、リソース制限を割り当てることができます。詳細については、「Manage microservice namespaces」をご参照ください。
ACK および ACS クラスター内の Java マイクロサービスアプリケーションの MSE ガバナンスセンターへの接続
Container Service for Kubernetes (ACK) および Container Compute Service (ACS) クラスターにデプロイされた Spring Cloud アプリケーションと Dubbo アプリケーションを、MSE ガバナンスセンターに接続します。詳細については、「Connect Java microservice applications in ACK and ACS clusters to the MSE governance center」をご参照ください。
ECS インスタンス上のマイクロサービスアプリケーションの MSE ガバナンスセンターへの接続
Elastic Compute Service (ECS) インスタンスおよび Alibaba Cloud 以外の仮想マシン (VM) にデプロイされたアプリケーションを、MSE ガバナンスセンターに接続します。詳細については、「Connect microservice applications on ECS instances to the MSE governance center」をご参照ください。
オープンソース Kubernetes 環境内のアプリケーションの MSE ガバナンスセンターへの接続
オープンソース Kubernetes 環境で実行される Spring Cloud アプリケーションと Dubbo アプリケーションを接続すると、ビジネスコードを変更することなく、グレースフルシャットダウン、外れ値の削除、サービスクエリ、サービス認証、サービステスト、カナリアリリースなどのガバナンス機能を利用できます。詳細については、「Connect applications in open source Kubernetes environments to the MSE governance center」をご参照ください。
MSE マイクロサービスガバナンスへのカスタムインターフェイスの追加
Java SDK と Java エージェントを使用して Java アプリケーションを計装し、MSE が自動検出できないインターフェイスを接続します。詳細については、「Add custom interfaces to Microservices Governance」をご参照ください。
Alibaba Cloud 以外の VPC から MSE マイクロサービスガバナンスに接続するためのネットワーク設定
アプリケーションが Alibaba Cloud 以外の仮想プライベートクラウド (VPC) で実行される場合にネットワーク接続を設定します。詳細については、「Network configuration for connecting to Microservices Governance from a non-Alibaba Cloud VPC」をご参照ください。
サービスクエリ
アプリケーションを接続した後、サービスクエリ機能を使用して、サービスリスト、呼び出しの詳細、コントラクト定義を確認します。
サービスのクエリ
接続済みの Spring Cloud アプリケーションまたは Dubbo アプリケーションのサービスリストと詳細を、MSE コンソールで直接表示します。詳細については、「Query services」をご参照ください。
サービスコントラクトのクエリ
サービスコントラクトは、マイクロサービスのインターフェイスと動作を記述します。入力、出力、エラーハンドリングの動作など、プロバイダーとコンシューマー間の通信ルールを定義します。コントラクトを確認することで、コンシューマーはサービスを正しく理解し、統合できます。詳細については、「Query service contracts」をご参照ください。
アプリケーションガバナンス
接続済みのアプリケーションに対して、グレースフルスタートアップとシャットダウン、システム保護、トラフィックスロットリング、タグベースルーティング、メッセージングのカナリアリリースなどのトラフィックガバナンスルールを適用します。
アプリケーション概要
MSE コンソールの [Application overview] ページで、接続済みアプリケーションの QPS データ、トップリスト、その他のリアルタイムメトリクスを表示します。詳細については、「Application overview」をご参照ください。
インターフェイスの詳細
[Interface details] ページには、インターフェイスタイプ (Web サービス、RPC サービスなど) ごとにインターフェイス単位の統計情報 (QPS、応答時間 (RT)、同時実行数) が表示されます。詳細については、「Interface details」をご参照ください。
ノードの詳細
アプリケーションの各ノードの基本情報 (QPS 統計、タグ、ステータスなど) を表示します。詳細については、「Node details」をご参照ください。
トラフィックガバナンス
高い同時実行下でマイクロサービスインスタンス間の負荷分散とフォールトトレランスを維持するために、ピークロードシフティングとトラフィックスロットリングを使用します。詳細については、「Traffic governance」をご参照ください。
エンドツーエンドカナリアリリース
カナリアリリースでは、安定版が残りのトラフィックを処理し続ける一方で、制御された割合のトラフィックをサービスの新バージョンにルーティングします。MSE はこれをサービス呼び出しチェーン全体に拡張します。つまり、ゲートウェイで適用したトラフィックタグが、すべての下流マイクロサービスへ自動的に伝播するため、本番トラフィックに影響を与えることなく、新しいビルドをエンドツーエンドで検証できます。
MSE クラウドネイティブゲートウェイに基づくエンドツーエンドカナリアリリースの実装
MSE クラウドネイティブゲートウェイをエントリポイントとして使用し、カナリアトラフィックを接続済みのバックエンドサービスにルーティングします。詳細については、「Implement an end-to-end canary release based on an MSE cloud-native gateway」をご参照ください。
クラウドネイティブ API ゲートウェイに基づくエンドツーエンドカナリアリリースの実装
ACK クラスターにデプロイされているか MSE Nacos に登録されているバックエンドサービスに対し、クラウドネイティブ API ゲートウェイを使用して、カナリアトラフィックをエンドツーエンドでルーティングします。
MSE Ingress に基づくエンドツーエンドカナリアリリース
MSE Ingress ゲートウェイに組み込まれたトラフィック管理を使用して、ビジネスコードを変更することなくエンドツーエンドカナリアリリースを実装します。詳細については、「End-to-end canary release based on an MSE Ingress」をご参照ください。
セルフマネージド Spring Cloud Gateway または Zuul ゲートウェイに基づくエンドツーエンドカナリアリリースの実装
セルフマネージド Spring Cloud Gateway または Zuul ゲートウェイでルーティングルールを設定し、リクエストの一部を検証用のカナリア環境に送信します。詳細については、「Implement an end-to-end canary release based on a self-managed Spring Cloud Gateway or Zuul gateway」をご参照ください。
Kruise Rollouts を使用した MSE ベースのエンドツーエンドカナリアリリースの実装
Kruise Rollouts の段階的リリースポリシー (カナリアリリースおよびブルーグリーンデプロイメント) を MSE マイクロサービスガバナンスと組み合わせることで、安定性を維持しながら、サービス呼び出しチェーン全体で新しいアプリケーションバージョンをロールアウトできます。詳細については、「Implement an MSE-based end-to-end canary release with Kruise Rollouts」をご参照ください。
MSE エンドツーエンドカナリアリリースの非同期タスクサポート
スキャンパッケージを追加して、カスタム非同期タスクを通じてトラフィックタグを伝播させ、カナリアリリースの適用範囲を非同期ワークロードに拡張します。詳細については、「Asynchronous task support for MSE end-to-end canary release」をご参照ください。
システム設定
アップグレードや無効化など、MSE マイクロサービスガバナンスのコンポーネント設定を管理します。
MSE マイクロサービスガバナンスコンポーネントのアップグレード
旧コンポーネント ack-mse-pilot は ack-onepilot に置き換えられました。ガバナンス機能と更新を継続して受け取るには、ack-onepilot にアップグレードしてください。詳細については、「Install and upgrade the MSE Microservices Governance component」をご参照ください。
MSE マイクロサービスガバナンスの無効化
アプリケーションで機能が不要になった場合は、MSE マイクロサービスガバナンスを無効化してください。詳細については、「Disable MSE Microservices Governance」をご参照ください。