安全群組規則

本主題說明 GKE on AWS 如何管理叢集的 AWS 安全性群組規則,以及如何修改節點集區和控制層副本的防火牆規則。

安全性群組和代管 DNS

如果您使用代管 DNS 伺服器 (而非 AWS 提供的 DNS),控制平面節點集區安全群組必須允許 TCP 和 UDP 通訊埠 53 上的輸出流量。

控制層安全群組

控制層安全群組會為每個控制層副本定義傳入和傳出 TCP 流量的防火牆規則。

控制層由三個 EC2 執行個體組成,這些執行個體位於 AWS 網路負載平衡器 (NLB) 後方。這些執行個體會接受來自其他節點、節點集區節點和 NLB 上 etcd 執行個體的連線。控制層執行個體也會建立連出 HTTPS 連線,連往 Google 和 AWS 服務。

AWS 上的 GKE 會建立受管理控制層安全群組,並附加至所有控制層執行個體。您不應修改這個群組中的規則。如要新增更多安全性群組規則,您可以在建立叢集時,指定要附加至控制層的其他安全性群組 ID。

預設控制層安全群組規則

這些是 GKE on AWS 附加至控制層的預設規則。這些規則不會與安全性群組完全相符;表格中的每一列可能會展開為多個 AWS 安全性群組規則。

類型 通訊協定 Port (通訊埠) 地址範圍或安全群組 說明
傳入 TCP (叢集版本 < 1.26) 443 虛擬私有雲主要 CIDR 範圍 允許來自節點集區節點的 HTTPS
傳入 TCP (叢集版本 >= 1.26) 443 節點集區的子網路 CIDR 範圍 允許來自節點集區節點的 HTTPS (每個節點集區使用的子網路各一條規則)
傳入 TCP 2380 控制層 SG 允許控制層 etcd 複製作業
傳入 TCP 2381 控制層 SG 允許控制平面 etcd 事件複製
傳入 TCP (叢集版本 < 1.26) 8132 虛擬私有雲主要 CIDR 範圍 允許節點集區建立 Konnectivity 連線
傳入 TCP (叢集版本 >= 1.26) 8132 節點集區的子網路 CIDR 範圍 允許節點集區節點建立 Konnectivity 連線 (每個節點集區使用的子網路各有一條規則)
傳入 TCP 11872 控制層 CIDR 範圍 負載平衡器的 HTTP 健康狀態檢查
傳出 TCP 443 0.0.0.0/0 允許外送 HTTPS
傳出 TCP 2380 控制層 SG 允許控制層 etcd 複製作業
傳出 TCP 2381 控制層 SG 允許控制平面 etcd 事件複製

節點集區安全性群組

節點集區安全群組會為節點集區中的 VM 定義傳入和傳出 TCP 流量的防火牆規則。

AWS 上的 GKE 會建立受管理節點集區安全群組,並附加至所有節點集區執行個體。您不應修改這個群組中的規則。如要新增更多安全性群組規則,您可以在建立節點集區時,指定要附加至執行個體的其他安全性群組 ID。

根據預設,節點集區 VM 不會開啟任何通訊埠。如要允許傳入流量,請在建立節點集區時新增節點集區安全群組,並透過該安全群組管理節點集區的任何所需輸入/輸出規則。

預設節點集區安全群組規則

這些是 AWS 上的 GKE 附加至節點集區的預設規則。這些規則不會與安全性群組完全相符;資料表中的每一列可能會展開為多個 AWS 安全性群組規則。

類型 通訊協定 Port (通訊埠) 地址範圍或安全群組 說明
傳入 TCP 全部 節點集區 SG 允許 pod 對 pod 的通訊
傳出 TCP 全部 節點集區 SG 允許 pod 對 pod 的通訊
傳出 TCP 443 0.0.0.0/0 允許外送 HTTPS
傳出 TCP 8132 控制層 SG 允許 Konnectivity 連線至控制層
傳出 TCP 8132 控制層 CIDR 範圍 允許 Konnectivity 連線至控制層

虛擬私有雲次要 CIDR 區塊中的節點集區

GKE on AWS 1.26 以上版本會自動建立及管理必要的安全群組規則,以支援使用次要 VPC CIDR 區塊中子網路的節點集區。如果您使用上述任一版本,就不需要建立或手動更新自訂安全群組。

不過,建立受管理控制層安全群組時,舊版 GKE on AWS 不會建立支援節點集區的規則,這些節點集區的子網路位於次要 VPC CIDR 區塊中。

如要解決這項限制,請為控制平面建立自訂安全性群組。使用 --security-group-ids 旗標建立叢集時,請傳遞安全性群組 ID。或者,您也可以更新叢集的安全性群組

使用下列規則建立安全性群組:

類型 通訊協定 Port (通訊埠) 地址範圍或安全群組 說明
傳入 TCP 443 節點集區範圍 (位於虛擬私有雲次要 CIDR 區塊) 允許來自節點集區節點的 HTTPS
傳入 TCP 8132 節點集區範圍 (位於虛擬私有雲次要 CIDR 區塊) 允許節點集區建立 Konnectivity 連線

後續步驟