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

GKE 集群配置参考

集群位置

说明

位置类型

单区域或区域集群。使用 GKE,您可以创建一个根据工作负载的可用性要求和预算量身定制的集群。默认情况下,集群的节点在单个计算区域中运行。当选择多个区域时,集群的节点将跨多个计算区域,而控制平面位于单个区域。区域集群也提高了控制平面的可用性。有关选择集群可用性类型的帮助,请参阅 这些文档。

区域

Compute Engine 中的每个区域包含多个可用区。有关可用区域和可用区的更多信息,请参阅 这些文档。

附加区域

对于单区域集群,您可以选择附加区域以创建一个 多区域集群。

区域

对于 区域集群,,您可以选择一个区域。有关可用区域和可用区的更多信息,请参阅 本节。每个可用区名称的第一部分是区域名称。

群集选项

Kubernetes 版本

可变:是

有关 GKE Kubernetes 版本的更多信息,请参见 这些文档。

容器地址范围

可变:否

集群中 pod 的 IP 地址范围。必须是有效的 CIDR 范围,例如 10.42.0.0/16。如果未指定,将自动从 10.0.0.0/8 中随机选择一个范围,并将排除已分配给虚拟机、其他集群或路由的范围。自动选择的范围可能与保留的 IP 地址、动态路由或与集群对等的 VPC 中的路由发生冲突。

网络

可变:否

集群连接的计算引擎网络。将使用此网络创建路由和防火墙。如果使用 共享 VPC,共享到您的项目的 VPC 网络将在此处显示,并可在此字段中选择。有关更多信息,请参见 此页面

节点子网 / 子网

可变:否

集群连接的计算引擎子网。此子网必须属于 网络 字段中指定的网络。选择现有子网,或选择 "自动创建子网" 以自动创建一个。如果不使用现有网络,则需要 子网名称 来生成一个。如果使用 共享 VPC,共享到您的项目的 VPC 子网将在此处显示。如果使用 共享 VPC,共享到您的项目的 VPC 子网将在此处显示,并可在此字段中选择。有关更多信息,请参见 此页面。

子网名称

可变:否

自动创建一个具有提供名称的子网。如果为 *节点子网*或 *子网*选择了“自动创建子网”,则此项为必需。有关子网络的更多信息,请参见 此页面。

IP 别名

可变:否

启用 别名 IP。这启用 VPC 原生流量路由。如果使用 共享 VPC,则此项为必需。

网络策略

可变:是

在集群上启用网络策略执行。网络策略定义了集群中 pod 和服务之间可以发生的通信级别。有关更多信息,请参见 此页面。

项目网络隔离

可变:是

选择是否启用或禁用项目间通信。

导入的集群

对于导入的集群,项目网络隔离 (PNI) 需要在集群上事先启用 Kubernetes 网络策略。 对于 Rancher 创建的集群,Rancher 会自动启用 Kubernetes 网络策略。

  1. 在 GKE 中,在集群级别启用网络策略。有关说明,请参见 官方 GKE 指南

  2. 启用网络策略后,将集群导入 Rancher,并为项目级隔离启用 PNI。

节点 IPv4 CIDR 块

可变:否

此集群中实例 IP 的地址范围。如果为 *节点子网*或 *子网*选择了“自动创建子网”,则可以设置此项。必须是有效的 CIDR 范围,例如 10.96.0.0/14。有关如何确定 IP 地址范围的更多信息,请参阅 此页面。

集群次要范围名称

可变:否

现有的用于 Pod IP 地址的次要范围的名称。如果选择,将自动填充 集群 Pod 地址范围。如果使用共享 VPC 网络,则为必填项。

集群 Pod 地址范围

可变:否

分配给集群中 Pod 的 IP 地址范围。必须是有效的 CIDR 范围,例如 10.96.0.0/11。如果未提供,将自动创建。如果使用共享 VPC 网络,则必须提供。有关如何确定 Pod 的 IP 地址范围的更多信息,请参阅 本节。

