全部產品
Search
文件中心

API Gateway:通過HTTP API訪問Container Service中的應用

更新時間:Jan 23, 2025

當您的Container Service中的應用需要通過外部存取時,可以通過建立HTTP API並配置路由,實現應用的互連網訪問。本文以Container ServiceACK為例,介紹如何通過雲原生API Gateway實現微服務的外部存取。

前提條件

  1. 已建立容器叢集,關於建立叢集的具體操作,請參見建立ACK託管叢集

  2. 部署微服務demo至Container ServiceACK。

    部署微服務demo

    登入Container Service管理主控台,在左側導覽列選擇叢集

    叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇工作負載 > 無狀態

    在無狀態頁面右上方單擊使用YAML建立資源。使用如下YAML部署一個名為httpbinDeployment,以及一個名為httpbinService

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: httpbin
      namespace: default
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: httpbin
      template:
        metadata:
          labels:
            app: httpbin
            version: v1
        spec:
          containers:
            - image: registry.cn-hangzhou.aliyuncs.com/mse-ingress/go-httpbin
              args:
                - "--version=v1"
              imagePullPolicy: Always
              name: httpbin
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: httpbin
      namespace: default
    spec:
      ports:
        - port: 8080
          protocol: TCP
      selector:
        app: httpbin

    在無狀態頁面單擊所建立的httpbin,如下圖所示的狀態表示應用部署成功。

    image

方案概覽

通過建立雲原生API Gateway執行個體,將雲原生API Gateway與需要暴露的Container Service進行關聯,在網關中設定API的路由規則,確保請求能夠正確地路由到對應的Container Service,配置完成後,用戶端即可通過API Gateway訪問容器中的應用。

  1. 建立雲原生API Gateway執行個體

    根據已有微服務環境,建立雲原生API Gateway執行個體。

  2. 建立HTTP API

    為網關執行個體建立HTTP API。

  3. 建立路由

    為該服務添加路由策略並發布。

    1. 建立服務來源。

      在雲原生API Gateway中添加服務來源,根據實際情況選擇Container ServiceACK。

    2. 添加服務。

      雲原生API Gateway能夠根據Container ServiceACK來源擷取服務的命名空間,將已有的服務添加到雲原生API Gateway,作為備選服務。

  4. 路由調試

    測試微服務路由功能。

步驟一:建立雲原生API Gateway執行個體

  1. 登入雲原生API Gateway控制台。如果您是首次使用雲原生API Gateway,您需要進行如下操作:

    說明

    首次訪問雲原生API Gateway時,系統將自動提示授權建立服務關聯角色。

    1. 在頁面中單擊立即授權,並在彈出的提示框中單擊確定完成建立。

    2. 單擊立即體驗雲原生API Gateway進入控制台。

  2. 在左側導覽列,選擇執行個體,並在頂部功能表列選擇地區,單擊建立執行個體

    重要

    雲原生API Gateway的地區與Container ServiceACK所在地區保持一致。

  3. 在雲原生API Gateway購買頁面中選擇相關配置,然後單擊立即購買

    image

  4. 確認訂單頁面中,勾選服務合約我已閱讀並同意雲原生API Gateway(隨用隨付)服務合約,單擊立即開通

    說明

    網關執行個體建立過程可能需要2~3分鐘時間,請您耐心等待。

  5. 單擊管理主控台,並選擇返回執行個體頁面,查看建立的網關資訊和狀態。

    當網關資訊和建立時一致,且狀態運行中,則表示網關建立成功。image

步驟二:建立HTTP API

  1. 在左側導覽列的API頁面中,單擊建立API

  2. 單擊HTTP API卡片中的建立按鈕,在建立HTTP API面板中配置API名稱進行建立。

步驟三:建立路由

  1. 在左側導覽列的API頁面中,單擊目標API名稱。

    單擊建立路由,在建立路由面板,配置相關參數。

配置路由基本資料

image

  • 網域名稱:您可以直接單擊右側的添加網域名稱,在添加網域名稱面板中建立。

  • 路徑(Path):匹配Path參數以/開頭的HTTP請求。

所屬執行個體&後端服務

說明

在建立網關執行個體時,系統將自動建立預設環境關聯相關執行個體。

  1. 單擊所屬執行個體請選擇步驟一建立好的執行個體。

    image

  2. 使用情境:使用情境列表中選擇單服務

  3. 後端服務配置項中的服務名稱列表中單擊關聯服務image

  4. 建立服務來源與服務。

    1. 選擇來源類型Container Service

    2. 單擊添加來源,選擇前提條件中建立的叢集。

    3. 服務列表中選擇服務httpbin,單擊確定

      image

    4. 在後端服務配置項中的服務名稱下拉式清單中選擇上一步中建立的服務。

      image

  5. 單擊儲存並發布

步驟四:路由調試

  1. 在左側導覽列的API頁面中,單擊目標API名稱。

  2. 在路由列表中,單擊目標路由httpbin-demo操作列下的調試,進入調試頁面。

  3. 介面參數輸入version,單擊發送,可看到服務介面的返回結果如下所示。

    image

相關文檔