当前位置: 首页 > news >正文

Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版)

Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版)

文章目录

  • Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版)
      • 一.环境准备
        • 1.服务器准备
        • 2.环境配置
        • 3.设置主机名
        • 4.修改国内镜像源地址
        • 5.配置时间同步
        • 6.配置内核转发及网桥过滤
      • 二.容器运行时Containerd安装(所有节点)
        • 1.apt源安装
        • 2.二进制安装文件方法
        • 3.配置Containerd镜像加速等
      • **注意**:
      • 三.K8S集群部署
        • 1.集群软件的apt源准备
        • 2.K8S集群软件的安装
        • 3.K8S集群初始化
        • 4.K8S集群网络插件Calico部署
      • 四.部署应用测试集群是否安装成功

一.环境准备

1.服务器准备

服务器信息(此处为同一运营商的服务器,并且处于同一网络组中)如本地搭建的服务器则需要保证在同一内网中,且最好关闭防火墙。

角色主机名称IPKubernetes版本
masterk8s-master1192.168.0.2v1.28.2
node1k8s-node1192.168.0.3v1.28.2
node2k8s-node2192.168.0.4v1.28.2

为什么要用Containerd?
1.Docker Engine 没有实现 CRI, 而这是容器运行时在 Kubernetes 中工作所需要的。 为此,必须安装一个额外的服务 cri-dockerd。 cri-dockerd 是一个基于传统的内置 Docker 引擎支持的项目, 它在 1.24 版本从 kubelet 中移除。

2.不直接兼容 CRI:Docker 使用自己的运行时逻辑,与 Kubernetes的 CRI 不完全兼容。

3.性能和复杂性:Docker 包含许多 Kubernetes 不需要的额外功能(如镜像构建、CLI 工具),相比专注的运行时(如 CRI-O 或 Containerd)更重。
4.Containerd 是一个通用容器运行时,是 Docker 的核心组件之一,后来独立成为一个开源项目。它同样支持 Kubernetes,通过 CRI 插件(cri-Containerd)与 Kubernetes 集成.且被被广泛应用于生产环境(如 AWS EKS、Google GKE)

2.环境配置

确保每个节点上的MAC地址和product_uuid的唯一性,因为某些虚拟机的地址可能会重复。

#查看MAC地址命令
ip link
#校验product_uuid
sudo cat /sys/class/dmi/id/product_uuid

如图,eth0网卡下的,link/ether后面的就是Mac地址。

image-20241218171946878

此处输出的就是product_uuid

image-20241218172255562

3.设置主机名

根据机器的规划,分布设置三台主机名为k8s-master1、k8s-node1和k8s-node2。

#修改配置文件方式,
vi /etc/hostname
##文件内容为:k8s-master1或k8s-node1#命令行方式,临时修改
# 设置 master 主机名
hostnamectl set-hostname k8s-master1 && bash
# 设置 worker 主机名
hostnamectl set-hostname k8s-node1 && bash
hostnamectl set-hostname k8s-node2 && bash
4.修改国内镜像源地址

改为华为的镜像源为例子

  • 备份镜像源文件

    sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
    
  • 修改sources.list文件,将http://archive.ubuntu.comhttp://security.ubuntu.com替换成http://repo.huaweicloud.com

    sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
    
5.配置时间同步

采用ntpdate命令进行时间校对,设置Crontab定时任务进行定时校对。

#安装工具
sudo apt install ntpdate
#配置Crontab定时任务
crontab -e
#添加如下内容: 0 */1 * * * ntpdate time1.aliyun.com

image-20241218173016645

6.配置内核转发及网桥过滤
  • 添加配置文件
cat << EOF | tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF
  • 加载模块

    modprobe overlay
    modprobe br_netfilter
    
  • 添加网桥过滤及内核转发配置文件

    cat  <<EOF | tee /etc/sysctl.d/k8s.conf
    net.bridge.bridge-nf-call-iptables  = 1
    net.bridge.bridge-nf-call-ip6tables = 1
    net.ipv4.ip_forward                 = 1
    EOF#然后执行
    sysctl -p /etc/sysctl.d/k8s.conf
    

    如果上述配置执行之后,执行sysctl net.ipv4.ip_forward输出和下图不一致。则需手动执行sysctl -w net.ipv4.ip_forward=1

    image-20241218173952554

  • 安装Ipset及ipvsadm

    sudo apt -y install ipset ipvsadm
    
  • 配置ipvsadm模块,添加需要添加的模块

    cat  << EOF | tee /etc/modules-load.d/ipvs.conf
    ip_vs
    ip_vs_rr
    ip_vs_wrr
    ip_vs_sh
    nf_conntrack
    EOF
    
  • 加载模块脚本

    cat << EOF | tee ipvs.sh > /dev/null &&

