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

【云原生】Kubernetes(k8s)最新版本详细保姆级安装教程

前言

Kubernetes简称k8s,是一个开源的,用于管理云平台中多个主机上的容器化的应用,k8s目标是让部署容器化的应用简单并且高效,k8s提供了应用部署,规划,更新,维护的一种机制。
本文是总结了在安装k8s过程中详细步骤。

Master节点安装

环境信息

  • 虚机配置2核4G以上
  • 可访问外网
  • 操作系统CentOS 7.6 x86架构的

系统工具及安全配置

安装常用系统工具

yum install -y nfs-utils wget

关闭防火墙

firewall-cmd --state          # 查看防火墙状态
systemctl stop firewalld      # 停止防火墙的服务
systemctl disable firewalld   # 禁止开机启动

关闭 SeLinux

setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config# 查看是否成功 
sestatus -vSELinux status:                 disabled

关闭 swap

swapoff -a# 将/etc/fstab文件中的Swap注释掉
yes | cp /etc/fstab /etc/fstab_bak
cat /etc/fstab_bak |grep -v swap > /etc/fstab
rm -rf /etc/fstab_bak

修改启动网络参数配置

# 修改 /etc/sysctl.conf
# 如果有配置,则修改
sed -i "s#^net.ipv4.ip_forward.*#net.ipv4.ip_forward=1#g"  /etc/sysctl.conf
sed -i "s#^net.bridge.bridge-nf-call-ip6tables.*#net.bridge.bridge-nf-call-ip6tables=1#g"  /etc/sysctl.conf
sed -i "s#^net.bridge.bridge-nf-call-iptables.*#net.bridge.bridge-nf-call-iptables=1#g"  /etc/sysctl.conf
sed -i "s#^net.ipv6.conf.all.disable_ipv6.*#net.ipv6.conf.all.disable_ipv6=1#g"  /etc/sysctl.conf
sed -i "s#^net.ipv6.conf.default.disable_ipv6.*#net.ipv6.conf.default.disable_ipv6=1#g"  /etc/sysctl.conf
sed -i "s#^net.ipv6.conf.lo.disable_ipv6.*#net.ipv6.conf.lo.disable_ipv6=1#g"  /etc/sysctl.conf
sed -i "s#^net.ipv6.conf.all.forwarding.*#net.ipv6.conf.all.forwarding=1#g"  /etc/sysctl.conf
# 可能没有,追加
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
echo "net.bridge.bridge-nf-call-ip6tables = 1" >> /etc/sysctl.conf
echo "net.bridge.bridge-nf-call-iptables = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.lo.disable_ipv6 = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding = 1"  >> /etc/sysctl.conf
# 执行命令以应用
sysctl -p

Docker环境安装

卸载历史的docker软件(如果不需要直接跳过)

yum remove -y docker \
docker-client \
docker-client-latest \
docker-ce-cli \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine

设置 docker 的 yum 源

# 设置 yum repository
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装最新版本的docker

yum install -y docker-ce docker-ce-cli containerd.io
mkdir /etc/docker || true
cat > /etc/docker/daemon.json <<EOF
{"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com"],"exec-opts": ["native.cgroupdriver=systemd"],"log-driver": "json-file","log-opts": {"max-size": "100m"},"storage-driver": "overlay2","storage-opts": ["overlay2.override_kernel_check=true"]
}
EOF

k8s安装

