Kubeasz工具快速部署K8Sv1.27版本集群(二进制方式)

server/2025/3/28 4:46:20/

文章目录

    • 一、基本信息
    • 二、服务器初始化操作
    • 三、使用Kubeasz部署K8S集群
    • 四、验证集群

一、基本信息

1、部署需要满足前提条件:

  • 注意1:确保各节点时区设置一致、时间同步;
  • 注意2:确保在干净的系统上开始安装;
  • 注意3:关闭防火墙、SElinux限制;
  • 注意4:涉及到的主机SSH免密登入。

2、服务器信息如下:

由于仅仅只是演示kubeasz工具快速部署K8S集群,所以本次实验采用单Master、单Node架构,详细如下:

序号IP地址角色组件信息
116.32.15.116K8S 控制节点K8S 控制节点相关组件、ETCD
216.32.15.200K8S 工作节点K8S 工作节点相关组件

二、服务器初始化操作

1、关闭防火墙

systemctl disable firewalld --now
setenforce 0
sed  -i -r 's/SELINUX=[ep].*/SELINUX=disabled/g' /etc/selinux/config

2、时间同步

yum -y install ntpdate
ntpdate ntp1.aliyun.com

添加定时同步 每天凌晨1点自动同步时间:

echo "0 1 * * * ntpdate ntp1.aliyun.com" >> /var/spool/cron/root
crontab -l

3、免密登入

ssh-keygen  # 生产密钥对ssh-copy-id 16.32.15.116
ssh-copy-id 16.32.15.200

三、使用Kubeasz部署K8S集群

1、下载项目源码、二进制及离线镜像

export release=3.5.0
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
chmod +x ./ezdown

2、下载离线包到本地(可能受网络因素影响会很慢,建议下载一份放到/etc/kubeasz目录下,后续走离线部署)

./ezdown -D

3、容器化运行kubeasz

./ezdown -S
docker exec -it kubeasz ezctl new k8s-01 # 创建新集群 k8s-01
sed -i 's/^INSTALL_SOURCE.*$/INSTALL_SOURCE: "offline"/g' /etc/kubeasz/example/config.yml  # 离线部署方式

4、修改hosts文件

vim /etc/kubeasz/clusters/k8s-01/hosts[etcd]
16.32.15.116[kube_master]
16.32.15.116 k8s_nodename='master-01'[kube_node]
16.32.15.200 k8s_nodename='worker-01'

5、执行ansible剧本,安装K8S集群

source ~/.bashrc
dk ezctl setup k8s-01 all

如下图表示无误:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

四、验证集群

1、查看集群节点信息

kubectl get nodes

在这里插入图片描述

2、查看Pod信息

kubectl get pods -A

在这里插入图片描述

3、创建Deployment资源,验证是否可以运行成功

导入镜像(工作节点执行)

注意:由于网络原因,我这边使用本地导入镜像方式。

ctr -n k8s.io image import ng18.tar.gz
crictl image|grep nginx*

在这里插入图片描述

创建deployment资源(控制节点执行)

cat test-nginx.yamlapiVersion: apps/v1
kind: Deployment
metadata:name: my-app
spec:replicas: 3selector:matchLabels:app: my-apptemplate:metadata:labels:app: my-appspec:containers:- name: nginx-containerimage: nginx:1.18.0imagePullPolicy: IfNotPresentports:- containerPort: 80kubectl apply -f test-nginx.yaml 

查看创建Pod状态

kubectl get pods  -o wide -w

在这里插入图片描述


http://www.ppmy.cn/server/176967.html

相关文章

Linux 终端操作核心组合键

一、终端操作核心组合键 组合键功能描述使用场景示例Ctrl C强制终止当前正在运行的前台进程停止卡死的命令(如 ping)Ctrl D1. 发送 EOF(文件结束符) 2. 退出当前终端会话退出 bash 或 python 交互环境Ctrl Z暂停当前进程并放入…

Gitlab服务器数据迁移及版本升级

公司目前使用的GITLAB服务器,docker方式部署,GITLAB版本为13.11.0,由于版本太老存在安全漏洞,原服务器还部署了其他应用,不方便做升级操作,解决思路是将数据迁移新版本的gitlab服务器。 由于gitlab数据备份…

Word 小黑第40套

对应大猫43 主题 -浏览主题 -选择W样式标准文件就行 1级段落和2级段落(用项目符号不影响原本段落文字符号 颜色修改为自动) 整段变红的 不是把光标定位到红色字体那里 要选择几个红色字体 再创建样式 插入的空白页一定要是下一页,不能插空白…

Git(12)GitLab持续集成(CICD)

Git(12)之GitLab持续集成(CI/CD) Author: Once Day Date: 2025年3月18日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章可查看专栏: Git使用记录_Once_day的博…

对接OpenAI 4O RealTime实现语音实时翻译

目录 资源获取后端实现ffmpeg处理音频文件 前端实现效果 资源获取 OpenAI官网Azure OpenAI 我这里用的是第二种,从Azure上获取的模型资源,想要从这获取得先注册Azure,并添加OpenAI资源,并且部署OpenAI 4O RealTime模型&#xff0…

Git笔记(5):GIT停止跟踪已提交的文件

例如:你误将 node_modules 或 logs 等目录提交到了 Git,后来添加到 .gitignore 但发现 Git 仍在跟踪它们, 此时需要: # 从暂存区移除全部文件(保留本地文件) git rm -r --cached . # 重新暂存需要的文件(.gitignore 已…

去中心化交易所与中心化交易所的差异

在2025年数字货币市场爆发式增长的背景下,去中心化交易所(DEX)与中心化交易所(CEX)的竞争已从技术维度延伸至金融治理范式层面。两者的差异不仅体现在资产托管方式,更折射出对金融权力分配、风险控制逻辑和…

SpringBoot的启动原理?

大家好,我是锋哥。今天分享关于【SpringBoot的启动原理?】面试题。希望对大家有帮助; SpringBoot的启动原理? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Spring Boot的启动原理主要是通过 SpringApplication 类来…