TKE 标准集群指南

最佳实践

API 文档

有奖征文|投稿上云技术实践,赢取价值5000元大奖> HOT

容器网络与集群网络说明

集群网络与容器网络是集群的基本属性,通过设置集群网络和容器网络可以规划集群的网络划分。

容器网络与集群网络的关系

  • 集群网络:为集群内主机分配在节点网络地址范围内的 IP 地址,您可以选择私有网络 VPC 中的子网用于集群的节点网络。更多 VPC 的介绍可参见 VPC 概述
  • 容器网络:为集群内容器分配在容器网络地址范围内的 IP 地址,包含 GlobalRouter 模式、VPC-CNI 模式和 Cilium-Overlay 模式。
    • GlobalRouter 模式:您可以自定义三大私有网段作为容器网络,根据您选择的集群内服务数量的上限,自动分配适当大小的 CIDR 段用于 Kubernetes service。也可以根据您选择的每个节点的 Pod 数量上限,自动为集群内每台云服务器分配一个适当大小的网段用于该主机分配 Pod 的 IP 地址。
    • VPC-CNI 模式:选择与集群同 VPC 的子网用于容器分配 IP。
    • Cilium-Overlay 模式:您可以自定义三大私有网段作为容器网络,根据您选择的集群内服务数量的上限,自动分配适当大小的 CIDR 段用于 Kubernetes service。也可以根据您选择的每个节点的 Pod 数量上限,自动为集群内每台服务器分配一个适当大小的网段用于该主机分配 Pod 的 IP 地址。

容器网络与集群网络的限制

容器网络说明

  • 容器 CIDR:集群内 Service、Pod 等资源所在网段。
  • 单节点 Pod 数量上限:决定分配给每个 Node 的 CIDR 的大小。
    说明:

    容器服务 TKE 集群默认创建2个 kube-dns 的 Pod 和1个 l7-lb-controller 的 Pod。
    对于一个 Node 上的 Pod,有三个地址不能分配分别是:网络号、广播地址和网关地址,因此 Node 最大的 Pod 数目 = podMax - 3。

  • 集群内 Service 数量上限:决定分配给 Service 的 CIDR 大小。
    说明:

    容器服务 TKE 集群默认创建3个 Service:kubernetes、hpa-metrics-service、kube-dns,同时还有2个广播地址和网络号,因此用户可以使用的 Services 数量上限/集群是 ServiceMax - 5。

  • 节点:集群中 Worker 节点。
    说明:

    节点数计算公式为(CIDR IP 数量 - 集群内 Service 数量上限)/ 单节点 Pod 数量上限。

如何选择容器网络模式?

容器服务 TKE 针对不同应用场景提供不同的网络模式。本文详细介绍了 TKE 提供的三种网络模式 GlobalRouter、VPC-CNI 和 Cilium-Overlay,以及从三者的使用场景、优势、使用限制等多个角度进行对比展示,您可以根据业务需要自行选择。

说明:

选择一种网络模式创建集群后,后续其网络模式不能进行修改。

GlobalRouter 模式

GlobalRouter 网络模式是 TKE 基于底层私有网络(VPC)的全局路由能力,实现了容器网络和 VPC 互访的路由策略。详情可参见 GlobalRouter 模式介绍

VPC-CNI 模式

VPC-CNI 网络模式是 TKE 基于 CNI 和 VPC 弹性网卡实现的容器网络能力,适用于对时延有较高要求的场景。该网络模式下,容器与节点分布在同一网络平面,容器 IP 为 IPAMD 组件所分配的弹性网卡 IP。详情可参见 VPC-CNI 模式介绍

Cilium-Overlay 模式

Cilium-Overlay 网络模式是 TKE 基于 Cilium VXLan 实现的容器网络插件,实现分布式云场景中,第三方节点添加到 TKE 集群的网络管理。详情可参见 Cilium-Overlay 模式介绍

说明:

由于 Cilium-Overlay 模式存在性能损耗,因此此模式只支持分布式云中第三方节点场景,不支持只存在云上节点场景,分布式云中第三方节点详情可参见 第三方节点概述

选择网络模式

本节从使用场景 、优势、使用限制等多个角度出发,进行容器服务 TKE 所提供的 GlobalRouter、VPC-CNI 、Cilium-Overlay 三种网络模式对比,请参考以下内容选择合适的网络模式:

角度 GlobalRouter VPC-CNI Cilium-Overlay
使用场景
  • 普通容器业务场景。
  • 离线计算相关业务。
  • 对网络时延有较高要求的场景。
  • 传统架构迁移到容器平台,依赖容器有固定 IP 的场景。
  • 仅支持分布式云中第三方节点场景。
  • 不支持只存在云上节点场景。
  • 优势
  • 容器路由直接经过 VPC,容器与节点分布在同一网络平面。
  • 容器网段分配灵活,容器 IP 段不占用 VPC 的其他网段,可用 IP 资源丰富。
  • ENI 的容器网络属于一个 VPC 子网,可纳入 VPC 产品的管理范围。
  • 支持固定 IP、负载均衡(LB)直通 Pod 等用户场景。
  • 网络性能优于 GlobalRouter 模式。
  • 云上节点和第三方节点共用指定的容器网段。
  • 容器网段分配灵活,容器 IP 段不占用 VPC 的其他网段,可用 IP 资源丰富。
  • 使用限制
  • 专线、对等连接及云联网等互通场景需要额外配置。
  • 不支持固定 Pod IP。
  • 容器网络与节点网络属于同一个 VPC,IP 地址资源有限。
  • 节点内容器数量受 弹性网卡和弹性网卡可分配 IP 数量的限制。
  • 固定 IP 模式不支持容器与其他业务混用子网。
  • 固定 IP 模式不支持 Pod 跨可用区调度。
  • 网络规划需提前合理规划,后期调整困难。
  • 使用 Cilium VXLan 隧道封装协议,有10%以内的性能损耗。
  • Pod IP 在集群外不能直接访问。
  • 需从指定子网获取 2 个 IP 创建内网负载均衡,满足 IDC 中第三方节点访问 APIServer 和云上公共服务。
  • 不支持固定 Pod IP。
  • 具备额外的能力 标准 Kubernetes 功能。
  • 容器服务支持固定 Pod IP。
  • 容器网络在 VPC 控制台管控。
  • LB 直接转发到 Pod,Pod 可以获取来源 IP。
  • 标准 Kubernetes 功能。
    目录