『Kubernetes』在Linux中快速安装K8S集群

news2024/11/26 10:22:56

请添加图片描述
📣读完这篇文章里你能收获到

  • K8S安装全过程
  • 博主自己实操笔记带你跳过所有坑
  • 感谢点赞+收藏,避免下次找不到~

请添加图片描述

文章目录

  • 一、基本环境配置
    • 1. 关闭selinux
    • 2. 关闭swap分区或禁用swap文件
    • 3. 修改网卡配置
    • 4. 关闭防火墙
    • 5. 设置机器HostName
    • 6. 更新系统时间
  • 二、kubectl、kubeadm、kubelet的安装
    • 1. 添加Kubernetes的yum源
    • 2. 安装kubeadm,kubelet和kubectl
  • 三、部署Master节点
    • 1. 初始化Master节点
    • 2. 安装Calico网络插件
    • 3. 安装Flannel
    • 4. 设置开机自启动
    • 5. 查看节点初始化情况
    • 6. 如果出问题则重新初始化
  • 四、部署Node节点
    • 1. 初始步骤
    • 2. 初始化Node节点
    • 3. 设置开机自启动

请添加图片描述

博主环境:Centos7.9,K8S1.8.0

一、基本环境配置

1. 关闭selinux

setenforce 0

2. 关闭swap分区或禁用swap文件

swapoff -a    #临时关闭
free          #可以通过这个命令查看swap是否关闭了
vi /etc/fstab  #永久关闭 注释swap那一行(访问内存分区,k8s无法启动)

3. 修改网卡配置

$ vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
$ sysctl -p

4. 关闭防火墙

 systemctl stop firewalld
 systemctl disable firewalld

5. 设置机器HostName

这里设置为maste,其他节点需要自行定义,如node1,node2…

hostnamectl set-hostname master

6. 更新系统时间

# 同步时间(这一步必须做,否则后面安装flannel可能会有证书错误)
yum install ntpdate -y
ntpdate cn.pool.ntp.org

二、kubectl、kubeadm、kubelet的安装

1. 添加Kubernetes的yum源

  • 此处使用alibaba的镜像源
$ vi /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.gpg
	http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

2. 安装kubeadm,kubelet和kubectl

yum makecache fast 
yum install -y kubectl-1.18.0 kubeadm-1.18.0 kubelet-1.18.0 --nogpgcheck

image.png

请添加图片描述

三、部署Master节点

1. 初始化Master节点

# 有注释版本,执行COPY时请复制下面的无注释版,修改IP
kubeadm init \
--apiserver-advertise-address=192.168.8.103 \   # 换成自己master的IP
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.18.0 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16  # 使用flannel网络必须设置成这个cidrKUB
kubeadm init \
--apiserver-advertise-address=192.168.8.103 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.18.0 \
--service-cidr=10.1.0.0/16 \
--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


# 子节点需要加入的
kubeadm join 192.168.8.103:6443 --token hk8486.5em0jt93p7miilrh \
    --discovery-token-ca-cert-hash sha256:8b9b83a8e3d8ac2e3e5d88404ab73e94d3ff00c0bc61f3e3af4492d8eb4db482 

2. 安装Calico网络插件

 kubectl apply -f https://docs.projectcalico.org/v3.10/manifests/calico.yaml

3. 安装Flannel

# 需要等到coredns都Run起来了再安装
# 安装flannel(在master执行)
 // 1、在线安装
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
  • 如果无法连接,我这里已经下载好了,直接把文件下载,传到系统里面执行即可
  • 点击下载 kube-flannel.yml
// 2、离线安装
kubectl apply -f kube-flannel.yml

4. 设置开机自启动

systemctl enable kubelet.service
systemctl start kubelet.service

5. 查看节点初始化情况

