APIG Ingress雲端式原生API Gateway滿足將叢集內部服務暴露給使用者訪問的需求。
出於安全考量,APIG Ingress禁止暴露kube-system命名空間下的服務。
適用範圍
安裝APIG Controller
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
登入容器計算服務控制台。
在叢集列表頁面,單擊目的地組群名稱,進入該叢集的管理頁面。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,單擊組件管理。
在組件管理頁面的搜尋方塊中輸入
APIG搜尋,在APIG Controller組件卡片中單擊安裝。在安裝組件 APIG Controller對話方塊中進行參數配置,然後單擊確認。
建立:
將自動建立一個規格為 apig.small.x1 的隨用隨付的雲原生 API Gateway執行個體。
重要選擇建立時,組件會預設建立一個新的ApigConfig資源和雲原生API Gateway執行個體,ApigConfig的生命週期與雲原生API Gateway執行個體綁定。刪除ApigConfig資源會串聯刪除對應的雲原生API Gateway執行個體,請勿隨意刪除ApigConfig資源。
如果叢集中已經存在了名稱為apig的IngressClass資源,則不會自動建立ApigConfig資源和雲原生API Gateway執行個體。
使用已有:
選擇展示列表中,與容器叢集處於同一VPC下,且未被其他叢集關聯的隨用隨付的雲原生API Gateway執行個體。
如果組件安裝出現前置檢查失敗,請為APIG Controller授權。
組件安裝完成後,在叢集中可以看到名稱為
apig-controller-pro-{clusterid}的ApigConfig資源。登入雲原生API Gateway控制台,在對應的地區下可以看到名稱為apig-controller-pro-{clusterid}的雲原生網關執行個體。
建立樣本應用
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇。
在無狀態頁面,單擊使用YAML建立資源。例如,使用如下YAML樣本部署一個名為
httpbin的Deployment,以及一個名為httpbin的Service。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 type: ClusterIP在彈窗提示中單擊查看,確認Pod狀態為
Running。
配置APIG Ingress
在路由頁面,單擊建立 Ingress。
在建立 Ingress對話方塊中,選擇網關類型為APIG Ingress,路由為首碼匹配,路徑為
/,轉寄請求到服務httpbin,然後單擊確定。在路由頁面端點列下查看建立Ingress的端點資訊。通過瀏覽器、CMD命令或者其他命令列工具訪問
存取點網域名稱/version或網關公網IP/version測試服務。返回內容version: v1表示Ingress配置成功。登入雲原生API Gateway控制台,在對應的雲原生API Gateway執行個體中看到一個名稱中包含
{gwid}-ingress的API。
相關文檔
關於APIG Ingress的介紹和工作原理請參閱APIG Ingress管理。