发布时间:2026/8/28 18:49:56
Ubuntu24系统安装部署最新版K8s(Kubernetes)1.36保姆级详细教程 一、集群节点规划注意Kubernetes 1.36 已经彻底移除 docker shim只能使用 containerd/crun不再支持 docker 直接作为 runtime。软件环境操作系统Ubuntu 24.04.4 LTS 内核6.8.0-138-genericContainerdv2.2.1k8sv1.36.4kubeadmv1.36节点配置主机角色IPCPU内存node1控制平面192.168.5.1016C40Gnode2工作节点192.168.5.1116C40Gnode3工作节点192.168.5.1216C40G注意控制平面至少 2 核、4 GB 内存工作节点至少 2 核、4 GB 内存所有节点使用固定 IP节点之间可以互相访问不要使用公网 IP 作为集群节点通信地址主机名不能重复普通用户 sudo官方推荐方式安装二、设置主机名和 hosts分别在每个节点设置对应主机名例如sudo hostnamectl set-hostname node1所有节点配置/etc/hostssudo tee -a /etc/hosts /dev/null EOF 192.168.5.10 node1 192.168.5.11 node2 192.168.5.12 node3 EOF验证rootnode1:~# hostname node1三、更新系统并安装基础工具sudo apt update sudo apt upgrade -y sudo apt install -y \ apt-transport-https \ ca-certificates \ curl \ gpg \ chrony \ socat \ conntrack \ ipset \ ebtables \ ethtool \ lsof四、保持时间同步sudo systemctl enable --now chrony timedatectl status设置时区# 设置时区为上海 sudo timedatectl set-timezone Asia/Shanghai # 验证 timedatectl五、关闭 SwapKubernetes 默认检测到 Swap 时会导致 kubelet 无法正常启动。官方建议关闭 Swap或者额外配置 kubelet 允许 Swap。生产环境建议直接关闭。临时关闭sudo swapoff -a永久关闭sudo sed -i.bak /[[:space:]]swap[[:space:]]/ s/^/#/ /etc/fstab检查free -h swapon --show六、配置内核模块和网络参数加载内核模块sudo tee /etc/modules-load.d/k8s.conf /dev/null EOF overlay br_netfilter EOF sudo modprobe overlay sudo modprobe br_netfilter配置网络参数sudo tee /etc/sysctl.d/k8s.conf /dev/null EOF net.bridge.bridge-nf-call-iptables 1 net.bridge.bridge-nf-call-ip6tables 1 net.ipv4.ip_forward 1 EOF sudo sysctl --system检查sysctl net.ipv4.ip_forward lsmod | grep br_netfilter预期net.ipv4.ip_forward 1七、安装并配置 containerdsudo apt install -y containerd检查pannode1:~$ sudo ctr version Client: Version: 2.2.1 Revision: Go version: go1.24.4 Server: Version: 2.2.1 Revision: UUID: 9844b409-4c1c-4f55-b0d4-164c16ea759e生成默认配置sudo mkdir -p /etc/containerd containerd config default | sudo tee /etc/containerd/config.toml /dev/null启用 systemd cgroupsudo sed -i \ s/SystemdCgroup false/SystemdCgroup true/ \ /etc/containerd/config.toml确认 CRI 插件没有被禁用sudo grep -n disabled_plugins\|SystemdCgroup /etc/containerd/config.toml预期disabled_plugins [cri]重启并设置开机启动sudo systemctl restart containerd sudo systemctl enable containerd sudo systemctl status containerd --no-pager八、安装 kubeadm、kubelet、kubectl生产环境建议所有节点使用完全相同的 Kubernetes 版本本文主要介绍Kubernetesv1.36的安装。注意Kubernetes 官方已弃用旧的apt.kubernetes.io仓库应使用新的pkgs.k8s.io仓库。sudo mkdir -p -m 755 /etc/apt/keyrings curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.36/deb/Release.key \ | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg echo deb [signed-by/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.36/deb/ / \ | sudo tee /etc/apt/sources.list.d/kubernetes.list安装组件sudo apt update sudo apt install -y kubelet kubeadm kubectl检查版本kubeadm version kubelet --version kubectl version --client锁定版本避免系统升级时自动升级 Kubernetessudo apt-mark hold kubelet kubeadm kubectl启用 kubeletsudo systemctl enable kubelet九、关闭防火墙Ubuntu 默认防火墙工具是ufw底层是 iptables/nftables。k8s 测试环境可以关闭生产环境建议不要完全关闭而是放行集群端口。sudo ufw disable sudo systemctl stop ufw sudo systemctl disable ufw十、禁用IPV6sudo tee /etc/sysctl.d/99-disable-ipv6.conf /dev/null EOF net.ipv6.conf.all.disable_ipv6 1 net.ipv6.conf.default.disable_ipv6 1 EOF sudo sysctl --system验证cat /proc/sys/net/ipv6/conf/all/disable_ipv6输出1表示已禁用。重启相关服务sudo systemctl restart containerd sudo systemctl restart kubelet十一、使用配置文件进行初始化控制平面相比长命令配置文件更容易保存和后续复用。创建配置文件sudo mkdir -p /etc/kubernetes sudo vim /etc/kubernetes/kubeadm-config.yaml写入apiVersion: kubeadm.k8s.io/v1beta4 kind: InitConfiguration localAPIEndpoint: advertiseAddress: 192.168.5.10 bindPort: 6443 nodeRegistration: criSocket: unix:///run/containerd/containerd.sock kubeletExtraArgs: node-ip: 192.168.5.10 --- apiVersion: kubeadm.k8s.io/v1beta4 kind: ClusterConfiguration kubernetesVersion: v1.36.4 imageRepository: registry.aliyuncs.com/google_containers controlPlaneEndpoint: 192.168.5.10:6443 networking: podSubnet: 10.244.0.0/16 serviceSubnet: 10.96.0.0/12 dnsDomain: cluster.local注意advertiseAddress填控制平面节点 IPnode-ip填本机实际用于集群通信的 IPcontrolPlaneEndpoint是其他节点访问 API Server 的地址podSubnet必须与后续 CNI 网络插件配置一致如果未来计划做高可用controlPlaneEndpoint应填写负载均衡器或稳定 DNS而不是单个节点 IP查看需要拉取的镜像pannode1:~$ sudo kubeadm config images list \ --config/etc/kubernetes/kubeadm-config.yaml registry.aliyuncs.com/google_containers/kube-apiserver:v1.36.4 registry.aliyuncs.com/google_containers/kube-controller-manager:v1.36.4 registry.aliyuncs.com/google_containers/kube-scheduler:v1.36.4 registry.aliyuncs.com/google_containers/kube-proxy:v1.36.4 registry.aliyuncs.com/google_containers/coredns:v1.14.2 registry.aliyuncs.com/google_containers/pause:3.10.2 registry.aliyuncs.com/google_containers/etcd:3.6.8-0先执行预检查:sudo kubeadm init \ --config/etc/kubernetes/kubeadm-config.yaml \ --dry-run执行初始化sudo kubeadm init \ --config/etc/kubernetes/kubeadm-config.yaml如果初始化失败查看日志journalctl -u kubelet -n 100 --no-pager我第一次安装失败查找日志找到了报错信息failed to pull image registry.k8s.io/pause:3.10.1先测试一下是否可拉取镜像sudo crictl pull registry.k8s.io/pause:3.10.1 ctr: failed to resolve image: failed to do request: Head https://europe-west3-docker.pkg.dev/v2/k8s-artifacts-prod/images/pause/manifests/3.10.1?rid0f7a60629231ae3195f59506e39f5118: dial tcp 74.125.142.82:443: i/o timeout说明网络有问题无法下载可以修改为国内镜像地址sudo sed -i s#registry.k8s.io/pause:3.10.1#registry.aliyuncs.com/google_containers/pause:3.10.1# /etc/containerd/config.toml重启 containerdsudo systemctl restart containerd测试拉取apt install -y cri-tools crictl pull registry.aliyuncs.com/google_containers/pause:3.10.1 crictl images | grep pause执行清理后重新初始化sudo kubeadm reset -f sudo rm -rf /etc/cni/net.d sudo rm -rf /var/lib/cni sudo systemctl restart containerd sudo systemctl restart kubelet初始化成功后终端会输出类似下面的 Worker 加入命令kubeadm join 192.168.5.10:6443 \ --token token \ --discovery-token-ca-cert-hash sha256:hash需要保存下命令。十二、配置 kubectl普通用户mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/configroot用户export KUBECONFIG/etc/kubernetes/admin.conf十三、Worker 节点加入集群sudo kubeadm join 192.168.5.10:6443 --token xxx \ --discovery-token-ca-cert-hash xxx十四、安装 Calico 网络插件建议安装 Calico Open Sourcev3.32.1。Calico 官方已测试支持 Kubernetes 1.36。安装 Tigera Operator 和 CRDkubectl create -f \ https://raw.githubusercontent.com/projectcalico/calico/v3.32.1/manifests/v1_crd_projectcalico_org.yaml kubectl create -f \ https://raw.githubusercontent.com/projectcalico/calico/v3.32.1/manifests/tigera-operator.yaml检查 Operatorkubectl get pods -n tigera-operator下载并修改 Calico 配置curl -LO \ https://raw.githubusercontent.com/projectcalico/calico/v3.32.1/manifests/custom-resources.yaml查看配置中的 Pod 网段grep -n cidr: custom-resources.yaml修改为sed -i s#192.168.0.0/16#10.244.0.0/16#g \ custom-resources.yaml创建 Calico 资源kubectl create -f custom-resources.yaml查看集群状态kubectl get tigerastatus验证节点状态kubectl get nodes -o wide移除控制平面污点kubectl taint nodes node1 node-role.kubernetes.io/control-plane:NoSchedule-如果遇到calico node event报错calico/node is not ready: BIRD is not ready: BGP not established with 192.168.5.11,192.168.5.12修改Tigera calico网络配置spec: # Configures Calico networking. calicoNetwork: nodeAddressAutodetectionV4: firstFound: false interface: enp1s0应用并重启 calico‑node 使变更生效kubectl apply -f custom-resources.yaml kubectl rollout restart daemonset/calico-node -n calico-system验证kubectl get pods -A -w|grep calico-node十五、测试集群创建测试 Deploymentkubectl create deployment nginx --imagedocker.m.daocloud.io/library/nginx:1.25 kubectl expose deployment nginx --port80 --typeNodePort查看服务kubectl get pods -o wide kubectl get svc nginx访问服务http://192.168.5.10:nodeport

