k8s初始化常见问题

执行初始化:

kubeadm init --apiserver-advertise-address=192.168.88.110 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16 --control-plane-endpoint=web01

报错信息:

age-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244                                                                                                .0.0/16 --control-plane-endpoint=master
W0903 17:19:18.012770    1840 version.go:104] could not fetch a Kubernetes versi                                                                                                on from the internet: unable to get URL "https://dl.k8s.io/release/stable-1.txt"                                                                                                : Get "https://cdn.dl.k8s.io/release/stable-1.txt": context deadline exceeded (C                                                                                                lient.Timeout exceeded while awaiting headers)
W0903 17:19:18.013071    1840 version.go:105] falling back to the local client v                                                                                                ersion: v1.30.14
[init] Using Kubernetes version: v1.30.14
[preflight] Running pre-flight checks[WARNING Swap]: swap is supported for cgroup v2 only; the NodeSwap featu                                                                                                re gate of the kubelet is beta but disabled by default
[preflight] Pulling images required for setting up a Kubernetes cluster
[preflight] This might take a minute or two, depending on the speed of your inte                                                                                                rnet connection
[preflight] You can also perform this action in beforehand using 'kubeadm config                                                                                                 images pull'
Running pre-flight checks[WARNING Swap]: swap is supported for cgroup v2 only; the NodeSwap feature gate of the kubelet is beta but disabled by default
error execution phase preflight: [preflight] Some fatal errors occurred:[ERROR FileAvailable--etc-kubernetes-kubelet.conf]: /etc/kubernetes/kubelet.conf already exists[ERROR FileAvailable--etc-kubernetes-pki-ca.crt]: /etc/kubernetes/pki/ca.crt already exists
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
To see the stack trace of this error execute with --v=5 or highe

问题分析

1. 网络超时警告 (W0903 17:19:18.012770)
W0903 17:19:18.012770    1840 version.go:104] could not fetch a Kubernetes version from the internet: 
unable to get URL "https://dl.k8s.io/release/stable-1.txt": 
Get "https://cdn.dl.k8s.io/release/stable-1.txt": context deadline exceeded 
(Client.Timeout exceeded while awaiting headers)
  • 含义kubeadm 尝试从 https://dl.k8s.io 获取最新的稳定版 Kubernetes 版本信息,但由于网络问题(如防火墙、DNS、代理或 CDN 访问缓慢),请求超时。
  • 影响
    • kubeadm 无法确认是否有更新的版本可用。
    • 它会回退到本地 kubeadm 的版本(这里是 v1.30.14)来初始化集群。这通常是可接受的,因为您本意就是使用这个版本。
  • 根本原因dl.k8s.io 在中国大陆等地区访问不稳定或速度极慢。

解决:

      配置containerd,完成后重新启动containerd

# 生成配置文件
containerd config default > /etc/containerd/config.toml# 修改 SystemdCgroup 参数为 true,表示 containerd 使用 systemd 作为 cgroup 驱动程序。
sed -ri 's#SystemdCgroup = false#SystemdCgroup = true#' /etc/containerd/config.toml# 修改sandbox沙箱镜像,registry.k8s.io 在某些网络环境下可能访问不稳定或受到限制,
# 而阿里云的镜像仓库 registry.aliyuncs.com 在国内网络环境下通常具有更好的访问速度和稳定性。
sed -ri 's#registry.k8s.io\/pause:3.8#registry.aliyuncs.com\/google_containers\/pause:3.9#' /etc/containerd/config.toml# 新增镜像源
sed -i 's/config_path = ""/config_path = "\/etc\/containerd\/certs.d\/"/g' /etc/containerd/config.toml
mkdir -p /etc/containerd/certs.d/docker.io
cat > /etc/containerd/certs.d/docker.io/hosts.toml << 'EOF'
server = "https://docker.io" # 源镜像地址[host."https://docker.m.daocloud.io"] # 道客-镜像加速地址capabilities = ["pull","resolve"][host."https://dockerproxy.com"] # 镜像加速地址capabilities = ["pull", "resolve"][host."https://docker.mirrors.sjtug.sjtu.edu.cn"] # 上海交大-镜像加速地址capabilities = ["pull","resolve"][host."https://docker.mirrors.ustc.edu.cn"] # 中科大-镜像加速地址capabilities = ["pull","resolve"][host."https://docker.nju.edu.cn"] # 南京大学-镜像加速地址capabilities = ["pull","resolve"][host."https://registry.docker-cn.com"]capabilities = ["pull","resolve","push"][host."https://cf-workers-docker-io-38g.pages.dev"]capabilities = ["pull","resolve","push"]
EOF# 重启生效
systemctl enable containerd
systemctl restart containerd# 验证测试
systemctl status containerd
2. Swap 分区警告 (WARNING Swap)
[WARNING Swap]: swap is supported for cgroup v2 only; 
the NodeSwap feature gate of the kubelet is beta but disabled by default
  • 含义:系统检测到启用了 Swap 分区。Kubernetes 默认不支持 Swap,因为它会影响 kubelet 对节点内存资源的准确判断和 Pod 的调度/驱逐策略。
  • 影响:这是一个警告,默认情况下不会阻止 kubeadm init 成功。但强烈建议解决,否则可能导致节点状态异常或 Pod 调度问题。