相关文章:

Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版)

Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版) 文章目录 Kubeadm+Containerd部署k8s(v1.28.2)集群(非高可用版)一.环境准备1.服务器准备2.环境配置3.设置主机名4.修改国内镜像源地址5.配置时间同步6.配置内核转发及网桥过滤二.容器运行时Containerd安装(所有节点)…...

取子串(指针)

#include <stdio.h> #include <string.h>char* substr(char *s, int startloc, int len) {static char result[51]; // 定义一个足够大的静态数组来存储结果static char result1[] {N,U,L,L,\0};int i, j;// 检查startloc是否在字符串的范围内if (startloc < 1…...

Linux系列之如何更换Centos yum源?

系列博客专栏&#xff1a; JVM系列博客专栏SpringBoot系列博客 环境 Centos7Xshell7 问题描述 最近安装了一个虚拟机&#xff0c;准备用来学习&#xff0c;不过使用yum命令安装一些软件&#xff0c;不过使用这个命令时候&#xff0c;提示 Cannot find a valid baseurl fo…...

过滤器和拦截器的区别详解

文章目录 过滤器和拦截器的区别详解1. 来源不同2. 触发时机不同3. 实现原理不同4. 支持的项目类型不同5. 使用场景不同6. 核心区别总结**总结** 过滤器和拦截器的区别详解 在 Web 开发中&#xff0c;过滤器&#xff08;Filter&#xff09; 和 拦截器&#xff08;Interceptor&a…...

centos使用mkisofs构建无人值守镜像(附官方学习文档)

安装mkisofs yum install -y mkisofs 挂载镜像并确认 并拷贝文件(/mnt 为我们的工作目录) 1.3 准备自动应答文件(保存为 ins.ks) 修改系统引导 实际上就是添加inst.ks 这个引导参数 传递应答文件 传统模式引导 UEFI模式引导 打包镜像 通用选项 -v&#xff1a;启用详细模式&a…...

Pyside6+qml+Qtcreator项目实战

Pyside6+qml+Qtcreator项目实战 B站视频教程,进去后记得点赞。最终运行效果: PYTHON and QT QUICK - Custom Buttons With QML And JavaScript - [MODERN GUI]-#012 开发环境: 1、Qt 6.7.2 2、Pyside6 3、Python 3.11.4 4、Windows 10 原视频是用的Qt5,我这里采用Qt6重新…...

秒鲨后端之MyBatis【1】环境的搭建和核心配置文件详解

​ 别忘了请点个赞收藏关注支持一下博主喵&#xff01;&#xff01;&#xff01;! ! ! Mybatis简介 MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下&#xff…...

编译原理复习---目标代码生成

适用于电子科技大学编译原理期末考试复习。 1. 目标代码 是目标机器的汇编代码或机器码&#xff0c;在本课程中指的是类似于汇编代码的一种形式&#xff0c;由一条条的指令构成目标代码。 抽象机指令格式&#xff1a;OP 目的操作数&#xff0c;源操作数。 我们要做的&…...

Winnows基础(2)

Target 了解常见端口及服务&#xff0c;熟练cmd命令&#xff0c;编写简单的 .bat 病毒程序。 Trail 常见服务及端口 80 web 80-89 可能是web 443 ssl心脏滴血漏洞以及一些web漏洞测试 445 smb 1433 mssql 1521 oracle 2082/2083 cpanel主机管理系统登陆&#xff08;国外用的…...

酒蒙子骰子小程序系统

酒蒙子流量变现小程序小游戏 后端tp8 前端uniapp 会员变现 分销推广 流量主 …...

网络安全防范

实践内容 学习总结 PDR&#xff0c;$$P^2$$DR安全模型。 防火墙&#xff08;Firewall&#xff09;&#xff1a; 网络访问控制机制&#xff0c;布置在网际间通信的唯一通道上。 不足&#xff1a;无法防护内部威胁&#xff0c;无法阻止非网络传播形式的病毒&#xff0c;安全策略…...