相关新闻

2026/8/28 18:49:56

LINGO优化建模:从数学公式到运输问题实战

1. 从“数学建模”到“LINGO”:为什么它依然是你的秘密武器如果你正在准备数学建模竞赛,或者在工作中遇到了需要优化决策的问题,比如“如何安排生产计划成本最低”、“如何设计物流路线效率最高”,那么你大概率会听到一个名字&…

2026/8/28 18:49:56

UVC消毒笔嵌入Nordic BLE SoC的完整工程复盘

UVC消毒笔这个品类,前两年市场需求突然就起来了,各路方案商、品牌方、初创团队都往里冲。当时市面上大多数产品还停留在“一颗电池一个升压板一颗灯珠”的阶段,讲究点的加个机械拨杆开关,没了。而“UVC Disinfecting Pen Embeds N…

2026/8/28 18:49:56

Buy My Agent MCP Server:AI Agent搜索与发现工具部署指南

MCP 生态最近越来越热闹,但大多数项目是“做一个 MCP Server”,真正解决“我怎么找到想要的 Agent”这个问题的项目不多。这次要看的这个项目很有意思,标题直接叫Buy My Agent MCP Server,发布在 Hacker News 的 Show HN 上。它做…

2026/8/28 19:30:02

大模型架构演进:Transformer瓶颈与下一代架构方向解析

