k8s集群搭建

k8s集群搭建

前期准备

1.关闭selinux

永久关闭selinux

sed -i 's/enforcing/disabled/g' /etc/selinux/config

更改后需重启系统

reboot
2.关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
3.关闭swap内存分区

永久关闭swap分区

echo vm.swappiness=0 >> /etc/sysctl.conf && sysctl -p
vim /etc/fstab

注释掉带有swap分区这行 (如下最后一行)

# /dev/mapper/centos-swap swap                    swap    defaults        0 0#
# /etc/fstab
# Created by anaconda on Thu Dec 14 09:33:15 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_geendata04-root /                       xfs     defaults        0 0
UUID=3e1fd9d5-dc1a-4d6f-ae48-8912cd4c1cde /boot                   xfs     defaults        0 0
#/dev/mapper/centos_geendata04-swap swap                    swap    defaults        0 0

修改完毕后需要重启系统

reboot
4.修改各个节点hostname

命令

hostnamectl set-hostname [hostname]分别为k8s-master、k8s-node1、k8s-node2
5.为每个节点添加host解析
echo "192.168.182.128 k8s-master" >> /etc/hosts && echo "192.168.182.132 k8s-node1" >> /etc/hosts && echo "192.168.182.133 k8s-node2" >> /etc/hosts
6.将桥接的 IPv4 流量传递到 iptables 的链
cat > /etc/sysctl.d/k8s.conf << EOF 
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

使配置生效

sysctl --system
7.同步时间
timedatectl set-timezone Asia/Shanghai
# 查看是否设置成功
timedatectl

8.添加kubernetes阿里云yum源

cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpgEOF

开始安装

1、安装docker(公开版20.10.17)
1、安装软件依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
2、设置仓库(阿里云)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装docker engine-community
yum install -y docker-ce docker-ce-cli containerd.io
4、启动docker(添加开机自启动)
systemctl start docker && systemctl enable docker
5、更改docker启动参数cgroups为systemd
vim /etc/docker/daemon.json内容如下
{"max-concurrent-downloads": 10,"max-concurrent-uploads": 20,"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://registry.cn-hangzhou.aliyuncs.com","https://registry.docker-cn.com"],"exec-opts": ["native.cgroupdriver=systemd"]
}

更改后需重启docker

systemctl daemon-reload && systemctl restart docker
2、安装kubeadm、kubectl、kubelet(1.20.2)
yum install -y kubeadm-1.20.2 kubelet-1.20.2 kubectl-1.20.2
3、初始化master节点(192.168.31.200节点执行)
 kubeadm init \
--apiserver-advertise-address=192.168.182.128 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.20.2 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 

执行完毕后,导入配置

mkdir -p $HOME/.kube 
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
4、工作节点加入集群

在master节点init完毕之后会有一行join命令,复制到各个节点去加入即可

kubeadm join 192.168.182.128:6443 --token 6f5p4j.ind40kpbnyu1b2pp      --discovery-token-ca-cert-hash sha256:876d50340929a551a4d7f9e882c7db76bda76ec6cb9e6ecf3e064445c4b95519

此时因为没有添加网络,所以执行kubectl get nodes 是节点状态异常,需要添加网络

5、安装网络插件(calico 3.18.0)
curl https://docs.projectcalico.org/v3.18/manifests/calico.yaml >> calico.yamlkubectl apply -f calico.yaml

至此k8s集群部署完毕,使用kubectl get nodes可以看到k8s节点状态都是就绪状态

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

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

相关文章

LabVIEW中进行步进电机的位置控制

在LabVIEW中进行步进电机的位置控制&#xff0c;通常涉及以下几个关键步骤&#xff1a;设置硬件、配置通信、编写控制算法和实施反馈控制。以下是一个详细的介绍。 硬件设置 步进电机&#xff1a;选择合适的步进电机&#xff0c;根据负载和应用需求选择适当的步数和转矩。 驱…

FL Studio21.2.8中文版让你的音乐创作如鱼得水

在音乐的世界里&#xff0c;我们都是探索者&#xff0c;追求着无尽的创新和可能性。而在这个过程中&#xff0c;我们往往会遇到各种挑战和困扰。如何快速高效地创作出满意的音乐作品&#xff1f;如何将我们的创意完美地呈现出来&#xff1f;这些问题可能一直困扰着你。今天&…

成都欣丰洪泰文化传媒有限公司助力品牌快速崛起

在当今数字化浪潮汹涌的时代&#xff0c;电商行业作为新经济的代表&#xff0c;正以其独特的魅力和无限的潜力&#xff0c;引领着商业模式的创新与变革。在这个充满机遇与挑战的领域里&#xff0c;成都欣丰洪泰文化传媒有限公司凭借其专业的电商服务能力和前瞻性的战略眼光&…

如何在.htaccess文件创建一个自定义404页面

本周有一个客户&#xff0c;购买Hostease的虚拟主机&#xff0c;询问我们的在线客服&#xff0c;如何在.htaccess文件创建一个自定义404页面&#xff1f;我们为用户提供相关教程&#xff0c;用户很快解决了遇到的问题。在此&#xff0c;我们分享这个操作教程&#xff0c;希望可…

NIFT和BMP批量互相转换(matlab)

前言&#xff1a;最近在做数据集&#xff0c;需要进行NIFT和BMP的批量互相转换。之前都是一张一张转换的&#xff0c;用Image J就能完成&#xff0c;但是最近数据太多了&#xff0c;所以得研究一下如何批量转换。 NIFT和BMP互相转换 NIFT和BMP介绍NIFTBMP 为什么要转换Matlab进…

MVC和MVVM