[root@master ~]# kubectl get cs
NAME                 STATUS    MESSAGE             ERROR
etcd-0               Healthy   {"health":"true"}   
scheduler            Healthy   ok                  
controller-manager   Healthy   ok                  
[root@master ~]# kubectl get nodes
NAME     STATUS   ROLES    AGE   VERSION
master   Ready    master   53m   v1.18.0
[root@master ~]# kubectl get pods --all-namespaces
NAMESPACE     NAME                                       READY   STATUS    RESTARTS   AGE
kube-system   calico-kube-controllers-57546b46d6-8jkbc   1/1     Running   0          15m
kube-system   calico-node-nztgg                          1/1     Running   0          15m
kube-system   coredns-7ff77c879f-gq8f7                   1/1     Running   0          54m
kube-system   coredns-7ff77c879f-msb2g                   1/1     Running   0          54m
kube-system   etcd-master                                1/1     Running   0          54m
kube-system   kube-apiserver-master                      1/1     Running   0          54m
kube-system   kube-controller-manager-master             1/1     Running   0          54m
kube-system   kube-proxy-hzthl                           1/1     Running   0          54m
kube-system   kube-scheduler-master                      1/1     Running   0          54m

6. 如果出问题则重新初始化

kubeadm reset
rm -rf $HOME/.kube

请添加图片描述

四、部署Node节点

1. 初始步骤

  • 一、二全部执行一遍

2. 初始化Node节点

# 上面主节点返回的
kubeadm join 192.168.8.103:6443 --token hk8486.5em0jt93p7miilrh \
    --discovery-token-ca-cert-hash sha256:8b9b83a8e3d8ac2e3e5d88404ab73e94d3ff00c0bc61f3e3af4492d8eb4db482 

3. 设置开机自启动

systemctl enable kubelet.service
systemctl start kubelet.service

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

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

相关文章

Vue 2.x源码学习:数据响应式改造

众所周知,Vue是以数据驱动视图展示的,即Vue会监听数据的变化,从而自动重新渲染页面的结构。 Vue主要通过三步走来实现这个功能: 第一步是对数据进行响应式改造,即对数据的读写操作进行劫持; 第二步是对模…

字符数组编程题(C语言)

文章目录1、用字符%c的形式给一个字符数组赋初值,然后以字符串%s的形式输出2、用字符getchar()的形式给一个字符数组赋初值,然后以字符串puts)的形式输出4、从键盘上输入一串字符gets,然后输出%s5、从键盘输…

Mysql导出100万条数据,9种导出方法优缺点和速度、文件大小测试

这里写目录标题1.DBase文件2.文本文件3. CSV文件4.HTML文件5.Excel数据表低版本6.Excel文件2007年以后版本7.SQL脚本文件8.XML文件9.JSON文件总结这一次我主要就是想针对mysql导出的速度和文件大小进行优缺点测试,这次主要就是用上之前生成的天气表这是表里面的数据…

除夕New Year Eve,祝大家团圆幸福!

除夕,为岁末的最后一天夜晚,意为旧岁至此而除,另换新岁。New years Eve is the last night at the end of the year.which means that the old year will be removed and a new year will be replaced.除夕,在国人心中是具有特殊意义的&#…

第一章 TCP/IP 协议

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.什么是TCP/IP ​编辑 二.什么是协议 1.三要素 2.协议与标准区别 三.广…

中小型企业如何从企业内容管理 (ECM) 系统提供的工具中受益?

在当今快节奏的商业世界中,时间变得非常宝贵。团队越大,就越难有效地管理时间。但即使是中小型企业也可以从企业内容管理 (ECM) 系统提供的工具中受益。 ECM 系统使各种规模的企业能够通过数字化纸质文档、捕获电子文档和电子邮件、自动化文档驱动的流…

(转)Chrome的最小字体12px限制最终解决办法

相信不少做网站的用户会有这样一个问题,Chrome 默认最小字体是12px(最新版英文也有此问题),这个是 Chrome 为了更好显示中文设计的,但是这样一来就会出现某些上标、下标字体过大,影响用户体验。之前在开发H…

ue4c++日记2(继承|设置位置|对象移动)

目录 语句速查 静态网格定义 创建静态网格对象 设置对象位置 编辑器可编辑 编辑器可见 仅类默认值处可见 速览定义可查剩下 对象移动 1继承 例子 1.创建actor 2.命名和填写路径 小插曲 3.新建一个蓝图类继承上面创建的actor 4.其可蓝图化是因为创建的c类可蓝图化 5…

【算法基础】1.8离散化

文章目录离散化如何离散确定映射方式区间和当数据范围的跨度很大,但是数据很稀疏时,可以使用离散化。 离散化 如何离散 数据范围很大,但是并不是每个数字都会出现,就可以将原始数据按照顺序映射到一个小的数据范围。 确定映射方…