重拾设计模式--组合模式

文章目录 1 、组合模式&#xff08;Composite Pattern&#xff09;概述2. 组合模式的结构3. C 代码示例4. C示例代码25 .应用场景 1 、组合模式&#xff08;Composite Pattern&#xff09;概述 定义&#xff1a;组合模式是一种结构型设计模式&#xff0c;它允许你将对象组合成…...

红米Note 9 Pro5G刷小米官方系统

前言 刷机有2种方式&#xff1a;线刷 和 卡刷。 线刷 线刷&#xff1a;需要用电脑刷机工具&#xff0c;例如&#xff1a;XiaoMiFlash.exe&#xff0c;通过电脑和数据线对设备进行刷机。 适用场景&#xff1a; 系统损坏无法开机。恢复官方出厂固件。刷机失败导致软砖、硬砖的…...

渗透测试-前端加密分析之RSA加密登录(密钥来源服务器)

本文是高级前端加解密与验签实战的第6篇文章&#xff0c;本系列文章实验靶场为Yakit里自带的Vulinbox靶场&#xff0c;本文讲述的是绕过RSA加密来爆破登录。 分析 这里的代码跟上文的类似&#xff0c;但是加密的公钥是通过请求服务端获取的 http://127.0.0.1:8787/crypto/js/…...

踩准智能汽车+机器人两大风口,速腾聚创AI+机器人应用双线爆发

日前&#xff0c;RoboSense速腾聚创交出了一份亮眼的Q3财报。受到多重利好消息影响&#xff0c;其股价也应势连续大涨。截止12月9日发稿前&#xff0c;速腾聚创股价近一个月内累计涨幅已超88%。 财务数据方面&#xff0c;速腾聚创在今年前三季度实现总收入约11.3亿元&#xff0…...

YOLOv8全解析:高效、精准的目标检测新时代——创新架构与性能提升

目录 前言 一、模型介绍 二、网络结构 Backbone改进 特征增强网络(neck) 检测头(head) 其它部分 三、Loss计算 四、性能表现 五、YOLOv8使用详解 添加模型 其它部分 创建数据集 数据标注 模型训练 模型预测 六、YOLOv8总结 前言 YOLO&#xff08;You Only Lo…...

【Python】使用Selenium 操作浏览器 自动化测试 记录

【自动化】Python SeleniumUtil 工具 开启开发者模式 自动安装油猴用户脚本等-CSDN博客文章浏览阅读389次。【自动化】Python SeleniumUtil 工具。https://blog.csdn.net/G971005287W/article/details/144565691?spm1001.2014.3001.5501【学习记录】浏览器指纹相关学习记录&am…...

GDPU软件工程习题(挖空版)

答案&#xff1a; GDPU软件工程24期末复习-CSDN博客 1.8 练习题 一、填空题 软件工程是一门综合性的交叉学科&#xff0c;它涉及计算机学科、( )学科、( )学科和( )学科。软件工程研究的主要内容是 ( )、( )、( ) 三个方…...

【活动邀请·深圳】深圳COC社区 深圳 AWS UG 2024 re:Invent re:Cap

re:Invent 是全球云计算领域的顶级盛会&#xff0c;每年都会吸引来自世界各地的技术领袖、创新者和实践者汇聚一堂&#xff0c;分享最新的技术成果和创新实践&#xff0c;深圳 UG 作为亚马逊云科技技术社区的重要组成部分&#xff0c;将借助 re:Invent 的东风&#xff0c;举办此…...

Hutool工具包的常用工具类的使用介绍

前言 Hutool 是一个轻量级的 Java 工具类库&#xff0c;提供了非常丰富的工具方法&#xff0c;可以大大减少开发时的重复性工作。它的目标是让 Java 开发更简单、更高效。Hutool 提供了多种常用功能&#xff0c;以下是一些常用工具类的使用介绍&#xff1a; 1. StrUtil - 字符…...

RoboStudio6.08学习记录(2)

工业机器人工作站的构建1.在文件功能选项卡中&#xff0c;选择“创建”&#xff0c;单击“创建”或“空工作站”&#xff0c;创建一个新的工作站&#xff0c;如图2-1所示。图2-1 创建新工作站2.在“基本”功能选项卡中&#xff0c;打开“ABB模型库”&#xff0c;如图2-2所示。…...

