全部產品
Search
文件中心

Alibaba Cloud Service Mesh:在代碼中使用SDK操作Istio資源

更新時間:Jun 30, 2024

定製資源(Custom Resource)是對Kubernetes API的擴充,Istio在K8s原生資源的基礎上增加了VirtualService、Gateway等定製資源。您可以整合對應語言的SDK Client,在代碼中操作Istio定製資源。本文介紹如何在代碼中使用SDK操作Istio資源。

前提條件

建立虛擬服務和網關規則的YAML檔案

  1. 使用以下內容,建立virtualService.yaml檔案。
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: bookinfo
    spec:
      hosts:
      - "*"
      gateways:
      - bookinfo-gateway
      http:
      - match:
        - uri:
            exact: /productpage
        - uri:
            prefix: /static
        - uri:
            exact: /login
        - uri:
            exact: /logout
        - uri:
            prefix: /api/v1/products
        route:
        - destination:
            host: productpage
            port:
              number: 9080
  2. 使用以下內容,建立gateway.yaml檔案。
    apiVersion: networking.istio.io/v1alpha3
    kind: Gateway
    metadata:
      name: bookinfo-gateway
    spec:
      selector:
        istio: ingressgateway
      servers:
      - port:
          number: 80
          name: http
          protocol: HTTP
        hosts:
        - "*"

操作Istio資源

建立完虛擬服務和網關規則後,您可以整合對應語言的SDK Client,在代碼中操作Istio資源。

語言參考文檔
Java使用Java SDK操作Istio資源
Go使用Go SDK操作Istio資源