大模型圈子里最近有一个信号值得关注:有在 OpenAI 和 Google 长期负责大模型核心方向的研究者,离开头部实验室之后,明确把下一站押注在“下一代架构”上。这件事本身比“哪家公司又发了新模型”更值得技术人跟进。因为头部厂商的核心负责人通…

2026/8/28 19:30:02

ST加入mioty联盟,Massive IoT选型迎来新变局

1. 一次联盟动态,看懂Massive IoT的赛道变局 前两天刷到一条行业消息:ST(意法半导体)正式加入mioty联盟,成为推动大规模物联网应用的核心成员之一。这消息乍看是条普通的合作新闻,但放在当前物联网通信技术…

2026/8/28 19:30:02

智能楼宇物联网关的2×2 WiFi 6+蓝牙组合方案实战

去年做一款智能楼宇的物联网关时,我纠结最久的不是边缘计算框架,也不是容器编排,而是无线连接这一层。客户的要求很直接:网关要同时扛住视频流、批量固件下发、几十个BLE传感器的低功耗接入,还得在强干扰环境下保持稳定…

2026/8/28 19:30:02

从零开始学Python,这几个开发习惯值得坚持

你决定学Python的那个晚上,一定没想到自己有一天会在代码里抓狂。字典推导式写了三行忽然报错,缩进丢了两个空格,pip安装的包在import时神秘失踪——这些都是零基础者最常见的噩梦。但真正让你和“老手”拉开差距的,不是记住多少A…