配置k8s的yum源

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[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.gpghttp://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

卸载旧版本的kubectl相关软件

yum remove -y kubelet kubeadm kubectl

安装kubelet、kubeadm、kubectl

# 将 ${xxx} 替换为 kubernetes 版本号,例如 1.19.0
yum install -y kubelet-${xxx} kubeadm-${xxx} kubectl-${xxx}

重启 docker,并启动 kubelet

systemctl daemon-reload
systemctl restart docker
systemctl enable kubelet && systemctl start kubelet
docker version

k8s 初始化

拉取 k8s 所需要的镜像

images=(
kube-apiserver:v1.23.5
kube-controller-manager:v1.23.5
kube-scheduler:v1.23.5
kube-proxy:v1.23.5
pause:3.6
etcd:3.5.1-0
coredns:v1.8.6
)for imageName in ${images[@]}; doecho ${imageName}docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageNamedocker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageNamedocker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
donedocker tag k8s.gcr.io/coredns:v1.8.6 k8s.gcr.io/coredns/coredns:v1.8.6docker rmi k8s.gcr.io/coredns:v1.8.6

Master 节点初始化

kubeadm config images list
docker tag k8s.gcr.io/coredns:v1.8.6 k8s.gcr.io/coredns/coredns:v1.8.6
docker rmi k8s.gcr.io/coredns:v1.8.6kubeadm init --apiserver-advertise-address 10.253.128.30 --kubernetes-version 1.23.5 --pod-network-cidr 10.244.0.0/16

slave 节点初始化

kubeadm join 10.253.128.30:6443 --token 9ubdhc.ylpx8i9pygp2fbka \--discovery-token-ca-cert-hash sha256:e89d0cab39a57a5addfb53f59e91b412f7035533f73e6c389f87beed4d4c3050

希望对正在查看文章的您有所帮助,记得关注、评论、收藏,谢谢您

相关文章:

【云原生】Kubernetes(k8s)最新版本详细保姆级安装教程

前言 Kubernetes简称k8s&#xff0c;是一个开源的&#xff0c;用于管理云平台中多个主机上的容器化的应用&#xff0c;k8s目标是让部署容器化的应用简单并且高效&#xff0c;k8s提供了应用部署&#xff0c;规划&#xff0c;更新&#xff0c;维护的一种机制。 本文是总结了在安…...

JVM - 类加载,连接和初始化

目录 类加载和类加载器 概述 类加载要完成的功能 加载类的方式 类加载器 类加载器的关系 类加载器说明 双亲委派模型 工作过程如下&#xff1a; 双亲委派模型说明&#xff1a; 破坏双亲委派模型&#xff1a; 类连接和初始化 类连接主要验证的内容 类连接中的解析…...

[carla]关于odometry坐标中的角度坐标系 以及 到地图的映射问题

1.获取车辆的Odometry原始信息 在carla中&#xff0c;通过订阅/carla/ego_vecle/odometry 可以查看车辆的全局位置信息,例如&#xff1a; > header: seq: 118872stamp: secs: 5946nsecs: 5720187frame_id: "map" child_frame_id: "ego_vehicle" pos…...

Python 正则表达式

正则表达式主要用来查找和匹配字符串的。 一、正在表达式基础 字符 描述 示例 TIY\ 示意特殊序列&#xff08;也可用于转义特殊字符&#xff09;如&#xff1a;空白字符 "\s" . 任何字符&#xff08;换行符除外&#xff09; "he..o" ^ 起始于 "^h…...

spark03-读取文件数据分区数量个数原理

代码val conf: SparkConf new SparkConf().setMaster("local").setAppName("wordcount")val sc: SparkContext new SparkContext(conf)val rdd: RDD[String] sc.textFile("datas/1.txt",2)rdd.saveAsTextFile("output")数据格式 &a…...

操作系统(day08)内存

存储单元 内存的几个基本概念 存储单元 内存地址从0开始&#xff0c;每个地址对应一个存储单元 存储单元大小根据计算机按照什么方式编址 按字节编址 则每个存储单元大小为一字节&#xff0c;即1B&#xff0c;即8个二进制位按字编址 看这个计算的字长是多少位&#xff0c;如…...

11- 聚类算法 (KMeans/DBSCAN/agg) (机器学习)

聚类算法 聚类算法和降维算法那都属于无监督算法。KMeans 是以一个值为中心, 然后所有其他点到该点距离最小值的累积和。 kmeans KMeans(n_clusters3) # n_clusters 分类数量 kmeans.fit(data.iloc[:,1:]) # 无监督&#xff0c;只需要给数据X就可以 DBSCAN 算法是…...

日日顺供应链|想要看清供应链发展趋势,先回答这三个问题

技术变革如何支撑供应链及管理服务的发展&#xff1f; 数字化与科技化开始承托供应链管理能力的升级与变革&#xff1f; 如何从客户需求的纬度反推供应链及管理服务的模式变革&#xff1f;在过去的三年中&#xff0c;我国的供应链企业经受了最为极端的挑战&#xff0c;但当下&a…...

5守护进程与线程

进程组 多个进程的集合&#xff0c;第一个进程就是组长&#xff0c;组长进程的PID等于进程组ID。 进程组生存期&#xff1a;进程组创建到最后一个进程离开(终止或转移到另一个进程组)。与组长进程是否终止无关。 一个进程可以为自己或子进程设置进程组 ID 相关函数 pid_t …...

EZ-Cube简易款下载器烧写使用方法

一、硬件连接 跟目标芯片接4根线 VCC、GND、TOOL、REST 四根线&#xff0c;如果板子芯片自己外接电源的&#xff0c;VCC 线可以不接。 二、 安装烧写软件和驱动 烧写软件&#xff1a;https://download.csdn.net/download/Stark_/87444744?spm1001.2014.3001.5503 驱动程序&a…...

sql server安装并SSMS连接

博主简介&#xff1a;原互联网大厂tencent员工&#xff0c;网安巨头Venustech员工&#xff0c;阿里云开发社区专家博主&#xff0c;微信公众号java基础笔记优质创作者&#xff0c;csdn优质创作博主&#xff0c;创业者&#xff0c;知识共享者,欢迎关注&#xff0c;点赞&#xff…...

Python_pytorch (二)

python_pytorch 小土堆pytotch学习视频链接 from的是一个个的包&#xff08;package) import 的是一个个的py文件(file.py) 所使用的一般是文件中的类(.class) 第一步实例化所使用的类,然后调用类中的方法&#xff08;def) Torchvision 数据集 数据集使用&#xff08;CI…...

java手机短信验证,并存入redis中,验证码时效5分钟

目录 1、注册发送短信账号一个账号 2、打开虚拟机&#xff0c;将redis服务端打开 3、创建springboot工程&#xff0c;导入相关依赖 4、写yml配置 5、创建controller层&#xff0c;并创建controller类 6、创建service层&#xff0c;并创建service类 7、创建工具类&#x…...

kubectl命令控制远程k8s集群(Windows系统、Ubuntu系统、Centos系统)

文章目录1. 本地是linux2. 本地是Windows1. 本地是linux 安装kubectl命令 法一&#xff1a;从master的/usr/bin目录下拷贝kubectl文件到本机/usr/bin目录下法二&#xff1a;GitHub下载kubectl文件 在家目录下创建.kube目录config文件 法一&#xff1a;将master上对应用户的~/.…...

【求解器-COPT】COPT的版本更新中,老版本不能覆盖的问题

【求解器-COPT】COPT的版本更新中&#xff0c;老版本不能覆盖的问题方法1方法2如果license还是找不到作者&#xff1a;刘兴禄 参考网址&#xff1a; COPT的下载和配置步骤如下&#xff1a; 教程 | Windows系统下如何安装COPT求解器并配置许可文件&#xff1a; https://zhuan…...

Vue3.0文档整理:一、简介

1.1:什么是vue&#xff1f; Vue是一款用于构建用户界面的javascript框架&#xff1b;它基于标准HTML、CSS和Javascript构建&#xff0c;并提供了一套声明式、组件化的编程模型&#xff0c;帮助你高效的开发用户界面。 1.2&#xff1a;MVVM工作原理 MVVM指的是model、view和vie…...

vue2 diff算法及虚拟DOM

概括&#xff1a;diff算法&#xff0c;虚拟DOM中采用的算法&#xff0c;把树形结构按照层级分解&#xff0c;只比较同级元素&#xff0c;不同层级的节点只有创建和删除操作。 一、虚拟DOM (1) 什么是虚拟DOM&#xff1f; 虚拟 DOM (Virtual DOM&#xff0c;简称 VDOM) 是一种…...

Ray和极客们的创新之作,2月18日来发现

所在论坛&#xff1a;数据库技术创新&云原生论坛分享时段&#xff1a;2.18 10:30-11:00分享主题&#xff1a;云原生数据库PieCloudDB &#xff1a;Unbreakable安全特性剖析分享嘉宾&#xff1a;王淏舟&#xff0c;拓数派资深研发工程师 由中国开源软件推进联盟PostgreSQL分…...

Dubbo 源码分析 – 集群容错之 Router

1. 简介 上一篇文章分析了集群容错的第一部分 – 服务目录 Directory。服务目录在刷新 Invoker 列表的过程中&#xff0c;会通过 Router 进行服务路由。上一篇文章关于服务路由相关逻辑没有细致分析&#xff0c;一笔带过了&#xff0c;本篇文章将对此进行详细的分析。首先&…...

行人检测(人体检测)3:Android实现人体检测(含源码,可实时人体检测)

行人检测(人体检测)3&#xff1a;Android实现人体检测(含源码&#xff0c;可实时人体检测) 目录 行人检测(人体检测)3&#xff1a;Android实现人体检测(含源码&#xff0c;可实时人体检测) 1. 前言 2. 人体检测数据集说明 3. 基于YOLOv5的人体检测模型训练 4.人体检测模型…...

【图像分类】基于PyTorch搭建LSTM实现MNIST手写数字体识别(单向LSTM,附完整代码和数据集)

写在前面: 首先感谢兄弟们的关注和订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌。 提起LSTM大家第一反应是在NLP的数据集上比较常见,不过在图片分类中,它同样也可以使用。我们以比较熟悉的 mnist…...

Kotlin 1.8.0 现已发布,有那些新特性?

文章目录**如何安装 Kotlin 1.8.0****如果您遇到任何问题****更多文章和视频**结语Kotlin 1.8.0 版本现已发布&#xff0c;以下是其部分最大亮点&#xff1a; JVM 的新实验性功能&#xff1a;递归复制或删除目录内容提升了 kotlin-reflect 性能新的-Xdebug编译器选项&#xff…...

likeshop单商户SaaS商城系统—无限多开,搭建多个商城

likeshop单商户SaaS商城系统&#xff1a;适用于多开&#xff08;SaaS&#xff09;、B2C、单商户、自营商城场景&#xff0c;完美契合私域流量变现闭环交易使用&#xff0c;系统拥有丰富的营销玩法&#xff0c;强大的分销能力&#xff0c;支持DIY多模板&#xff0c;前后端分离。…...

Bean(Spring)的执行流程和生命周期

Bean&#xff08;Spring&#xff09;的执行流程具体的流程就和我们创建Spring基本相似。启动 Spring 容器 -> 实例化 Bean&#xff08;分配内存空间&#xff0c;从无到有&#xff09; -> Bean 注册到 Spring 中&#xff08;存操作&#xff09; -> 将 Bean 装配到需要的…...

工作记录------PostMan自测文件导入、导出功能

工作记录------PostMan自测文件导入、导出功能 测试文件导出 背景&#xff1a;写了一个文件下载功能&#xff0c;是数据写到excel中&#xff0c;下载&#xff0c;使用PostMan点击send后&#xff0c;返回报文是乱码。 解决办法&#xff1a; 点击send下面的 send and Downlo…...

上海亚商投顾:沪指震荡上行 大消费板块全线走强

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。市场情绪三大指数今日震荡反弹&#xff0c;沪指全天低开高走&#xff0c;深成指、创业板指均涨超1%。工程机械板块集体大涨&a…...

linux中的图形化UDP调试工具

sokit freeware version: 1.3.1 (GPLv3) website: https://github.com/sinpolib/sokit/ 这是一个TCP / UDP数据包收发和传输工具 linux汉化 默认是英文版本的&#xff0c;如果想使用中文&#xff0c;把软件目录下的sokit.lan_rename重命令为sokit.lan再次打开软件就发现已经…...

前端react面试题指南

概述下 React 中的事件处理逻辑 抹平浏览器差异&#xff0c;实现更好的跨平台。避免垃圾回收&#xff0c;React 引入事件池&#xff0c;在事件池中获取或释放事件对象&#xff0c;避免频繁地去创建和销毁。方便事件统一管理和事务机制。 为了解决跨浏览器兼容性问题&#xff0…...

深入浅出原核基因表达调控(乳糖操纵子、色氨酸操纵子)

原核基因表达调控 前言 自然界里&#xff0c;能量时有时无&#xff0c;各种生命为了让自己能够活下去&#xff0c;需要适应环境&#xff0c;在不同的环境合成不同的蛋白质。 原核生物体内有很多细胞&#xff0c;细胞里面有很多蛋白质&#xff0c;但是这些蛋白质在这些细胞里…...

10分钟理解Mysql索引

一、索引介绍 索引是什么 官方介绍索引是帮助MySQL高效获取数据的数据结构。更通俗的说&#xff0c;数据库索引好比是一本书前面的目录&#xff0c;能加快数据库的查询速度。 一般来说索引本身也很大&#xff0c;不可能全部存储在内存中&#xff0c;因此索引往往是存储在磁盘…...

跨境电子商务网页制作与网站建设/网站关键词推广优化

文章目录常见的解决方案&#xff1a;常见问题1&#xff1a;常见问题2&#xff1a;问题描述:方案1:(本人平时遇到这问题的常规操作)方案2:方案3:方案4:方案5:方案6:脚本解决方案&#xff1a;原博客&#xff0c;点击这里IDEA中download源码失败的解决方法&#xff0c;亲测可行常见…...

wordpress 自动抓取/软文广告300字范文

题目&#xff1a;输入一个字符串&#xff0c;输出该字符串中对称的子字符串的最大长度。比如输入字符串“google”&#xff0c;由于该字符串里最长的对称子字符串是“goog”&#xff0c;因此输出4。 分析&#xff1a;可能很多人都写过判断一个字符串是不是对称的函数&#xff…...

网站app建设需要资源/广州seo服务公司

脚本编程知识点&#xff1a;3、脚本配置文件/etc/rc.d/init.d/服务脚本服务脚本支持配置文件&#xff1a;/etc/sysconfig/服务脚本同名的配置文件4、局部变量local VAR_NAME5、命令mktemp创建临时文件或目录mktemp /tmp/file.xx-d&#xff1a;创建为目录6、信号kill -SIGNAL PI…...

wordpress手册下载/怎样搭建网站

专题分纲目录 均为索引&#xff0c;本纲为&#xff1a;趋势 1 部分趋势 总纲链接 //元宇宙 XR设备、NFT、区块链、等与元宇宙相关的信息整合 元宇宙总纲链接&#xff1a;专题总纲目录 元宇宙 2 部分趋势信息整合 //Android、TensorFlow、Flutter、android studio工具、flu…...

网站制作代理/想要网站导航正式推广

题目&#xff1a; 恶魔猎手尤迪安野心勃勃.他背叛了暗夜精灵&#xff0c;率深藏在海底的那加企图叛变&#xff1a;守望者在与尤迪安的交锋中遭遇了围杀.被困在一个荒芜的大岛上。为了杀死守望者&#xff0c;尤迪安开始对这个荒岛施咒&#xff0c;这座岛很快就会沉下去&#xf…...

网站开发公司比较有名/南昌seo数据监控

原文地址&#xff1a;The how and why on React’s usage of linked list in Fiber to walk the component’s tree原文作者&#xff1a;Max Koretskyi译文出自&#xff1a;阿里云翻译小组译文链接&#xff1a;https://github.com/dawn-plex/translate/blob/master/articles/th…...