全部產品
Search
文件中心

Microservices Engine:ACK和ACS微服務應用接入MSE治理中心(Java版)

更新時間:Jul 30, 2025

您可以將部署在Container Service for KubernetesContainer Compute Service中的Spring Cloud和Dubbo等微服務應用接入MSE治理中心,使用MSE提供的一系列服務治理能力,大幅提升線上微服務的穩定性和開發效率,本文介紹如何將ACK和ACS微服務應用接入MSE治理中心。

前提條件

重要
  • 若您的專案中使用了開源的Sentinel組件同時也使用了com.alibaba.cloud.sentinel.feign.SentinelFeignAutoConfiguration,會導致接入MSE治理中心失敗。

  • 掛載MSE Java探針時JVM的堆記憶體配置需要大於 256MB。

  • 請確保ACK叢集具有MSE資源存取權限。

    叢集存在ARMS Addon Token時,MSE會進行免密授權。Kubernetes託管版叢集預設存在ARMS Addon Token,但對於部分早期建立的Kubernetes託管版叢集,可能會存在沒有ARMS Addon Token的情況,因此,對於早期建立的Kubernetes託管版叢集,建議首先檢查ARMS Addon Token是否存在。

    檢查ACK託管叢集中是否存在ARMS Addon Token的方法如下所示:

    1. 登入Container Service管理主控台,在叢集列表頁面,單擊目的地組群名稱進入叢集詳情頁。

    2. 在左側導覽列選擇組態管理 > 保密字典,然後在頂部選擇命名空間kube-system,查看addon.arms.token是否存在。若不存在,需進行手動授權。

接入流程

說明

關於接入方式選擇的建議:

  • 如果您的某個命名空間內的全部應用或者大部分應用需要接入MSE治理中心,建議使用情境一:為ACK和ACS命名空間中的應用開啟MSE微服務治理的方式接入。命名空間內不需要接入的應用需要設定標籤:spec.template.labels.msePilotAutoEnable: "off"

  • 如果您的某個命名空間內少部分應用需要接入MSE治理中心,建議使用情境二:為單個應用開啟MSE微服務治理的方式接入。

情境一:為ACK和ACS命名空間中的應用開啟MSE微服務治理

為對應命名空間下開啟MSE微服務治理後,在該命名空間下新建立的應用和重新部署現有的應用,該命名空間下的Pod都會接入到MSE微服務治理中,您無需再手動逐個接入。關於建立應用可參見建立無狀態工作負載Deployment

  1. 登入MSE治理中心控制台,並在頂部功能表列選擇地區。

  2. 在左側導覽列,選擇治理中心 > 应用治理

  3. 应用列表頁面,單擊ACK应用接入

  4. ACK应用接入對話方塊中,進行配置,配置完成後,單擊确定

    image

    配置項

    說明

    集群类型

    選擇ACK集群ACK Serverless集群ACS集群

    說明

    如果您尚未授權Container Service調用微服務引擎,則需要單擊請授權進行授權。

    集群名称/ID

    選擇接入MSE微服務治理的集群名称/ID,可通過關鍵詞搜尋。

    ack-onepilot

    顯示ack-onepilot接入狀態,關於ack-onepilot組件介紹和升級MSE微服務治理組件可參見ack-onepilot組件安裝和升級MSE微服務治理組件

    • 如果您未安裝ack-onepilot,以ACK叢集為例,選擇後系統將自動開始安裝,並顯示“安裝過程大概需要1分鐘,請稍後”。

      如果您使用子帳號接入,提示沒有許可權使用時,您可以登入Container Service管理主控台進入目的地組群,然後單擊組件管理,找到ack-onepilot並單擊安裝

    • 如果您已安裝ack-onepilot,介面會顯示“已安裝+ack-onepilot版本號碼”,例如已安裝4.2.0版本。

    說明
    • 該步驟接入的組件為ack-onepilot,您可以登入Container Service管理主控台進入目的地組群,然後單擊營運管理 > 組件管理查看詳情。

    • ack-onepilot安裝後會自動注入探針,可能會導致應用啟動耗時增加(10s內)。

    • 通過命名空間方式接入,如果目的地組群所在的Region不在以下範圍內,請確保叢集能夠訪問公網且能夠連通acm.aliyun.com:8080:青島、杭州、北京、上海、上海-金融雲、深圳、中國香港、新加坡、法蘭克福、雪梨、矽谷、維吉尼亞。

    接入类型

    選擇命名空间接入

    容器集群命名空间

    選擇容器集群命名空间

    治理命名空间

    選擇治理命名空间

