VPC授權連通性測試用於驗證API Gateway執行個體到您授權的VPC中執行個體的網路連通性,有助於將API調試階段由於網路連通問題引發的調用失敗提前暴露。本文將重點介紹VPC授權連通性測試功能,以及如何根據排錯引導解決連通性測試失敗的情況。
1. 概述
VPC授權可以建立一個授權記錄來允許API Gateway訪問您部署在您自己的VPC中的商務服務,建立VPC授權時,您需要準備您自己的VPC的VPC ID、您VPC中對外提供服務的CLB執行個體ID或ECS執行個體ID、以及對外提供服務的連接埠號碼。這三條資料可以唯一確定您的一個商務服務,並授權API Gateway訪問該商務服務,具體可參考使用VPC內資源作為API的後端服務。
2. 連通性測試
進入API Gateway控制台-API管理-VPC授權,根據上述文檔建立VPC授權。在巨集指令清單可以看到連通性測試。點擊連通性測試,選擇您要測試連通性的API Gateway執行個體。 點擊測試,則會發起從您選擇的API Gateway到您的VPC授權中指定的商務服務的網路探測。
2.1. 連通性測試成功
發起測試後,如果API Gateway執行個體到您的VPC授權中的服務的網路是連通的,則您會看到在執行個體下拉框前面出現一個綠色打鉤,表示當前連通性測試成功。
2.2. 連通性測試失敗
當連通性測試失敗時,大部分情況會出現下述提示,表示API Gateway執行個體到您VPC授權中的服務的網路不連通。
2.2.1. 排錯引導
對於上述網路不連通的情況,點擊排錯引導會出現一個問題排查彈窗,其中包含一系列步驟可以引導您進行問題排查。彈窗內容會根據您VPC授權中執行個體ID類型來顯示CLB的排查引導或ECS排查引導,您只需根據提示進行排查即可。
該問題排查過程基本可以分為三步:
1)核對VPC授權資訊的正確性
在建立VPC授權時,需要您填寫 VPC ID、執行個體ID、服務連接埠號碼。這一步就是提示您到對應的雲產品控制台核對一下您填寫的資訊是否正確。
2)檢查ECS執行個體的安全性群組(檢查CLB執行個體的黑白名單)
如果您VPC授權中執行個體為ECS,並且ECS執行個體配置了安全性群組,則需要根據提示到ECS雲產品控制台將API Gateway執行個體的出口地址配置到ECS執行個體的安全性群組的入方向策略中。
如果您VPC授權中執行個體為CLB,並且CLB執行個體配置了白名單存取控制策略,那麼需要將API Gateway執行個體的出口地址配置到對應存取控制策略組的地址條目中。
3)檢查後端服務的啟動狀態
該步驟需要您檢查後端商務服務的運行狀態、健康狀態。如果VPC授權中填寫的執行個體為ECS,則可以檢查ECS伺服器執行個體的健康狀態;如果VPC授權中填寫的執行個體為CLB,則可以檢查CLB執行個體中您配置的監聽的運行狀態和健全狀態檢查狀態是否正常。為了驗證您填寫的連接埠服務的有效性,您可以通過在您的VPC中任意登入一台伺服器,並通過curl命令檢查您配置的ECS或CLB對應連接埠是否處於服務監聽狀態。