全部產品
Search
文件中心

Container Service for Kubernetes:servicemesh-operator

更新時間:Mar 07, 2026

servicemesh-operator 組件用於在 ACK 叢集中簡化服務網格(ASM)的部署、升級和組態管理流程,從而快速啟用ASM所提供的流量管理、安全和可觀測性等強大功能。

適用範圍

  • ACK 叢集版本需為 1.28 或更高。

  • 已開通 ASM 產品。

使用說明

在ACK叢集中成功安裝 servicemesh-operator 組件後,系統將自動完成以下部署:

  • 在叢集中部署一個名為 servicemesh-operator 的控制器。該控制器運行在叢集的控制面,負責監聽和處理服務網格(ServiceMesh)相關的自訂資源。

  • 建立CRD:servicemesh.istio.alibabacloud.com。

  • 自動建立一個名為 mesh 的 ServiceMesh 自訂資源(CR)。

servicemesh-operator 控制器會建立一個名為mesh-for-${叢集ID}的標準版 ASM 執行個體,並在建立完成後將 ACK 叢集加入該執行個體。

可通過查詢 ServiceMesh 自訂資源來即時監控 ASM 執行個體的建立進度和目前狀態。

控制台

  1. 在ACK叢集列表頁面,單擊目的地組群名稱,在叢集詳情頁左側導覽列,選擇工作負載 > 自訂資源。

  2. 在自訂資源頁面,搜尋ServiceMesh,在下方列表單擊istio.alibabacloud.com下的ServiceMesh名稱。然後單擊其右側操作列下的YAML 編輯。

    YAML樣本如下:

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: ServiceMesh
    metadata:
      annotations:
        operator.istio.alibabacloud.com/deletion-policy: Retain
      creationTimestamp: "2026-01-09T02:25:12Z"
      finalizers:
      - servicemeshoperator.finalizers.alibabacloud.com
      generation: 2
      name: asm
      resourceVersion: "36619976"
      uid: 94967e01-fc25-477e-9da9-4df42cede8ba
    spec:
      clusterSpec: Enterprise
    status:
      clusterSpec: Enterprise
      conditions:
      - lastTransitionTime: "2026-01-09T02:25:19Z"
        message: ""
        observedGeneration: 2
        reason: Passed
        status: "True"
        type: PreChecked
      - lastTransitionTime: "2026-01-09T02:25:32Z"
        message: ""
        observedGeneration: 2
        reason: Available
        status: "True"
        type: ServiceMeshAvailable
      - lastTransitionTime: "2026-01-09T02:25:32Z"
        message: ""
        observedGeneration: 2
        reason: Succeeded
        status: "True"
        type: ClusterEnrolled
      - lastTransitionTime: "2026-01-09T02:25:38Z"
        message: ""
        observedGeneration: 2
        reason: Succeeded
        status: "True"
        type: MeshConfigApplied
      serviceMeshId: c6490deb776cc458c82c4c22a69315bae
      serviceMeshName: mesh-for-cf17b23e9fa6b4fb081c58a33964cd3dc

kubectl

  1. 擷取叢集KubeConfig並通過kubectl工具串連叢集。

  2. 查看ServiceMesh自訂資源YAML。

    kubectl get servicemesh mesh -n istio-system -o yaml

    預期輸出:

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: ServiceMesh
    metadata:
      annotations:
        operator.istio.alibabacloud.com/deletion-policy: Retain
      creationTimestamp: "2026-01-09T02:25:12Z"
      finalizers:
      - servicemeshoperator.finalizers.alibabacloud.com
      generation: 2
      name: asm
      resourceVersion: "36619976"
      uid: 94967e01-fc25-477e-9da9-4df42cede8ba
    spec:
      clusterSpec: Enterprise
    status:
      clusterSpec: Enterprise
      conditions:
      - lastTransitionTime: "2026-01-09T02:25:19Z"
        message: ""
        observedGeneration: 2
        reason: Passed
        status: "True"
        type: PreChecked
      - lastTransitionTime: "2026-01-09T02:25:32Z"
        message: ""
        observedGeneration: 2
        reason: Available
        status: "True"
        type: ServiceMeshAvailable
      - lastTransitionTime: "2026-01-09T02:25:32Z"
        message: ""
        observedGeneration: 2
        reason: Succeeded
        status: "True"
        type: ClusterEnrolled
      - lastTransitionTime: "2026-01-09T02:25:38Z"
        message: ""
        observedGeneration: 2
        reason: Succeeded
        status: "True"
        type: MeshConfigApplied
      serviceMeshId: c6490deb776cc458c82c4c22a69315bae
      serviceMeshName: mesh-for-cf17b23e9fa6b4fb081c58a33964cd3dc

