本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

私有集群

在 GKE 中, 私有集群 是节点通过仅分配内部 IP 地址而与进出流量隔离的集群。GKE 中的私有集群可以选择将控制平面端点公开为可公开访问的地址或私有地址。这与其他 Kubernetes 提供商不同,后者可能将具有私有控制平面端点的集群称为“私有集群”,但仍允许节点之间的流量。您可能希望根据组织的网络和安全要求创建一个具有私有节点的集群,无论是否具有公共控制平面端点。从 Rancher 提供的 GKE 集群可以通过在集群选项中选择“私有集群”(在“显示高级选项”下)来使用隔离节点。可以通过选择“启用私有端点”来选择性地将控制平面端点设为私有。

私有节点

由于私有集群中的节点仅具有内部 IP 地址,因此它们将无法安装集群代理,Rancher 将无法完全管理该集群。这可以通过几种方式克服。

Cloud NAT

Cloud NAT 将 产生费用

如果限制出站互联网访问对您的组织不是问题,请使用 Google 的 Cloud NAT 服务,以允许私有网络中的节点访问互联网,从而使它们能够从 Docker Hub 下载所需的镜像并联系 Rancher 管理服务器。这是最简单的解决方案。

私有注册表

此场景未得到官方支持,但在使用 Cloud NAT 服务不足的情况下进行了描述。

如果需要限制节点的进出流量,请按照隔离安装说明在集群将要所在的 VPC 上设置私有容器镜像 注册表,以允许集群节点访问并下载运行集群代理所需的镜像。如果控制平面端点也是私有的,Rancher 将需要 直接访问 它。

私有控制平面端点

如果集群有公开的端点,Rancher 将能够访问该集群,无需采取额外步骤。然而,如果集群没有公开的端点,则必须考虑确保 Rancher 能够访问该集群。

Cloud NAT

Cloud NAT 将 产生费用

如上所述,如果不担心限制节点的外部互联网访问,则可以使用 Google 的 Cloud NAT 服务来允许节点访问互联网。在集群配置期间,Rancher 将提供一个注册命令,以在集群上运行。下载新集群的 kubeconfig 并在集群上运行提供的 kubectl 命令。要访问集群以运行此命令,可以通过创建临时节点、使用 VPC 中的现有节点,或通过登录至集群中的某个节点或创建 SSH 隧道来实现。

直接访问

如果 Rancher 服务器与集群的控制平面在同一 VPC 上运行,则将直接访问控制平面的私有端点。集群节点需要访问私有注册表,用于下载上文所述的镜像。

您还可以使用Google的服务,例如 Cloud VPNCloud Interconnect VLAN,以促进您组织的网络与Google VPC之间的连接。