如果叢集內部的服務需要訪問外部公網資源,例如拉取公網鏡像、更新依賴庫等,您可以通過控制台為建立叢集或已有叢集配置SNAT Gateway功能,以便開啟叢集訪問公網的能力。
如需實現叢集的公網訪問,讓外部可以通過公網訪問叢集的API Server,例如通過kubectl管理叢集等,請參見控制叢集API Server的公網訪問能力使用阿里雲EIP暴露API Server。
計費說明
開啟SNAT功能時會涉及以下產品:
NAT Gateway:阿里雲全託管的網路位址轉譯網關,通過轉換和隱藏雲端服務地址,防止地址直接暴露,實現安全訪問互連網提升網路安全性。相關計費,請參見公網NAT Gateway計費。
彈性公網 IP(EIP):可以獨立購買和持有的公網IP地址資源。當EIP和雲資源綁定後,雲資源可以通過EIP與公網通訊。相關計費,請參見隨用隨付。
操作步驟
您可以在建立叢集時或在已有叢集中配置SNAT條目,使得叢集可以通過公網NAT Gateway綁定的EIP訪問互連網。
ACK暫不支援通過API方式為已有叢集開啟SNAT功能。
在已有叢集中開啟
為已有叢集開啟SNAT公網訪問能力的流程圖及對應操作流程如下。
建立NAT Gateway。
NAT Gateway地區需與叢集地區保持一致。
在左側導覽列,選擇NAT Gateway > 公網NAT Gateway。
在公網NAT Gateway頁面,單擊建立公網NAT Gateway,參數配置完成後,單擊立即購買。更多建立NAT Gateway的參數說明,請參見建立和管理公網NAT Gateway執行個體。
重要在VPC內建立第一個公網NAT Gateway時,阿里雲會在VPC的系統路由表中自動添加一條目標網段為0.0.0.0/0,下一跳為公網NAT Gateway的路由條目,用於將流量引入公網NAT Gateway。若VPC記憶體在自訂路由表或多個公網NAT Gateway,則需手動添加路由。具體操作,請參見建立和管理路由表。
(可選)建立Elastic IP Address。如果您已經有Elastic IP Address,可以跳過此步。
在左側導覽列,選擇。
然後在Elastic IP Address頁面,單擊建立Elastic IP Address,地區和NAT Gateway處於同一地區,參數設定完成後,單擊立即購買。
綁定Elastic IP Address到對應的NAT Gateway。
在左側導覽列,選擇NAT Gateway > 公網NAT Gateway。
在公網NAT Gateway頁面,找到目標NAT Gateway,然後在其右側操作列選擇。
在綁定Elastic IP Address對話方塊中,在所在資源群組下拉式清單中設定資源群組,然後在從已有Elastic IP Address中選擇下拉式清單中,選擇已建立的Elastic IP Address後,單擊確定。
為NAT Gateway建立交換器粒度的SNAT條目。
在公網NAT Gateway頁面,找到目標NAT Gateway,然後在其右側操作列單擊管理。
單擊SNAT管理頁簽,然後單擊建立SNAT條目。
在建立SNAT條目頁面,配置以下參數,然後單擊確定建立。更多建立SNAT條目的參數配置說明,請參見建立SNAT條目。
配置項
說明
SNAT條目粒度
選中交換器粒度,然後選擇相應的叢集網路所使用的虛擬交換器,可以選擇多個。
Terway網路:需要選中節點虛擬交換器和Pod虛擬交換器所對應的ID。
Flannel網路:只需選中節點虛擬交換器所對應的ID。
選擇Elastic IP Address地址
選擇用來提供互連網訪問的公網IP。
建立SNAT條目並配置SNAT規則之後,叢集就開啟了SNAT。您可以在NAT Gateway管理主控台查看NAT Gateway的詳細資料,包括SNAT使用的Elastic IP Address。下圖為Terway網路模式下開啟了SNAT公網訪問的NAT Gateway執行個體。

建立叢集時開啟
登入Container Service管理主控台。建立叢集時,在網路設定地區,選中為專用網路配置SNAT。建立叢集相關操作,請參見建立ACK託管叢集。
在VPC內建立第一個公網NAT Gateway時,阿里雲會在VPC的系統路由表中自動添加一條目標網段為0.0.0.0/0,下一跳為公網NAT Gateway的路由條目,用於將流量引入公網NAT Gateway。若VPC記憶體在自訂路由表或多個公網NAT Gateway,則需手動添加路由。具體操作,請參見建立和管理路由表。
執行結果
登入叢集的節點,然後訪問公網,可以看到網路正常,資料包無丟失。

常見問題
如何查看叢集公網IP地址?
在左側導覽列,選擇NAT Gateway > 公網NAT Gateway。
在公網NAT Gateway頁面,找到目標NAT Gateway,然後在其右側操作列單擊管理。
單擊SNAT管理頁簽,在SNAT條目列表地區,查看叢集使用的Elastic IP Address等資訊。

相關文檔
關於Pod訪問外網的注意事項,例如如何佈建網域名解析、網路原則、安全性群組等,請參見Pod訪問外部網路時的注意事項。
關於叢集安全性群組規則推薦配置,請參見配置叢集安全性群組。
請勿在叢集中同時配置SNAT和IPv4網關。關於節點配置IPv4網關的操作請參見使用IPv4網關集中控制公網訪問流量。
> 綁定Elastic IP Address