2026/8/28 19:30:02

MATLAB非线性规划实战:从数学建模到工程优化

1. 项目概述:当数学建模遇上非线性规划 在数学建模竞赛和实际的工程、经济、金融问题中,我们遇到的大多数优化问题都不是线性的。目标函数可能是利润的二次函数,约束条件可能包含变量的乘积或三角函数,这些都属于非线性规划的范畴…

2026/8/28 19:25:01

时间序列建模实战:从ARIMA到SARIMA,手把手预测山猫数量

1. 项目概述:从山猫数量预测看时间序列建模的实战价值刚接触数学建模的朋友,常常会困惑于如何将课本上的理论转化为一个能解决实际问题的完整项目。我当年也是从一堆抽象的公式和算法里摸爬滚打过来的,深知“纸上得来终觉浅”的道理。今天&am…

2026/8/28 16:16:17

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/28 16:16:21

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/28 16:16:22

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/28 0:00:34

2026学术工具专业测评|Paperxie全维度性能实测报告[特殊字符]

2026年国内高校毕业论文审核体系全面升级,重复率查重AIGC人工智能检测双检机制正式常态化落地,多所高校明确执行“双项一票否决”制度,重复率超标或AI生成痕迹不达标,均直接取消答辩资格。随着抽检力度加大、学术规范要求升级&…

2026/8/28 0:00:34

凭什么稳居论文工具顶流[特殊字符]Paperxie综合实力深度全解析

2026年论文双检内卷严重,市面上AI论文工具层出不穷,但大多只是单一功能凑数、模板化严重、双检高风险、套路收费。 在一众同质化工具里,Paperxie能长期稳居行业顶流、成为应届生公认毕业神器,从来不是靠营销,而是靠实…

2026/8/28 0:00:34

2026论文工具深度测评|为什么Paperxie是目前最稳的学术工具✅

2026高校论文查重AIGC双检严查常态化。 市面上绝大多数AI论文工具依旧存在明显短板:模板感重、AI痕迹超标、改写毁逻辑、收费套路多、查重不准、格式适配差。 在全网工具普遍“偏科”的现状下,Paperxie凭借全维度均衡实力脱颖而出,成为适配…

2026/8/28 16:16:48

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/28 16:16:50

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/28 11:06:45

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…