本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
啟用 的傳出網際網路存取 pods
適用於:Linux IPv4
Fargate 節點、Linux 具有 Amazon EC2 執行個體的節點
如果您使用 IPv6
系列部署叢集,則此主題中的資訊不適用於叢集,因為IPv6
地址未進行網路翻譯。如需搭配使用 IPv6
與叢集的詳細資訊,請參閱 了解叢集的 IPv6 地址、pods、 和服務。
根據預設,每個 Pod 在叢集中,系統會指派一個連結:AWSEC2/latest/UserGuide/using-instance-addressing.html#concepts-private-addressesIPv4
地址,該地址來自與 VPC 相關聯的無類別網域間路由 (CIDR) 區塊,Pod 已部署在 中。Pods 在相同的 VPC 中,使用這些私有 IP 地址作為端點彼此通訊。當 Pod 會與不在與 CIDR 相關聯的 VPC 區塊內的任何IPv4
地址通訊,Amazon VPC CNI 外掛程式 (適用於 LinuxIPv4
地址為節點的主要彈性網路介面的主要私有IPv4
地址,Pod 在 上執行,依預設是 ^* ^。
注意
用於 Windows 節點,還有其他要考慮的詳細資訊。根據預設,Windows 的 VPC CNI外掛程式
由於此行為:
如果在您的環境中下列任一陳述式成立,請使用下列命令變更預設組態。
-
您的網路或 VPCs 中有使用 VPC VPC對等、傳輸 VPC 或 AWS Direct Connect 連接至叢集 Word 的資源,而這些資源需要與您的 進行通訊 Pods 使用
IPv4
地址,且您的外掛程式版本早於1.8.0
。
kubectl set env daemonset -n kube-system aws-node AWS_VPC_K8S_CNI_EXTERNALSNAT=true
注意
AWS_VPC_K8S_CNI_EXTERNALSNAT
和 AWS_VPC_K8S_CNI_EXCLUDE_SNAT_CIDRS
CNI 組態變數不適用於 Windows 節點。不支援停用 SNAT Windows。 對於從 IPv4
CIDRs 中排除 SNAT 清單,您可以透過在 中指定 ExcludedSnatCIDRs
參數來定義此項目 Windows 引導指令碼。如需使用此參數的詳細資訊,請參閱 引導指令碼組態參數。
主機聯網
^*^如果 Pod’s spec 包含 hostNetwork=true
(預設為 false
),則其 IP 地址不會轉譯為不同的地址。這是 kube-proxy
和 的案例 Amazon VPC CNI plugin for Kubernetes
Pods 根據預設, 會在叢集上執行。對於這些 Pods,IP 地址與節點的主要 IP 地址相同,因此 Pod’s IP 地址未翻譯。如需 的詳細資訊 Pod’s hostNetwork
設定,請參閱中的 PodSpec v1 核心