腾讯云服务器安装Kubernetes集群的网络打通方案

浅强酱_3866

浅强酱_3866

2026-08-30

234人浏览

原创

腾讯云kubernetes集群网络打通的核心难点在于协议层与配置层隐性拦截:etcd需直连内网ip(2379/2380不走clb),kubelet出方向6443须放行,主机名解析缺失致tls拒绝;clb必须关闭proxy协议、设tcp健康检查、均等权重;跨可用区需开启同地域内网互通并验证cni隧道;kubeconfig中server必须填clb内网vip且证书san包含该ip。

腾讯云服务器安装kubernetes集群的网络打通方案

腾讯云服务器上装 Kubernetes 集群,网络打通的核心难点不是“能不能通”,而是“怎么通得稳、管得住、扩得开”——尤其当控制平面节点跨可用区、工作节点混用公网/内网、CLB 后端又挂了多个 kube-apiserver 时,etcd 成员间心跳、kubelet 上报状态、Pod 跨节点通信这三件事最容易集体失联。

为什么腾讯云 CLB + 堆叠 etcd 组合下,节点间连通性常被误判为“网络不通”

实际多数故障不是物理链路断了,而是协议层或配置层的隐性拦截:

  • etcd 成员使用 https://:2380 通信,但腾讯云 CLB 默认只转发 6443(API Server),2379/2380 端口根本没走 CLB,必须直连节点内网 IP;若节点间未配置内网互通(比如跨可用区未选“同地域内网互通”),etcd 就会卡在 starting 状态
  • kubelethttps://<clb-vip>:6443</clb-vip> 上报时,如果节点安全组没放行出方向的 6443(注意:是出方向!),会出现 Unable to connect to the server: net/http: request canceled while waiting for connection
  • 节点主机名解析失败(/etc/hosts 没配或 DNS 不一致)会导致 kubeadm init 生成的证书 SAN 中缺失对应 IP,后续 kubelet TLS 握手直接被拒绝

CLB 四层 TCP 转发必须绕开的三个配置陷阱

腾讯云 CLB 默认开启“获取真实 IP”(PROXY 协议),但 kube-apiserver 不支持 PROXY 协议头,会导致连接直接 reset:

腾讯云文字识别(通用高精度版)
腾讯云文字识别(通用高精度版)

腾讯云通用文字识别(高精度版)技能包。用户发送/粘贴图片、提供图片URL或要求识别图片文字时自动调用。支持中文、英文、中英混合、数字及特殊符号的检测与识别,返回文字框位置与内容。适用于文字较多、版式复杂、准召率要求高的场景。

下载
  • 务必在 CLB 控制台关闭“启用 PROXY 协议”,否则所有 kubectl 请求都会失败,错误日志里反复出现 http: proxy error: EOF
  • CLB 健康检查必须设为 TCP 模式,目标端口填 6443,不能用 HTTP 检查(kube-apiserver/healthz 在未就绪前返回 500,CLB 会误判节点下线)
  • 后端服务器权重必须手动设为相同值,避免 CLB 轮询导致某节点 etcd 成员因负载高而响应延迟,触发 member x is unreachable

跨可用区节点如何确保 Pod 网络真正打通

即使所有节点能 ping 通,Calico/Flannel 的 CNI 插件仍可能无法建立隧道——因为腾讯云默认关闭了跨可用区的“内网互通”开关:

  • 登录腾讯云控制台 → 云服务器 CVM → 左侧“网络与安全” → “私有网络” → 找到集群使用的 VPC → 点击“可用区互通” → 开启“同地域内网互通”
  • 确认每个节点的安全组入方向放行:UDP 8472(Flannel VXLAN)、IP Protocol 4(Calico IPIP)或 TCP/UDP 51820(WireGuard,如用 k3s)
  • 执行 ip route show table all | grep tunl0(Calico)或 ip -d link show flannel.1(Flannel),看隧道设备是否 UP 且 peer 地址指向其他节点内网 IP,而不是 0.0.0.0

本地 kubectl 连接集群时,kubeconfig 里的 server 地址该填什么

填错一个字符就会连不上,且错误提示极其模糊(比如 x509: certificate is valid for ... not <your-input></your-input>):

  • 绝对不要填 CLB 的公网域名或 IP —— 公网访问需额外开通且走安全组限制,调试阶段优先走内网
  • 填 CLB 的内网 VIP(例如 https://10.0.1.100:6443),这个地址必须出现在 kubeadm init--apiserver-advertise-addresscontrolPlaneEndpoint 中,否则证书不包含它
  • 生成 kubeconfig 后,用 openssl x509 -in /etc/kubernetes/pki/apiserver.crt -text -noout | grep DNS 核对 SAN 列表,确保含 CLB VIP 和所有节点内网 IP

最易被跳过的一步:CLB 后端节点健康检查通过后,必须手动在每台控制平面节点上执行 curl -k https://127.0.0.1:6443/healthz,确认本地 apiserver 真正就绪——否则 CLB 认为节点健康,实际流量进来就被 503。

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

840

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2412

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

816

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

709

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

374

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2176

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

3992

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

647

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kubernetes官方教程手册
Kubernetes官方教程手册

共0课时 | 0人学习

Kubernetes官方中文文档
Kubernetes官方中文文档

共0课时 | 0人学习