配額與限制

  • 目前的版本的 servicemesh-operator 僅支援 ASM 執行個體與 ACK 叢集的一對一綁定。如需更新 ASM執行個體,請前往 ASM 控制台 操作。

  • 刪除 ServiceMesh 資源時,將執行從ASM中移除此ACK叢集的操作,如果 ACK 叢集中有使用的 ASM 網關或 Sidecar 代理等資源,移除操作將失敗。可通過 ServiceMesh 資源的 Status 查看目前狀態。

  • 如果 ServiceMesh 資源套件含 operator.istio.alibabacloud.com/deletion-policy: Delete 註解,則在刪除 ACK 叢集後同步刪除 ASM執行個體,否則將保留ASM執行個體 。

  • 本組件預設建立標準版 ASM,免費但無 SLA 承諾,支援的最大叢集規模為 50 個Pod。標準版僅在中國內地地區支援,其他地區或國家建立標準版將失敗。可通過修改 ServiceMesh 資源的 .spec.clusterSpec 為 Enterprise 或 Ultimate 來建立或升級規格。更多關於版本與收費資訊參見 計費說明 。

ServiceMesh CRD 說明

ServiceMesh 資源定義了在 Kubernetes 叢集中聲明和管理一個 ASM 服務網格的期望狀態和實際狀態。其中,Spec 中的一些欄位是可變的,修改後將觸發網格對應屬性的更改。

Spec(.spec)

欄位

類型

描述

預設值

必填

可變

id

string

服務網格的 ID。如果未指定,系統將產生一個隨機 ID。使用者可以指定此 ID 來建立一個新的服務網格,或將當前叢集加入到一個已存在的網格中。此欄位的優先順序高於 name欄位。

N/A

否

否

name

string

服務網格的名稱。如果未指定,系統將產生一個格式為mesh-for-${叢集ID}的名稱。使用者可以指定此名稱來建立一個新的服務網格,或將當前叢集加入到一個已存在的網格中。

N/A

否

是

clusterSpec

string

建立的服務網格執行個體的初始規格。它定義了網格執行個體的功能和效能等級。有效值為:

  • Standard(標準版)。

  • Enterprise(企業版)。

  • Ultimate(旗艦版)。

  • 中國內地地區為 Standard

  • 其他地區或國家為 Enterprise

否

是

Status(.status)

欄位

類型

描述

serviceMeshName

string

由控制器建立的、實際的服務網格的唯一名稱。該欄位在首次建立請求發送前被記錄,並且在整個協調過程中不可變,以防止建立重複的服務網格執行個體。

serviceMeshId

string

實際建立成功的服務網格的 ID。該值在服務網格執行個體成功建立後從雲端擷取。

clusterSpec

string

建立的服務網格執行個體的規格。

conditions

[]ServiceMeshCondition

一個列表,包含了服務網格在協調過程中經歷的一系列條件及其狀態。它詳細記錄了資源從建立到就緒的各個關鍵步驟。

ServiceMeshCondition

欄位

類型

描述

lastTransitionTime

metav1.Time

該條件狀態最後一次發生變化的時間戳記。

status

string

條件的目前狀態。有效值為:

  • True(條件成立)。

  • False(條件不成立)。

  • Unknown(狀態未知)。

type

string

條件的類型,代表一個具體的協調步驟。例如:

  • PreChecked(預檢查完成)。

  • ServiceMeshAvailable(服務網格可用)。

  • ClusterEnrolled(叢集已加入)。

  • MeshConfigApplied(網格配置已應用)。

  • Retried(重試狀態)。

  • ServiceMeshDeleted(服務網格已刪除)。

message

string

關於該條件狀態的資訊描述,通常用於在發生錯誤或處於某個特定狀態時提供額外上下文。

reason

string

該條件狀態的原因,例如:

  • Reconciling(更新中)。

  • Succeeded(成功)。

  • Failed(失敗)。

  • Available(可用)。

  • Unavailable(不可用)。

  • Passed(通過)。

  • WaitSteady(等待網格更新完成)。

  • Retried(已重試)。

特殊註解

ServiceMesh 資源支援一些特殊註解用來進行配置,當前包含:

重試

通過 operator.istio.alibabacloud.com/retry-at 註解可觸發協調過程的重試。當協調過程中遇到錯誤時,可以設定此註解來觸發重新嘗試操作。

kubectl annotate servicemesh mesh operator.istio.alibabacloud.com/retry-at=""

執行該操作後,將自動發起重試操作。

刪除策略

通過 operator.istio.alibabacloud.com/deletion-policy 註解可配置刪除策略:

  • Retain(預設值): 當 ServiceMesh 資源被刪除時,保留阿里雲中的 ASM 執行個體。

  • Delete: 當 ServiceMesh 資源被刪除時,從阿里雲中刪除 ASM 執行個體。

apiVersion: istio.alibabacloud.com/v1beta1
kind: ServiceMesh
metadata:
  name: advanced-mesh
  annotations:
    operator.istio.alibabacloud.com/deletion-policy: Delete  # 或 Retain
spec:
  name: advanced-service-mesh
  clusterSpec: Ultimate