通义千问2.5-7B-Instruct环境部署:Docker镜像快速启动教程

通义千问2.5-7B-Instruct环境部署&#xff1a;Docker镜像快速启动教程 你是不是也遇到过这样的情况&#xff1a;想试试最新的大模型&#xff0c;但一看到“编译依赖”“CUDA版本匹配”“量化配置”就头皮发麻&#xff1f;下载模型权重、配置环境、调试端口……光是准备就花掉半…...

QOwnNotes版本控制完全指南:掌握Git集成的笔记历史管理

QOwnNotes版本控制完全指南&#xff1a;掌握Git集成的笔记历史管理 【免费下载链接】QOwnNotes QOwnNotes is a plain-text file notepad and todo-list manager with Markdown support and Nextcloud / ownCloud integration. 项目地址: https://gitcode.com/gh_mirrors/qo/…...

Qwen2.5-VL视觉定位效果展示:Ollama输出坐标+置信度+层级关系JSON

Qwen2.5-VL视觉定位效果展示&#xff1a;Ollama输出坐标置信度层级关系JSON 最近在玩一个挺有意思的AI模型——Qwen2.5-VL-7B-Instruct。这可不是普通的聊天机器人&#xff0c;它是一个能“看懂”图片&#xff0c;还能把看到的东西用结构化数据告诉你的视觉多模态模型。 简单…...

数仓分层设计避坑指南:从ODS到ADS,我的团队踩过的5个典型雷区与优化方案

数仓分层设计避坑指南&#xff1a;从ODS到ADS&#xff0c;我的团队踩过的5个典型雷区与优化方案 三年前接手公司数据中台重构项目时&#xff0c;我们团队曾天真地认为数仓分层不过是教科书式的流程化操作。直到某次大促期间&#xff0c;凌晨三点被警报吵醒——ADS层报表查询超时…...

ipa 覆盖算法参数调优实战:从理论到可视化验证

1. IPA覆盖算法核心参数解析 在机器人路径规划领域&#xff0c;IPA覆盖算法因其高效性和适应性被广泛应用。这个算法的核心在于几个关键参数的协同作用&#xff0c;它们直接影响着机器人的覆盖路径质量和执行效率。让我们先来认识这些"幕后操控者"&#xff1a; cover…...

Phi-3-mini-4k-instruct-gguf保姆级教程:从CSDN GPU平台访问到结果导出全流程

Phi-3-mini-4k-instruct-gguf保姆级教程&#xff1a;从CSDN GPU平台访问到结果导出全流程 1. 认识Phi-3-mini-4k-instruct-gguf Phi-3-mini-4k-instruct-gguf是微软Phi-3系列中的轻量级文本生成模型GGUF版本。这个模型特别适合处理问答、文本改写、摘要整理以及简短创作等任务…...

Electron实战:将你的网页应用打包成桌面客户端

在当今数字化时代&#xff0c;网页应用已经渗透到我们工作和生活的方方面面。有时我们仍然需要一个桌面客户端来提供更稳定的运行环境、离线功能或更好的系统集成。Electron作为一个强大的跨平台框架&#xff0c;能够帮助开发者轻松将网页应用打包成桌面客户端。无论是开发效率…...

基于S7-1200PLC的物业供水控制系统设计》 PLC触摸屏,图纸,博图16 一、设计任务书...

基于S7-1200PLC的物业供水控制系统设计》 PLC触摸屏&#xff0c;图纸&#xff0c;博图16 一、设计任务书 1.自动工作时&#xff0c;当用水量少&#xff0c;压力增高&#xff0c;K 接通&#xff0c;此时可延时30s后撤除1台水泵工作,要求先工作的水泵先切断;当用水量多时,压力降低…...

基于BANG语言的Sigmoid算子开发与PyTorch集成实战指南

1. BANG语言与Sigmoid算子开发基础 第一次接触寒武纪BANG语言时&#xff0c;我被它类似CUDA但更简洁的语法设计惊艳到了。这种专为MLU硬件设计的异构编程语言&#xff0c;通过在C/C基础上扩展并行计算特性&#xff0c;让开发者能更高效地利用寒武纪芯片的算力资源。 BANG核心语…...