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

K8S最新版本集群部署(v1.28) + 容器引擎Docker部署(上)

温故知新

  • 📚第一章 前言
    • 📗背景
    • 📗目的
    • 📗总体方向
  • 📚第二章 基本环境信息
    • 📗机器信息
    • 📗软件信息
    • 📗部署用户kubernetes
  • 📚第三章 Kubernetes各组件部署
    • 📗安装kubectl
      • 📕确认系统架构
      • 📕关闭防火墙、swap、selinux
      • 📕通过curl 下载 kubectl

🔼上一集:win11+vmware17+centos7.9环境搭建

*️⃣主目录:温故知新专栏

🔽下一集:K8S最新版本集群部署(v1.28) + 容器引擎Docker部署(下)

📚第一章 前言

📗背景

之前部署过dolphinscheduler3.1.8,看页面增加了K8S模块,所以想着部署一下K8S,学习一下,而且海豚调度也提供了K8S部署方式,经过一番了解,发现部署起来好像挺复杂,但是昨天虚拟机都搭建好了,放弃也不合适,所以干呗!
在这里插入图片描述
在这里插入图片描述

📗目的

部署K8S集群;部署Docker容易相关服务

📗总体方向

参照官网Kubernetes 文档,主要就是安装kubeadm、kubelet、kubectl三个组件
在这里插入图片描述

📚第二章 基本环境信息

📗机器信息

使用renxiaozhao01(192.168.17.17)、renxiaozhao02(192.168.17.18)、renxiaozhao03(192.168.17.19)这三台机器(网上建议都是内存不要低于4G),后面简称r1,r2,r3,其中r1作为master,r2、r3作为slave
在这里插入图片描述

📗软件信息

采用最新发布版本v1.28
在这里插入图片描述

📗部署用户kubernetes

一般情况下,Kubernetes的安装和配置需要在主机的操作系统级别进行,而这些操作通常需要root权限才能执行。因此,建议使用具有root权限或者sudo权限的用户来进行Kubernetes的安装和配置(自己的虚拟机直接用root用户就行了,但是博主有强迫症)。

  • 创建sudo用户kubernetes:
    在这里插入图片描述
    [root@renxiaozhao01 ~]# useradd kubernetes -d /home/kubernetes
    [root@renxiaozhao01 ~]# passwd kubernetes
    更改用户 kubernetes 的密码 。
    新的 密码:
    无效的密码: 密码包含用户名在某些地方
    重新输入新的 密码:
    passwd:所有的身份验证令牌已经成功更新。
    [root@renxiaozhao01 ~]# 
    [root@renxiaozhao01 ~]# echo 'kubernetes  ALL=(ALL)  NOPASSWD: ALL' >> /etc/sudoers
    [root@renxiaozhao01 ~]# 
    [root@renxiaozhao01 ~]# sudo su - kubernetes
    [kubernetes@renxiaozhao01 ~]$ 
    [kubernetes@renxiaozhao01 ~]$ sudo -v
    [kubernetes@renxiaozhao01 ~]$ 
    

📚第三章 Kubernetes各组件部署

📗安装kubectl

官网提供了安装步骤
kubectl是Kubernetes的命令行工具,用来管理Kubernetes集群,方便用户管理Kubernetes资源。
kubectl是Kubernetes的标准CLI。由于Kubernetes是一个高度自主的系统,所以kubectl的特点在于它可以用多种方式进行扩展,可以使用插件来添加新的功能。

kubectl支持多种操作系统,包括Linux、Windows和MacOS

📕确认系统架构

按照官网安装步骤,需要确认系统架构,因为安装路径不一样
在这里插入图片描述

通过uname -m或者lscpu |grep Architecture命令可以确认系统架构是x86还是arm

[root@renxiaozhao01 ~]# uname -m
x86_64
[root@renxiaozhao01 ~]# lscpu |grep Architecture
Architecture:          x86_64
[root@renxiaozhao01 ~]# 
[root@renxiaozhao01 ~]# 

