Signed-off-by: Sunil Singh <sunil.singh@suse.com>
3.5 KiB
title
| title |
|---|
| 私有集群 |
在 GKE 中,私有集群是一种集群,其节点仅通过分配内部 IP 地址与入站和出站流量相隔离。GKE 中的私有集群可以选择将 controlplane 端点作为公开访问的地址或作为私有地址。这与其他 Kubernetes 提供商不同,后者可能将具有私有 controlplane 端点的集群称为“私有集群”,但仍允许进出节点的流量。基于你的组织的网络和安全要求,你可能想创建一个有私有节点的集群,其中有或没有公共 controlplane 端点。从 Rancher 配置的 GKE 集群可以通过在集群选项中选择私有集群(在显示高级选项下)来使用隔离的节点。通过选择启用私有端点,可以选择将 controlplane 端点设为私有。
私有节点
由于私有集群中的节点只有内部 IP 地址,它们将无法安装 cluster agent,Rancher 将无法完全管理集群。这可以通过几种方式来处理。
Cloud NAT
:::caution
Cloud NAT 将产生费用。
:::
如果限制外出的互联网访问对你的组织来说不是一个问题,可以使用 Google 的 Cloud NAT 服务来允许私有网络中的节点访问互联网,使它们能够从 Dockerhub 下载所需的镜像并与 Rancher management server 通信。这是最简单的解决方案。
私有镜像仓库
:::caution
此方案不受官方支持。如果 Cloud NAT 服务不足以满足你的需求,则可以参考此方案。
:::
如果要求限制节点的传入和传出流量,请按照离线安装说明,在集群所在的 VPC 上设置一个私有容器镜像仓库,从而允许集群节点访问和下载运行 cluster agent 所需的镜像。如果 controlplane 端点也是私有的,Rancher 将需要直接访问它。
私有 controlplane 端点
如果集群暴露了公共端点,Rancher 将能够访问集群,且无需执行额外的步骤。但是,如果集群没有公共端点,则必须确保 Rancher 可以访问集群。
Cloud NAT
:::caution
Cloud NAT 将产生费用。
:::
如上所述,如果不考虑限制对节点的传出互联网访问,则可以使用 Google 的 Cloud NAT 服务来允许节点访问互联网。当集群进行配置时,Rancher 将提供一个在集群上运行的注册命令。下载新集群的 kubeconfig 并在集群上运行提供的 kubectl 命令。如果要通过获取集群访问权来运行此命令,你可以创建临时节点或使用 VPC 中的现有节点,或者登录到某个集群节点或使用某个集群节点创建 SSH 隧道。
直接访问
如果 Rancher server 与集群的 controlplane 运行在同一 VPC 上,它将直接访问 controlplane 的私有端点。集群节点将需要访问私有镜像仓库以下载上述的镜像。
你还可以使用 Google 的服务(例如 Cloud VPN 或 Cloud Interconnect VLAN)来促进组织网络与 Google VPC 之间的连接。