MVC Model层&#xff1a;用于处理应用程序数据逻辑的部分&#xff0c;通常负责在数据库中存取数据 View&#xff08;视图&#xff09;处理数据显示的部分。通常视图是依据模型数据创建的 Controller&#xff08;控制器&#xff09;是处理用户交互的部分。通常控制器负责从视…

从零开始学Vue3--环境搭建

1.搭建环境 下载nodejs nodejs下载地址 更新npm npm install -g npm 设置npm源&#xff0c;加快下载速度 npm config set registry https://registry.npmmirror.com 使用脚手架创建项目 npm create vuelatest 根据你的需要选择对应选项 进入新建的项目下载依赖 npm in…

Tasker+SendSilentMail实现钉钉自动打卡

Tasker 允许用户根据自定义的“配置文件”(Profiles)&#xff0c;在特定的“背景”(Contexts)下&#xff0c;执行指定的“任务”(Tasks)。以下是关于Tasker的详细介绍&#xff1a; 强大的自定义能力&#xff1a;用户可以根据自己的需求&#xff0c;创建各种配置文件和任务&…

【BUG】流式响应requests得到: ping - 和时间戳

前情提要 运行Langchain-Chatchat项目&#xff0c;使用自定义请求访问API Server流式输出 报错展示 b: ping - 2024-05-22 00:46:04.83252000:00\r\n\r\n报错原因 这通常是由于 Server-Sent Events (SSE) 实现中使用的“心跳”机制&#xff0c;以确保连接保持活跃。一些 SSE…

Java 在Word文档中添加、删除页面

在排版或者编辑Word文档时&#xff0c;可能会需要增加新页面或删除某个已有页面&#xff0c;以便更好地呈现内容。下面将介绍如何使用国产Java控件来实现在Word文档中增删页面的功能。 目录 Java 在Word文档末尾新增一页 Java 在Word文档指定位置插入一页 Java 删除Word文档…

百度ERNIE系列预训练语言模型浅析(4)-总结篇

总结&#xff1a;ERNIE 3.0与ERNIE 2.0比较 &#xff08;1&#xff09;相同点&#xff1a; 采用连续学习 采用了多个语义层级的预训练任务 &#xff08;2&#xff09;不同点&#xff1a; ERNIE 3.0 Transformer-XL Encoder(自回归自编码), ERNIE 2.0 Transformer Encode…

用Python实现办公自动化

&#x1f482; 个人网站:【 摸鱼游戏】【神级代码资源网站】【工具大全】&#x1f91f; 一站式轻松构建小程序、Web网站、移动应用&#xff1a;&#x1f449;注册地址&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交…

用Kotlin协程消灭安卓开发中的回调地狱

原创 Pony 拍码场 安卓原生开发的痛点 自Android平台推出以来&#xff0c;Java一直是开发Android应用的主要语言。尽管后来Kotlin成为了谷歌主推的编程语言&#xff0c;Java仍然被广泛使用&#xff0c;在Android开发中仍占有重要地位。从github的数据看&#xff0c;用Java写的…

洗地机什么品牌质量好?家用洗地机排行榜

一年一度的大促节又到了&#xff0c;各大电商平台和实体店纷纷推出力度不小的折扣活动&#xff0c;吸引着消费者的关注和购买欲望。很多家庭也趁着这个机会&#xff0c;购置一些智能家居产品来提升生活品质。其中&#xff0c;洗地机作为近年来发展迅速的明星产品&#xff0c;受…

Redis篇 哈希表在redis中的命令

哈希命令 一.哈希表的基本认识二. 哈希表在redis中的命令1.hset,hget2.hdel3.hkeys,hvals4.hexists5.hgetall6.hmget7.hlen8.hincrby和hincrbyfloat 一.哈希表的基本认识 在JAVA数据结构中&#xff0c;我们就已经接触到了哈希表&#xff0c; 在当时&#xff0c;我们主要用到的哈…

人工智能和大模型的区别

人工智能&#xff08;AI&#xff09;和大模型是两个相关但有区别的概念。理解它们之间的区别有助于更好地掌握现代科技的发展动态。 人工智能&#xff08;AI&#xff09; 人工智能&#xff08;Artificial Intelligence, AI&#xff09;是一个广义的概念&#xff0c;指的是通过…

React18 apexcharts数据可视化之折线图

基础折线图 import ApexChart from react-apexcharts;export function Basic() {// 数据序列const series [{name: "Desktops",data: [10, 41, 35, 51, 49, 62, 69, 91, 148]},]// 图表选项const options {// 图表chart: {height: 650,type: line,zoom: {enabled:…

springboot发送短信验证码,结合redis 实现限制,验证码有效期2分钟,有效期内禁止再次发送,一天内发送超3次限制

springboot结合redis发送短信验证码,实现限制发送操作 前言(可忽略)实现思路正题效果图示例手机号不符合规则校验图成功发送验证码示例图redis中缓存随机数字验证码&#xff0c;2分钟后失效删除redis缓存图验证码有效期内 返回禁止重复发送图验证码24小时内发送达到3次&#xf…

【Leetcode 206】 反转链表——此递归相当妙啊

题目 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;[5,4,3,2,1]示例 2&#xff1a; 输入&#xff1a;head [1,2] 输出&#xff1a;[2,1]示例 3&#xff1a; …

【机器学习300问】105、计算机视觉(CV)领域有哪些子任务?

计算机视觉作为人工智能的重要分支&#xff0c;发展至今已经在诸多领域取得显著的成果。在众多的计算机视觉任务中&#xff0c;图像分类、目标检测与定位、语义分割和实例分割是四个基本而关键的子任务&#xff0c;它们在不同的应用场景下扮演着重要角色。这四个子任务虽然各具…