📕关闭防火墙、swap、selinux

  • 关闭防火墙(可能会干扰集群内部的网络通信)

    [root@renxiaozhao01 ~]# systemctl stop firewalld.service
    [root@renxiaozhao01 ~]# 
    [root@renxiaozhao01 ~]# systemctl status firewalld.service
    [root@renxiaozhao01 ~]# systemctl disable firewalld.service
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    [root@renxiaozhao01 ~]# 
    

    其中 systemctl disable firewalld.service是永久关闭防火墙,防止后面重启虚拟机,防火墙被重新启动,带来麻烦
    在这里插入图片描述
    后续都是在线安装,关闭防火墙是为了防止网络不通

  • 关闭swap(可能导致性能下降,甚至是应用程序的奔溃,关键关联之后,之前的应用会不会受影响)
    在这里插入图片描述

    [root@renxiaozhao01 ~]# free -mtotal        used        free      shared  buff/cache   available
    Mem:           7802         267        7316          11         218        7287
    Swap:          8063           0        8063
    [root@renxiaozhao01 ~]# 
    [root@renxiaozhao01 ~]# swapoff -a
    [root@renxiaozhao01 ~]# 
    [root@renxiaozhao01 ~]# free -mtotal        used        free      shared  buff/cache   available
    Mem:           7802         261        7322          11         218        7292
    Swap:             0           0           0

    永久关闭:修改/etc/fstab,注释掉/dev/mapper/centos-swap swap这一行,重启虚拟机生效(reboot

    [root@renxiaozhao01 ~]#  vi /etc/fstab
    [root@renxiaozhao01 ~]# cat /etc/fstab#
    # /etc/fstab
    # Created by anaconda on Sun Aug 27 03:09:28 2023
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/centos-root /                       xfs     defaults        0 0
    UUID=438599e1-70c9-4f89-a777-20b60c0501ed /boot                   xfs     defaults        0 0
    /dev/mapper/centos-home /home                   xfs     defaults        0 0
    #/dev/mapper/centos-swap swap                    swap    defaults        0 0
    [root@renxiaozhao01 ~]# 
  • 关闭selinux(可能干扰容器与宿主机之间的交互,导致意外的权限问题):修改vi /etc/sysconfig/selinuxSELINUX=enforcing改为SELINUX=disabled
    在这里插入图片描述
    看状态没变化:SELinux status: enabled,需要重启机器才能生效,执行reboot或者shutdown -r now
    在这里插入图片描述

📕通过curl 下载 kubectl

切换kubernetes用户,通过curl下载安装包:curl -LO https://dl.k8s.io/release/v1.28.1/bin/linux/amd64/kubectl
在这里插入图片描述
下载的贼慢…
在这里插入图片描述
已经过去一个半小时了,今天先到这吧,大暴雨快要来了,再不走走不掉了(又是一个充实的周末😂)请添加图片描述

相关文章:

K8S最新版本集群部署(v1.28) + 容器引擎Docker部署(上)

温故知新 📚第一章 前言📗背景📗目的📗总体方向 📚第二章 基本环境信息📗机器信息📗软件信息📗部署用户kubernetes 📚第三章 Kubernetes各组件部署📗安装kube…...

生产环境部署与协同开发 Git

目录 一、前言——Git概述 1.1 Git是什么 1.2 为什么要使用Git 什么是版本控制系统 1.3 Git和SVN对比 SVN集中式 Git分布式 1.4 Git工作流程 四个工作区域 工作流程 1.5 Git下载安装 1.6 环境配置 设置用户信息 查看配置信息 二、git基础 2.1 本地初始化仓库 ​编辑…...

Qt/C++编写视频监控系统80-远程回放视频流

一、前言 远程回放NVR或者服务器上的视频文件,一般有三种方式,第一种是调用厂家的SDK,这个功能最全,但是缺点明显就是每个厂家的设备都有自己的SDK,只兼容自家的设备,如果你的软件需要接入多个厂家的&…...

用于设计和分析具有恒定近心点半径的低推力螺旋轨迹研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

MongoDB - 构造复杂查询条件执行查询

文章目录 1. 构造 keyword 的查询条件2. 构造 threatSubType 的查询条件3. 相应的实体类 /*** 查询白名单详情** param offset 第几页开始* param limit 每页显示的最大值* param keyword 模糊搜索值* param order 排序方式(升序/降序…...

如何从ChatGPT中获得最佳聊天对话效果

从了解ChatGPT工作原理开始,然后从互动中学习,这是一位AI研究员的建议。 人们利用ChatGPT来撰写文章、论文、生成文案和计算机代码,或者仅仅作为学习或研究工具。然而,大多数人不了解它的工作原理或它能做什么,所以他…...

深入浅出:手把手教你实现单链表

一、什么是链表 链表是一种链状数据结构。简单来说,要存储的数据在内存中分别独立存放,它们之间通过某种方式相互关联。 如果我们使用C语言来实现链表,需要声明一个结构体作为链表的结点,结点之间使用指针关联。 二、单向链表的结…...

vite 打包项目后访问显示空白页的问题,开发环境正常,生产环境无报错。

有没有可能, 你跟我遇到同样的问题 白屏的写法 const routes [{path: /,component: import(../views/index.vue),} ]正确的写法 const routes [{path: /,component: () > import(../views/index.vue),} ]有时候方向很重要,当在错误的方向上无脑冲…...

打造成功的砍价营销大解析,销量飙升

砍价活动是吸引顾客的一种有效方式,可以帮助提高销量和提升品牌知名度。在乔拓云平台上,我们提供了一套简单易用的工具,让您能够轻松地制作一个成功的砍价活动。下面,我将详细介绍具体步骤,让您能够轻松上手。 第一步&…...

【Flink进阶】- Flink kubernetes operator 常用的命令

目录 1、应用程序管理 (1)提交 Flink 应用程序 (2)查看 Flink 应用程序列表...

ASP.NET Core 的日志系统

ASP.NET Core 提供了丰富日志系统。 可以通过多种途径输出日志,以满足不同的场景,内置的几个日志系统包括: Console,输出到控制台,用于调试,在产品环境可能会影响性能。Debug,输出到 System.Di…...

android13(T) 以太网设置工具类

13 版本的以太网设置和以前版本有所变动,在 AS 中就能直接调用对应 API 将 build.gradle 版本修改 compileSdkVersion 31, 即可直接调用 EthernetManager 相关, 设置静态等方法可以通过反射调用设置。 以下是核心设置静态和动态参数工具类&#xff0c…...

电脑报错提示xinput1_3.dll缺失怎么办?xinput1_3.dll丢失的简单恢复方案

今天,我将为大家分享一个与我们日常工作息息相关的话题——xinput1_3.dll丢失的4种解决方法。在我们的日常工作和生活中,电脑出现问题是常有的事,而xinput1_3.dll丢失则是其中较为常见的一种问题。那么,什么是xinput1_3.dll?它为…...

unity 之参数类型之引用类型

文章目录 引用类型引用类型与值类型的差异 引用类型 在Unity中,引用类型是指那些在内存中存储对象引用的数据类型。以下是在Unity中常见的引用类型的介绍: 节点(GameObject): 在Unity中,游戏对象&#xff…...

SpringBoot自定义工具类—基于定时器完成文件清理功能

直接复制粘贴既可!! import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.io.File; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneOff…...

安卓设置混淆后,gson报错解决方法

一,设置开启混淆release {minifyEnabled truezipAlignEnabled trueshrinkResources trueproguardFiles getDefaultProguardFile(proguard-android-optimize.txt), proguard-rules.pro } 二,混淆的文件中,对gson相关类不进行混淆,否…...

WPF实战项目十四(API篇):登录注册接口

1、新建UserDto.cs public class UserDto : BaseDto{private string userName;/// <summary>/// 用户名/// </summary>public string UserName{get { return userName; }set { userName value;OnPropertyChanged(); }}private string account;/// <summary>…...

10个免费PPT下载资源网站分享

PPT超级市场https://pptsupermarket.com/ PPT超级市场是一个完全免费的PPT模板下载网站&#xff0c;不需要注册登录&#xff0c;点击下载就能直接使用。 叮当设计https://www.dingdangsheji.com/ 叮当设计是一个完全免费的PPT模板下载网站&#xff0c;每一套PPT的质量都很高。除…...

SpringCloud入门——微服务调用的方式 RestTemplate的使用 使用nacos的服务名初步(Ribbon负载均衡)

目录 引出微服务之间的调用几种调用方法spring提供的组件 RestTemplate的使用导入依赖生产者模块单个配置的情况多个配置的情况没加.yaml的报错【报错】两个同名配置【细节】 完整代码config配置主启动类controller层 消费者模块进行配置restTemplate配置类controller层 使用na…...

Python基础篇(16):python中__new__方法

一、__new__方法的定义 __new__() 方法是一种负责创建 类实例 的 静态方法 二、__new__方法的作用 在内存中为对象分配空间返回对象的引用 三、__new__方法的使用 创建对象时自动调用__new__方法&#xff0c;并且是在__init__初始化方法之前被调用Python解释器获得对象的引…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

centos 7 部署awstats 网站访问检测

一、基础环境准备&#xff08;两种安装方式都要做&#xff09; bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣&#xff08;LeetCode&#xff09; 思路 使用两个栈&#xff1a;一个存储重复次数&#xff0c;一个存储字符串 遍历输入字符串&#xff1a; 数字处理&#xff1a;遇到数字时&#xff0c;累积计算重复次数左括号处理&#xff1a;保存当前状态&a…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...