解决:

        完成配置后启动kubetel

# 临时关闭 Swap
sudo swapoff -a# 永久关闭:注释 /etc/fstab 中的 swap 行
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab# 验证 Swap 已关闭
free -h
# 输出中 Swap 行应为 0

启动kubetel前先重置环境

 kubeadm reset 

执行初始化

kubeadm init --apiserver-advertise-address=192.168.88.110 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16 --control-plane-endpoint=web01

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/95623.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/95623.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python学习笔记--使用Django修改和删除数据

一、修改方式一&#xff1a;模型类的对象.属性 更改的属性值&#xff0c;模型类的对象.save()返回值&#xff1a;编辑的模型类的对象。def update_book(request):book models.Book.objects.filter(pk1).first()book.price "169"book.save()return HttpResponse(bo…

如何评价2025年数学建模国赛?

2025年全国大学生数学建模竞赛将于9月4日正式举行&#xff01; 有些第一次参加数学竞赛的同学可能觉得自己还没准备好&#xff0c;临近比赛感到紧张很正常&#xff0c;但需调整心态——数学建模比赛本就是学习过程&#xff0c;遇到不会的知识及时搜索、现学现用即可&#xff0…

uniapp [全端兼容] - 实现全景图Vr 720°全景效果查看预览功能,3D全景图流畅不卡顿渲染+手势拖拽+悬浮工具按钮,uniAPP实现vr看720度全景效果示例代码(H5小程序APP全兼容)

前言 如果您需要 Vue 版本,请访问 这篇文章。 在 uni-app 全平台兼容(H5网页网站、支付宝/微信小程序、安卓App、苹果App、nvue)开发中,详细实现全景图Vr 720全景查看+用户可流畅拖动预览+自定义工具栏/按钮元素等,uniApp如何实现在线观看720度全景图,适用于全景图VR看房…

51单片机-实现串口模块教程

本章概述思维导图&#xff1a;51单片机实现串口模块教程通信基本概念通信&#xff0c;至少是需要两个对象&#xff0c;一个收一个发数据。根据数据通信的传输时序协调方式&#xff0c;可分为&#xff1a;同步通信和异步通信&#xff1b;根据数据通信的传输线路可分为&#xff1…

Linux echo 命令使用说明

echo 命令使用说明&#xff08;Linux&#xff09; 适用环境 Bash/Zsh 等常见 Shell&#xff08;echo 通常为内建命令&#xff09;也可能存在外部 /bin/echo&#xff08;行为与内建略有差异&#xff09; 基本语法 echo [选项] [字符串...]常用选项 -n: 结尾不输出换行-e: 解析反…

Java搭建高效后端,Vue打造友好前端,联合构建电子采购管理系统,实现采购流程电子化、自动化,涵盖采购全周期管理,功能完备,附详细可运行源码

前言&#xff1a;在当今数字化浪潮席卷的时代&#xff0c;企业的采购管理面临着前所未有的挑战与机遇。传统采购模式因流程繁琐、效率低下、信息不透明等问题&#xff0c;已难以满足企业快速发展的需求。电子采购管理系统作为一种创新的采购解决方案&#xff0c;借助先进的信息…

应用开发使用缓存

在 Java 开发的典型架构&#xff08;结合前端、后端、MyBatis、MySQL 及缓存机制&#xff09;中&#xff0c;缓存层次可以从前端到后端再到数据库进行划分&#xff0c;通常涉及以下多层缓存&#xff1a;1. 前端缓存浏览器缓存&#xff1a;浏览器自带的缓存机制&#xff08;如 H…

leetcode算法刷题的第二十六天

