設計拓樸的元件
請複查建構選項以設計 Kubernetes 拓樸的網路,並決定是否需要建立和管理主機,以及設計節點集區。
設計網路
決定容器化應用程式的訊息量-存取需求,並決定您需要的網路資源。
當您決定網路大小時,請考慮工作負載的比例需求;亦即 VCN 和子網路的 CIDR 範圍。
將工作節點附加至 VCN 內不同的子網路。針對其他資源使用不同的子網路,例如負載平衡器節點、基礎主機和管理主機。
建議的方法是將 Kubernetes 工作者節點附加至專用子網路。每個工作節點只有一個專用 IP 位址。使用負載平衡器 (內部或公用) 將流量分配給工作節點。若要讓工作者節點起始對公用網際網路中主機的存取,請使用 NAT 閘道。
如果您打算建立 NodePort
類型的服務,請將 Kubernetes 工作者節點附加至公用子網路。至節點或來自節點的流量會經由網際網路閘道進行。每個工作節點都有公用 IP 位址和專用位址。您必須明確設定安全規則,才能從公用網際網路存取職工節點。
您可以使用服務閘道,將工作者節點的任何流量遞送至區域內的其他Oracle Cloud 服務 (例如Oracle Cloud Infrastructure Object Storage)。
限制管理存取
考慮使用消費主機和管理主機來存取及管理您在雲端中的拓樸。
為了保護 Kubernetes 工作者節點免於未經授權的雲端存取,請將它們隔離在沒有路由且無法從公用網際網路進行的子網路中。
建置基礎主機並使用它作為拓樸中其他運算執行處理 (包括工作節點) 之 SSH 連線的唯一進入點。如需增強的安全性,請考慮允許 SSH 存取 bastion 主機,只能存取雲端以外的一組已知 IP 位址。
若要在雲端的 Kubernetes 拓樸進行管理作業,請考慮使用必要的工具 (例如 kubectl
和Oracle Cloud Infrastructure CLI),在雲端建立管理主機。使用消耗主機作為管理主機之 SSH 連線的跳躍點伺服器。