第五届字节跳动青训营 前端进阶学习笔记(二)JavaScript编码规范

文章目录1.前言2.写好JS的一些基本原则这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天 1.前言 本次课程主要讲解了有关JavaScript编码原则和代码优化的相关问题。 重点内容: HTML、CSS、JS各司其责具备正确性、扩展性、复用性的组件封装函数式编程思想代…

进程、线程及python的多线程编程

目录 一.进程、线程和并行执行 1.什么是进程、线程 注意 2.什么是并行执行 二.python的多线程编程 threading模块 语法 多线程编程的传参 演示 三.总结 一.进程、线程和并行执行 1.什么是进程、线程 现代操作系统比如Mac OS X,UNIX, Linux, Windows等,都是…

CSC|2023年艺术类人才培养特别项目解读及建议

目前国家留学基金委(CSC)官网已经发布了2023年艺术类人才培养特别项目通知,知识人网小编现将其选派工作流程、选派办法、申请材料及说明(访问学者、博士后)原文转载并加以解读、提出建议。知识人网解读及建议一、2023年…

新产品Digi XBee RR无线模块迁移指南

(咨询申请 - 上海皕科电子有限公司--专注物联网 登记后,可提供相关资料,购买XBee模块,有机会获得USB评估底板及相关中文资料,或者免费申请借用评估套件) 目录 一、简介 1、MicroPython 2、蓝牙 3、文件…

SpringBoot+easypol前后端分离实现excel导出(保姆级教程)

本篇博文目录1.后端2.前端(采用axios)3.运行效果1.后端 导入easypoi的依赖 <!--用来处理POL相关的操作:easypol--><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>4.2.0</version&…

Cadence OrCAD: 层次化设计中的电源和地符号

Cadence OrCAD: 层次化设计中的电源和地符号 层次化设计操作步骤&#xff1a;Cadence OrCAD: 层次化设计 Hierarchical Design 本文介绍一个小问题&#xff1a;分层设计中的电源和地符号的作用范围。 电源符号默认作用范围 OrCAD中电源和地符号默认是全局的&#xff0c;也就…

2023年1月中国数据库排行榜:OceanBase 持续两月登顶,前四甲青云直上开新局

一元复始&#xff0c;万象更新。 国产数据库在经历过耕获菑畲的一年后&#xff0c;产品、生态、人才队伍建设等都取得了重大的进展。2023年1月 墨天轮中国数据库流行度排行 火热出炉&#xff0c;本月排行榜“属性”列新增“多模型”&#xff0c;榜单前十名变动较小&#xff0c;…

基于springboot,vue影院订票系统

开发工具&#xff1a;IDEA服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8项目构建&#xff1a;maven数据库&#xff1a;mysql5.7系统用户前台和管理后台两部分&#xff0c;项目采用前后端分离前端技术&#xff1a;vue elementUI服务端技术&#xff1a;springbootmybatis项目功…

JAVA开发(Netty框架与NIO)

所谓IO即input和output的缩写&#xff0c;是对数据的流入和流出的一种抽象。其中NIONIO主要有三大核心部分&#xff1a;Channel&#xff08;通道&#xff09;&#xff0c;Buffer&#xff08;缓冲区&#xff09;,Selector&#xff08;选择器&#xff09;。Channel(通道)&#xf…

Day54 跨域CORS资源JSONP回调域名接管劫持

前言&#xff1a; #知识点&#xff1a; 1、子域名接管-检测&探针&利用 2、COSP跨域资源-检测&探针&利用 3、JSONP跨域回调-检测&探针&利用 #前置知识点&#xff1a; -同源策略(SOP)-“同源”包括三个条件&#xff1a;同协议 同域名 同端口 同源策…

C/C++之(五)洛谷刷题基础题 --- 新年好

学习之路&#xff0c;长路漫漫&#xff0c;写学习笔记的过程就是把知识讲给自己听的过程。 唯有热爱&#xff0c;可抵岁月漫长&#xff0c;唯有热爱&#xff0c;不畏世间无常&#xff01; 新的一年祝你大展宏“兔” 新的一年&#xff0c;大家记得不要忘记刷题(⊙o⊙)&#xff…