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

news2024/11/17 10:32:42

温故知新

  • 📚第一章 前言
    • 📗背景
    • 📗目的
    • 📗总体方向
  • 📚第二章 基本环境信息
    • 📗机器信息
    • 📗软件信息
    • 📗部署用户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 -m
                  total        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 -m
                  total        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
在这里插入图片描述
下载的贼慢…
在这里插入图片描述
已经过去一个半小时了,今天先到这吧,大暴雨快要来了,再不走走不掉了(又是一个充实的周末😂)请添加图片描述

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

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

相关文章

二分队列+决策单调性优化dp:P6246

https://www.luogu.com.cn/problem/P6246 决策单调性 若 d p i dp_i dpi​ 由 j j j 转移,则 d p i 1 dp_{i1} dpi1​ 转移点 k k k 满足 k ≥ j k\ge j k≥j 发现决策点满足单调,但遍历的点不满足单调,不能用双指针,考虑…

计算机组成原理学习笔记-精简复习版

一、计算机系统概述 计算机系统硬件软件 计算机硬件的发展: 第一代计算机:(使用电子管)第二代计算机:(使用晶体管)第三代计算机:(使用较小规模的集成电路)第四代计算机:(使用较大规模的集成电路) 冯诺依曼体系结构…

VSCode连接服务器

Pycharm连接服务器参考我的另一篇文章Pycharm远程连接服务器_pycharm进入服务器虚拟环境终端_Jumbo星的博客-CSDN博客 本质上Pycharm和VSCode都只是IDE,没有什么好坏之分。但是因为Pycharm连接服务器(准确来说是部署)需要买professional。而…

5 群起集群

1.在启动集群之前,先配置workers,有几个节点就配置几个 [atguiguhadoop102 hadoop]$ vim /opt/module/hadoop-3.1.3/etc/hadoop/workers在该文件中增加如下内容: hadoop102 hadoop103 hadoop104 注意:该文件中添加的内容结尾不允许有空格&a…

权限提升-手工-系统权限提升

权限提升基础信息 1、具体有哪些权限需要我们了解掌握的? 后台权限,网站权限,数据库权限,接口权限,系统权限,域控权限等 2、以上常见权限获取方法简要归类说明? 后台权限:SQL注入,数…

检测链表中是否存在环

题目、解析和代码 题目:给定一个单链表,判断其中是否有环的存在 解析:这里使用两个遍历速度不一样的结点进行判断,一个慢结点从首结点开始遍历,这个结点每次只遍历一个结点;一个快结点从第二个结点进行遍历…

设计模式之八:迭代器与组合模式

有许多方法可以把对象堆起来成为一个集合(Collection),比如放入数组、堆栈或散列表中。若用户直接从这些数据结构中取出对象,则需要知道具体是存在什么数据结构中(如栈就用peek,数组[])。迭代器…

WinPlan经营大脑:精准预测,科学决策,助力企业赢得未来

近年,随着国内掀起数字化浪潮,“企业数字化转型”成为大势所趋下的必选项。但数据显示,大约79%的中小企业还处于数字化转型初期,在“企业经营管理”上存在着巨大的挑战和风险。 WinPlan经营大脑针对市场现存的企业经营管理难题,提供一站式解决方案,助力企业经营管理转型…

设计模式--代理模式

笔记来源:尚硅谷Java设计模式(图解框架源码剖析) 代理模式 1、代理模式的基本介绍 1)代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象2)这样做的好处是…

数据结构--队列与循环队列

队列 队列是什么,先联想一下队,排队先来的人排前面先出,后来的人排后面后出;队列的性质也一样,先进队列的数据先出,后进队列的后出;就像图一的样子: 图1 如图1,1号元素是…

软件测试考试中的环路复杂度、线性无关路径的理解

题目如下&#xff0c;回答问题1至3 int GetMaxDay (int year ,int month){int maxday0; //1if (month>1 && month <12) { //2,3if (month2) { //4if (year %4 0 ) { //5if (year %100 0) { //6if (year %400 0) {//7maxday29; //8else //9maxda…

安防行业深度报告:技术创新与格局重构

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。通过运用云计算、人工智能等新技术&#xff0c;安防行业正经历从传统安防向 AI 智慧安防转型升级的过程。这种升级将改变传统安防只能事后查证、人工决策的劣势&#xff0c;使得全程监控、智能决策成为可能。通过运用后端云…

C/C++ 个人笔记

仅供个人复习&#xff0c; C语言IO占位符表 %d十进制整数(int)%ldlong%lldlong long%uunsigned int%o八进制整型%x十六进制整数/字符串地址%c单个字符%s字符串%ffloat&#xff0c;默认保留6位%lfdouble%e科学计数法%g根据大小自动选取f或e格式&#xff0c;去掉无效0 转义符表…

epoll() 多路复用 和 两种工作模式

1.epoll API 介绍 typedef union epoll_data {void *ptr;int fd;uint32_t u32;uint64_t u64; } epoll_data_t;struct epoll_event {uint32_t events; /* Epoll events */epoll_data_t data; /* User data variable */ };常见的Epoll检测事件&#xff1a;- EPOLLIN- EPOLLOUT- …

C#---第十九课:不同类型方法的执行顺序(new / virtual / common / override)

本文介绍不同类型的方法&#xff0c;在代码中的执行顺序问题&#xff1a; 构造方法普通方法&#xff08;暂用common代替&#xff09;、虚方法&#xff08;Virtual修饰&#xff09;、New方法&#xff08;new修饰&#xff09;三个优先级相同overide方法&#xff08;会替换virtual…

Arduino驱动TEMT6000传感器(光照传感器篇)

目录 1、传感器特性 2、硬件原理图 3、驱动程序 TEMT6000是一个三极管类型的光敏传感器,其光照强度和基极的电流成正比。用起来也相当简单,可以简单的连接该传感器的基极到模拟电压输入,通过简单的检测电压值就可以判断当前的光照强度。 1、

基于Linux操作系统的keepalived双机热备和keepalived+lvs(DR)基本配置操作

目录 keepalived双机热备 一、概述 &#xff08;一&#xff09;具体工作原理如下&#xff1a; &#xff08;二&#xff09;实验拓补 二、安装NFS、配置 1、第一台机器配置&#xff1a;NFS &#xff1a;192.168.11.101 2、更改配置文件 3、安装NFS进行目录共享 4、编辑…

花5分钟判断,你的Jmeter技能是大佬还是小白!

jmeter 这个工具既可以做接口的功能测试&#xff0c;也可以做自动化测试&#xff0c;还可以做性能测试&#xff0c;其主要用途就是用于性能测试。但是&#xff0c;有些公司和个人&#xff0c;就想用 jmeter 来做接口自动化测试。 你有没有想过呢&#xff1f; 下面我就给大家讲…

C# textBox1.Text=““与textBox1.Clear()的区别

一、区别 textbox.Text "" 和 textbox.Clear() 都可以用于清空文本框的内容&#xff0c;但它们之间有一些细微的区别。 textbox.Text "": 这种方式会将文本框的 Text 属性直接设置为空字符串。这样会立即清除文本框的内容&#xff0c;并将文本框显示为空…

git 基础入门

Git基础入门 Git是一个分布式 版本管理系统&#xff0c;用于跟踪文件的变化和协同开发。 版本管理&#xff1a;理解成档案馆&#xff0c;记录开发阶段各个版本 分布式&集中式 分布式每个人都有一个档案馆&#xff0c;集中式只有一个档案馆。分布式每人可以管理自己的档案…