すべてのプロダクト
Search
ドキュメントセンター

Microservices Engine:オープンソース Kubernetes クラスタ内のアプリケーションに対して MSE マイクロサービスガバナンスを有効にする

最終更新日:Apr 14, 2025

マイクロサービスエンジン (MSE) のマイクロサービスガバナンスは、オープンソース Kubernetes クラスタ内の Spring Cloud アプリケーションと Dubbo アプリケーションにマイクロサービスガバナンス機能を提供します。ビジネスコードを変更する必要はありません。マイクロサービスガバナンス機能には、無損失オフライン、外れ値削除、サービスクエリ、サービス認証、サービステスト、カナリアリリースが含まれます。マイクロサービスガバナンス機能は、オンラインマイクロサービスアプリケーションの安定性と開発効率を大幅に向上させるのに役立ちます。このトピックでは、オープンソース Kubernetes クラスタ内のアプリケーションを MSE のマイクロサービスガバナンスに接続する方法について説明します。

前提条件

説明

MSE Java エージェントをマウントするには、Java 仮想マシン (JVM) ヒープメモリのサイズが 256 MB より大きいことを確認してください。

ステップ 1: ack-onepilot コンポーネントをインストールする

  1. 次の wget コマンドを実行して、ack-onepilot インストールパッケージをダウンロードします。

     wget 'https://aliacs-app-catalog.oss-cn-hangzhou.aliyuncs.com/charts-incubator/ack-onepilot-4.0.1.tgz'
  2. 次のコマンドを実行して、インストールパッケージを解凍します。

    tar xvf ack-onepilot-4.0.1.tgz                 
  3. インストールパッケージが解凍されたディレクトリにある ack-onepilot/values.yaml ファイル内の次のパラメータをビジネス要件に基づいて変更します。次に、ack-onepilot/values.yaml ファイルを保存します。

    registry: registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/
    cluster_id: __ACK_CLUSTER_ID__
    accessKey: __ACCESSKEY__
    accessKeySecret: __ACCESSKEY_SECRET__
    uid: "__ACK_UID__"
    region_id: __ACK_REGION_ID__
    • registry: ack-onepilot コンポーネントのイメージアドレスのプレフィックス。__ACK_REGION_ID__ を関連する pilot イメージアドレスに置き換えるだけです。

      • イメージアドレスを別のストレージシステムに転送する場合、転送後にレジストリプレフィックスを変更する必要があります。また、次の 3 つのイメージも転送する必要があります。

        • registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ack-onepilot:4.0.1

        • registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ack-onepilot-init:4.0.1

        • registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ack-onepilot-alpine:3.18

    • cluster_id: Kubernetes クラスタの ID。

      • クラスタがセルフマネージドクラスタであり、Container Service for Kubernetes (ACK) に接続されていない場合は、このパラメータを <uid>-<clusterid> 形式で指定することをお勧めします。uid パラメータは Alibaba Cloud アカウントの ID で、clusterid パラメータはクライアントの一意の ID です。

      • クラスタが ACK クラスタまたは ACK マネージドクラスターの場合、このパラメータの値はクラスタ ID です。

    • accessKey および accessKeySecret: Alibaba Cloud アカウントの AccessKey ID と AccessKey シークレット。Alibaba Cloud アカウントの AccessKey ID と AccessKey シークレットを取得する方法の詳細については、「AccessKey ペアの作成」をご参照ください。

      重要

      RAM ユーザーの AccessKey ID を使用する場合は、RAM ユーザーに AliyunARMSFullAccess ポリシーと AliyunMSEFullAccess ポリシーがアタッチされていることを確認する必要があります。

    • uid: Alibaba Cloud アカウントの ID。Alibaba Cloud アカウントの ID を取得するには、Alibaba Cloud 管理コンソールの右上隅にあるプロフィール画像にポインタを移動します。

    • region_id: アプリケーションに対してマイクロサービスガバナンスを有効にするリージョンの ID。MSE がサポートされているリージョンの詳細については、「サポートされているリージョン」をご参照ください。

  4. 次のコマンドを実行して、ack-onepilot コンポーネントをインストールします。

    重要

    コマンドを実行する前に、~/.kube ディレクトリにある構成ファイルの内容が、マイクロサービスガバナンスにアクセスする必要がある Kubernetes クラスタの構成に置き換えられていることを確認してください。

    helm3 upgrade --install ack-onepilot ack-onepilot --namespace ack-onepilot --create-namespace

ステップ 2: アプリケーションの YAML ファイルを変更する

  1. 次のコマンドを実行して、目的のデプロイメント アプリケーションの構成を表示します。

    ### 指定された Deployment アプリケーションの構成を表示します。
    kubectl get deployment {Deployment アプリケーションの名前} -o yaml 
    説明

    Deployment アプリケーションの名前 がわからない場合は、次のコマンドを実行してすべての Deployment アプリケーションに関する情報を表示します。次に、コマンド出力で構成を表示する Deployment アプリケーションを見つけ、Deployment アプリケーションの構成を表示します。

    ### すべての Deployment アプリケーションの構成を表示します。
    kubectl get deployments --all-namespace                
  2. デプロイメント アプリケーションの YAML ファイルを編集するには、次のコマンドを実行します。

    kubectl edit deployment {Deployment アプリケーションの名前} -o yaml
  3. YAML ファイルで、spec > template > metadata > labels ディレクトリに移動し、次のコンテンツを追加します。

    msePilotAutoEnable: "on" # MSE のマイクロサービスガバナンスを有効にします。
    msePilotCreateAppName: xxx # アプリケーションの名前。
    mseNamespace: default      # アプリケーションが存在する MSE 名前空間。このパラメータを指定しない場合、デフォルトの名前空間が使用されます。
  4. 上記の構成を保存すると、アプリケーションが自動的に再起動し、構成が有効になります。

    2 ~ 5 分後に、アプリケーションが MSE コンソールの [マイクロサービスガバナンス] > [アプリケーションガバナンス] ページに表示され、アプリケーションのデータが報告されている場合、アプリケーションは MSE のマイクロサービスガバナンスに正常に接続されています。

次のステップ

オープンソース Kubernetes クラスタにデプロイされているアプリケーションに対して上記の手順を実行すると、アプリケーションに対して MSE のマイクロサービスガバナンスが有効になります。MSE コンソール にログインし、MSE のマイクロサービスガバナンスを使用して Spring Cloud アプリケーションと Dubbo アプリケーションのサービスガバナンスを実行できます。

ack-onepilot コンポーネントをアンインストールする

MSE のマイクロサービスガバナンスを使用してオープンソース Kubernetes クラスタ内のアプリケーションとサービスを管理する必要がなくなった場合は、ack-onepilot コンポーネントをアンインストールできます。

重要

ack-onepilot コンポーネントは、MSE と Application Real-Time Monitoring Service (ARMS) で共有されます。 ack-onepilot コンポーネントをアンインストールする前に、プロダクトが ARMS に接続されていないことを確認してください。そうでない場合、ack-onepilot コンポーネントがアンインストールされた後に ARMS を使用できなくなります。

  1. 次のコマンドを実行して、ack-onepilot コンポーネントをアンインストールします。

    helm3 uninstall --namespace ack-onepilot ack-onepilot
  2. アプリケーションのポッドを再起動します。