全部產品
Search
文件中心

Container Service for Kubernetes:servicemesh-operator

更新時間:Nov 15, 2025

servicemesh-operator

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

適用範圍

ACK叢集版本需為1.21或更高。

使用說明

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

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

  • 建立servicemesh.istio.alibabacloud.comCRD。

  • 自動建立一個名為 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:
        kubectl.kubernetes.io/last-applied-configuration: |
          {"apiVersion":"istio.alibabacloud.com/v1beta1","kind":"ServiceMesh","metadata":{"annotations":{},"name":"mesh"},"spec":{"clusterSpec":"Standard"}}
      creationTimestamp: "2025-08-08T03:38:15Z"
      generation: 1
      name: mesh
      resourceVersion: "18972175"
      uid: 440b90f4-c894-4dc1-8b37-c025690171c9
    spec:
      clusterSpec: Standard
    status:
      conditions:
      - lastTransitionTime: "2025-08-08T03:38:16Z"
        status: "True"
        type: PreChecked
      - lastTransitionTime: "2025-08-08T03:38:18Z"
        status: "True"
        type: ServiceMeshCreated
      - lastTransitionTime: "2025-08-08T03:38:19Z"
        status: "True"
        type: ServiceMeshReady
      - lastTransitionTime: "2025-08-08T03:38:21Z"
        status: "True"
        type: ClusterAdded
      phase: Succeeded
      serviceMeshId: cb3a33d70d3344ea58170494c1b12a6fa
      serviceMeshName: mesh-for-c9ce5e565cb984d709326a29ccb80d70a

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:
        kubectl.kubernetes.io/last-applied-configuration: |
          {"apiVersion":"istio.alibabacloud.com/v1beta1","kind":"ServiceMesh","metadata":{"annotations":{},"name":"mesh"},"spec":{"clusterSpec":"Standard"}}
      creationTimestamp: "2025-08-08T03:38:15Z"
      generation: 1
      name: mesh
      resourceVersion: "18972175"
      uid: 440b90f4-c894-4dc1-8b37-c025690171c9
    spec:
      clusterSpec: Standard
    status:
      conditions:
      - lastTransitionTime: "2025-08-08T03:38:16Z"
        status: "True"
        type: PreChecked
      - lastTransitionTime: "2025-08-08T03:38:18Z"
        status: "True"
        type: ServiceMeshCreated
      - lastTransitionTime: "2025-08-08T03:38:19Z"
        status: "True"
        type: ServiceMeshReady
      - lastTransitionTime: "2025-08-08T03:38:21Z"
        status: "True"
        type: ClusterAdded
      phase: Succeeded
      serviceMeshId: cb3a33d70d3344ea58170494c1b12a6fa
      serviceMeshName: mesh-for-c9ce5e565cb984d709326a29ccb80d70a

配額與限制

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

ServiceMesh CRD 說明

ServiceMesh 資源定義了在 Kubernetes 叢集中聲明和管理一個 ASM 服務網格的期望狀態和實際狀態。

Spec(.spec)

欄位

類型

描述

預設值

必填

id

string

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

N/A

name

string

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

N/A

clusterSpec

string

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

  • Standard(標準版)。

  • Enterprise(企業版)。

  • Ultimate(旗艦版)。

Standard

Status(.status)

欄位

類型

描述

serviceMeshName

string

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

serviceMeshId

string

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

phase

string

描述服務網格當前所處的生命週期階段。可能的值包括:

  • Initializing(初始化中)。

  • Ready(網格就緒)。

  • Succeeded(成功)。

  • Failed(失敗)。

conditions

[]ServiceMeshCondition

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

retriedAt

metav1.Time

記錄了當協調過程遇到可重試的錯誤時,最後一次重試的時間戳記。

ServiceMeshCondition

欄位

類型

描述

lastTransitionTime

metav1.Time

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

status

string

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

  • True(條件成立)。

  • False(條件不成立)。

  • Unknown(狀態未知)。

type

string

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

  • PreChecked(預檢查完成)。

  • ServiceMeshCreated(服務網格執行個體已建立)。

  • ServiceMeshReady(服務網格執行個體已就緒)。

  • ClusterAdded(叢集已添加到網格)。

message

string

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