服务次要范围名称

可变:否

现有的用于服务 IP 地址的次要范围的名称。如果选择,将自动填充 服务地址范围。如果使用共享 VPC 网络,则为必填项。

服务地址范围

可变:否

分配给集群中服务的地址范围。必须是有效的 CIDR 范围,例如 10.94.0.0/18。如果未提供,将自动创建。如果使用共享 VPC 网络,则必须提供。有关如何确定服务的 IP 地址范围的更多信息,请参阅 本节。

私有集群

可变:否

私有集群需要在Rancher之外进行额外的规划和配置。请参阅私有集群指南

仅为节点分配内部IP地址。私有集群节点无法访问公共互联网,除非在GCP中采取额外的网络步骤。

启用私有端点

私有集群需要在Rancher之外进行额外的规划和配置。请参阅私有集群指南

可变:否

限制对控制平面端点的外部访问。仅在选择了*私有集群*时可用。如果选择,并且Rancher无法直接访问集群运行的虚拟私有云网络,Rancher将提供一个注册命令在集群上运行,以便Rancher能够连接到它。

主IPv4 CIDR 块

可变:否

控制平面VPC的IP范围。

主授权网络

可变:是

启用控制平面授权网络,以阻止不受信任的非GCP源IP通过HTTPS访问Kubernetes主节点。如果选择,可以添加额外的授权网络。如果集群是通过公共端点创建的,此选项对于限制对公共端点的访问仅限于某些网络(例如,您的Rancher服务运行的网络)非常有用。如果集群只有私有端点,则此设置是必需的。

附加选项

集群附加组件

额外的Kubernetes集群组件。有关更多信息,请参见 此页面。

水平 Pod 自动扩缩

可变:是

水平Pod自动扩缩器通过根据工作负载的CPU或内存消耗,或根据Kubernetes内部报告的自定义指标或来自集群外部来源的外部指标,自动增加或减少Pod的数量,从而改变Kubernetes工作负载的形状。有关更多信息,请参见 此页面。

HTTP (L7) 负载平衡

可变:是

HTTP (L7) 负载平衡将 HTTP 和 HTTPS 流量分配到托管在 GKE 上的后端。有关更多信息,请参见 此页面。

网络策略配置(仅限主节点)

可变:是

网络策略的配置。这仅跟踪附加组件在主节点上是否启用,并不跟踪节点的网络策略是否启用。

集群功能(Alpha 功能)

可变:否

为集群启用所有 Kubernetes alpha API 组和功能。启用后,集群无法升级,并将在 30 天后自动删除。不建议在生产环境中使用 Alpha 集群,因为它们不受 GKE SLA 的保障。有关更多信息,请参见 此页面。

日志服务

可变:是

集群用于写入日志的日志服务。使用 Cloud Logging 或不使用日志服务,在这种情况下,集群不会导出任何日志。

监控服务

可变:是

集群用于写入指标的监控服务。使用 Cloud Monitoring 或不使用监控服务,在这种情况下,集群不会导出任何指标。

维护窗口

可变:是

设置 4 小时维护窗口的开始时间。时间以 UTC 时区指定,使用 HH:MM 格式。有关更多信息,请参见 此页面。

节点池

在此部分,输入描述节点池中每个节点配置的详细信息。

Kubernetes 版本

可变:是

节点池中每个节点的Kubernetes版本。有关 GKE Kubernetes 版本的更多信息,请参见 这些文档。

映像类型

可变:是

节点操作系统镜像。有关GKE为每个操作系统提供的节点镜像选项的更多信息,请参考 此页面。

默认选项为“容器优化操作系统(含 Docker)”。GCP的优化容器操作系统上的只读文件系统与Rancher中的xref:[传统日志记录]实现不兼容。如果需要使用传统日志记录功能,请选择“带Docker的Ubuntu”或“带Containerd的Ubuntu”。当前日志记录功能与 Container-Optimized OS 镜像兼容。