補充說明:

  • 當您將ACK/ACS叢集中的應用接入MSE治理中心後,治理中心控制台預設會以應用的Deployment名稱作為顯示名稱。若需自訂應用程式名稱,可通過修改對應已部署應用的YAML配置實現名稱變更。

    spec:
      template:
        metadata:
          labels:
            mseNamespace: default # 您的應用所在的MSE微服務空間,不填預設為default。
            msePilotCreateAppName: "your-deployment-name" # 替換為您實際使用的應用程式名稱。
  • 如果您想單獨為某個應用關閉微服務治理,可以在已部署應用的YAML配置中添加參數msePilotAutoEnable並設定為off

    spec:
      template:
        metadata:
          labels:
            msePilotAutoEnable: "off" # 這個欄位的"off"必須加上雙引號或者單引號。

情境二:為單個應用開啟MSE微服務治理

如果您的命名空間下只有少量應用需要接入MSE微服務治理,您可以逐個應用接入MSE微服務治理。

  1. 登入MSE治理中心控制台,並在頂部功能表列選擇地區。

  2. 在左側導覽列,選擇治理中心 > 应用治理

  3. 应用列表頁面,單擊ACK应用接入

  4. ACK应用接入對話方塊中,進行配置,配置完成後,單擊确定

    image

    配置項

    說明

    集群类型

    選擇ACK集群ACK Serverless集群ACS集群

    說明

    如果您尚未授權Container Service調用微服務引擎,則需要單擊請授權進行授權。

    集群名称/ID

    選擇接入MSE微服務治理的集群名称/ID,可通過關鍵詞搜尋。

    ack-onepilot

    顯示ack-onepilot接入狀態,關於ack-onepilot組件介紹和升級MSE微服務治理組件可參見ack-onepilot組件安裝和升級MSE微服務治理組件

    • 如果您未安裝ack-onepilot,以ACK叢集為例,選擇後系統將自動開始安裝,並顯示“安裝過程大概需要1分鐘,請稍後”。

      如果您使用子帳號接入,提示沒有許可權使用時,您可以登入Container Service管理主控台進入目的地組群,然後單擊組件管理,找到ack-onepilot並單擊安裝

    • 如果您已安裝ack-onepilot,介面會顯示“已安裝+ack-onepilot版本號碼”,例如已安裝4.2.0版本。

    說明
    • 該步驟接入的組件為ack-onepilot,您可以登入Container Service管理主控台進入目的地組群,然後單擊營運管理 > 組件管理查看詳情。

    • ack-onepilot安裝後會自動注入探針,可能會導致應用啟動耗時增加(10s內)。

    • 通過命名空間方式接入,如果目的地組群所在的Region不在以下範圍內,請確保叢集能夠訪問公網且能夠連通acm.aliyun.com:8080:青島、杭州、北京、上海、上海-金融雲、深圳、中國香港、新加坡、法蘭克福、雪梨、矽谷、維吉尼亞。

    接入类型

    選擇单个应用接入

    接入步骤

    按照接入步驟進行操作。

    Step 1:進入叢集工作負載-無狀態應用頁面,切換到應用的命名空間下

    Step 2:找到所接入的應用,點擊「查看Yaml」

    Step 3:按以下格式編輯Labels,完成後點擊「更新」

    spec:
      template:
        metadata:
          labels:
            # 填寫“on”表示開啟接入,需加上雙引號
            msePilotAutoEnable: "on"
            # 填寫接入到的治理命名空間,值不存在可自動建立
            mseNamespace: default
            # 填寫接入MSE的實際應用程式名稱,需加上雙引號
            msePilotCreateAppName: "your-deployment-name"

結果驗證

完成上述步驟並重啟應用後,部署在Container Service for KubernetesContainer Compute Service中的應用就成功開啟了MSE微服務治理。

  1. 登入MSE治理中心控制台,並在頂部功能表列選擇地區。

  2. 在左側導覽列,選擇治理中心 > 应用治理

  3. 選擇對應的微服務命名空間,即可看到已經成功接入的應用。

後續步驟

應用接入MSE治理中心後,您可以使用MSE治理的全鏈路灰階、無損上下線和配置流控規則功能,詳情可參見15分鐘完成服務治理能力快速體驗(Java版)