今天主要是要用贪心算法来解决重置区间的问题。 1.leetcode 452.用最少数量的箭引爆气球 题目链接 class Solution { public:static bool cmp(const vector<int>& a,const vector<int>& b){return a[0]<b[0];}int findMinArrowShots(vector<vecto…

BlueZ 学习之GATT Server开发

Linux下&#xff0c;使用C语言开发一个简单的GATT Server&#xff0c;我的Ubuntu上跑的BlueZ版本是5.79&#xff0c;使用的GLib库版本是2.85.2&#xff0c;这里我直接使用GLib里的D‑Bus来实现与BlueZ通信。BlueZ 官方推荐通过 D-Bus 进行通信和控制&#xff0c;如果是要使用原…

【Linux基础】Linux文件系统深度解析:EXT4与XFS技术详解与应用

目录 引言 1 Linux文件系统概述 1.1 文件系统的基本概念 1.2 日志文件系统的概念 2 EXT4文件系统详解 2.1 EXT4概述 2.2 EXT4的磁盘结构 2.3 EXT4的inode结构 2.4 EXT4的新特性 2.4.1 Extents 2.4.2 延迟分配 2.4.3 快速文件系统检查 2.5 EXT4的性能特点 3 XFS文…

埃文科技荣获2025年“数据要素×”大赛河南分赛二等奖

2025年8月19日&#xff0c;2025年“数据要素”大赛河南分赛决赛在郑州举行&#xff0c;本届河南分赛聚焦数据价值赋能。郑州埃文科技有限公司&#xff08;以下简称“埃文科技”&#xff09;凭借其前沿成果“IP地址高精度地理定位及应用场景划分数据集”&#xff0c;从500多支参…

链上迷局:区块链技术的法律暗礁与合规导航

高鹏律师首席数据官&#xff0c;数字经济团队创作AI辅助区块链&#xff0c;这个被誉为“信任机器”的技术&#xff0c;正以颠覆性的力量重塑数字经济的底层逻辑。从比特币的横空出世到NFT的全民狂欢&#xff0c;从DeFi的金融革命到DAO的组织重构&#xff0c;技术永不眠&#xf…

线性代数基础 | 基底 / 矩阵 / 行列式 / 秩 / 线性方程组

注&#xff1a;本文为 “线性代数基础 ” 相关合辑。 略作重排&#xff0c;未作全校。 如有内容异常&#xff0c;请看原文。 线性代数的本质&#xff08;1&#xff09;——基底、向量、线性变换、逆阵、行列式 野指针小李于 2020-08-13 16:34:45 发布 零、基底 在展开后续内…

GORM.io详细指南

GORM.io 详细指南 GORM&#xff08;全称 Go ORM&#xff09;是一个功能丰富的 ORM&#xff08;Object-Relational Mapping&#xff09;库&#xff0c;用于 Go 语言。它简化了数据库操作&#xff0c;将 SQL 查询映射到 Go 结构体&#xff0c;支持多种数据库后端。GORM 的设计理念…

【Flask】测试平台开发,应用管理模块实现-第十一篇

概述通过Element UI抽屉和表单校验&增改接口合并实现应用管理Drawer 抽屉之前产品修改和添加是使用Dialog组件实现的&#xff0c;但这个组件有时候并不满足我们的需求, 比如表单很长, 亦或是你需要临时展示一些文档, Drawer 是可以从侧面弹出的一个层&#xff0c;可以容纳更…

Elasticsearch 深分页限制与解决方案

最近在准备面试&#xff0c;正把平时积累的笔记、项目中遇到的问题与解决方案、对核心原理的理解&#xff0c;以及高频业务场景的应对策略系统梳理一遍&#xff0c;既能加深记忆&#xff0c;也能让知识体系更扎实&#xff0c;供大家参考&#xff0c;欢迎讨论。在项目中遇到一个…

基于偏最小二乘法PLS多输入单输出的回归预测【MATLAB】

基于偏最小二乘法&#xff08;PLS&#xff09;多输入单输出的回归预测【MATLAB】 在科学研究和工程实践中&#xff0c;我们常常需要根据多个相关变量来预测一个关键结果。例如&#xff0c;根据气温、湿度、风速等多个气象因素预测空气质量指数&#xff0c;或根据多种原材料成分…

SQL Server核心架构深度解析

SQL Server 的体系结构是一个复杂但设计精密的系统&#xff0c;主要可以分为四大核心组件&#xff0c;它们协同工作以管理数据库、处理查询、确保数据安全与一致性。以下是其体系结构的核心组成部分&#xff1a; 核心组件&#xff1a;协议层 (Protocol Layer) 作用&#xff1a;…

Django REST Framework Serializer 进阶教程

1. 序列化器概述 在 Django REST Framework&#xff08;DRF&#xff09;中&#xff0c;序列化器&#xff08;Serializer&#xff09;用于将复杂的数据类型&#xff08;如模型实例&#xff09;转换为 JSON 格式&#xff0c;以便于 API 返回给客户端。此外&#xff0c;序列化器还…

面试问题详解十四:Qt 多线程同步【QSemaphore】讲解

在多线程开发中&#xff0c;经常需要控制多个线程对共享资源的访问数量。例如限制同时下载文件的数量、控制数据库连接池的连接使用等等。这时候&#xff0c;Qt 提供的 QSemaphore&#xff08;信号量&#xff09;就非常派得上用场。一、什么是 QSemaphore&#xff1f; QSemapho…