如果选择“Windows长期服务通道”或“Windows半年度通道”作为节点池镜像类型,则必须至少添加一个 Container-Optimized OS 或 Ubuntu 节点池。

计算机类型

可变:否

可用于节点实例的虚拟化硬件资源。有关Google Cloud机器类型的更多信息,请参考 此页面。

根磁盘类型

可变:否

标准持久磁盘由标准硬盘(HDD)支持,而 SSD 持久磁盘由固态硬盘(SSD)支持。有关更多信息,请参见 本节。

本地 SSD 磁盘

可变:否

以 GB 为单位配置每个节点的本地 SSD 磁盘存储。本地 SSD 物理上连接到托管您的虚拟机实例的服务器。本地 SSD 的吞吐量高于标准持久磁盘或 SSD 持久磁盘,延迟更低。您在本地 SSD 上存储的数据仅在实例停止或删除之前保持有效。有关更多信息,请参见 本节。

可抢占节点(测试版)

可变:否

可抢占节点,也称为可抢占虚拟机,是计算引擎虚拟机实例,通常最多持续 24 小时,并且不提供可用性保证。有关更多信息,请参见 此页面。

污点

可变:否

当您对节点应用污点时,只有能够容忍该污点的 Pods 才允许在该节点上运行。在 GKE 集群中,您可以对节点池应用污点,这会将污点应用于池中的所有节点。

节点标签

可变:否

您可以对节点池应用标签,这会将标签应用于池中的所有节点。

无效的标签可能会阻止升级或阻止 Rancher 启动。有关标签语法要求的详细信息,请参见 Kubernetes 文档。

网络标签

可变:否

您可以向节点池添加网络标签,以便在子网之间创建防火墙规则和路由。标签将适用于池中的所有节点。

有关标签语法和要求的详细信息,请参见 Kubernetes 文档

组详情

在本节中,输入描述节点池的详细信息。

名称

可变:否

输入节点池的名称。

初始节点数量

可变:是

节点池中节点的起始数量的整数。

每个节点的最大 Pod 数

可变:否

GKE 对每个节点的 Pod 数有 110 的硬限制。有关 Kubernetes 限制的更多信息,请参见 本节。

自动扩展

可变:是

节点池自动扩展根据工作负载的需求动态创建或删除节点。有关更多信息,请参见 此页面。

自动修复

可变:是

GKE 的节点自动修复功能帮助您保持集群中的节点处于健康运行状态。启用后,GKE 会定期检查集群中每个节点的健康状态。如果一个节点在较长时间内连续未通过健康检查,GKE 将启动该节点的修复过程。有关更多信息,请参阅 自动修复节点的部分。

自动升级

可变:是

启用后,自动升级功能会在控制平面(主控)版本更新时, 使集群中的节点与控制平面版本保持同步。有关自动升级节点的更多信息,请参阅 此页面。

访问范围

可变:否

访问范围是为您的节点指定权限的传统方法。

  • *允许默认访问:*新集群的默认访问权限是 计算引擎默认服务账户。

  • *允许对所有云 API 的完全访问:*通常,您只需将云平台访问范围设置为允许对所有云 API 的完全访问,然后仅授予服务账户相关的 IAM 角色。授予虚拟机实例的访问范围与授予服务账户的 IAM 角色的组合决定了该服务账户对该实例的访问权限。

  • *为每个 API 设置访问权限:*或者,您可以选择设置特定的范围,以允许访问服务将调用的特定 API 方法。

有关更多信息,请参阅 关于为虚拟机启用服务账户的部分。

刷新间隔的配置

刷新间隔可以通过设置 "gke-refresh" 来配置,该设置是表示秒数的整数。

默认值为 300 秒。

可以通过运行 kubectl edit setting gke-refresh 来更改同步间隔。

刷新窗口越短,发生竞争条件的可能性就越小,但这确实增加了遇到 GCP API 可能存在的请求限制的可能性。