使用kubeadm部署k8s集群

1、简介

K8s部署主要有两种方式:

  • 1、Kubeadm

  Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。

  • 2、二进制

   从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。

本文通过kudeadm的方式在centos7上安装kubernetes集群。

2、环境准备

(1)初始化配置

#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
#关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config 

#关闭swap

把/etc/fstab下的swap注释掉。

1

sed -ri 's/.*swap.*/#&/' /etc/fstab

#设置主机名

hostnamectl set-hostname k8s-master01
hostnamectl set-hostname k8s-worker01
hostnamectl set-hostname k8s-worker02

#在master添加hosts

cat > /etc/hosts << EOF
192.168.204.129 k8s-master01
192.168.204.130 k8s-worker01
192.168.204.131 k8s-worker02
EOF

#将桥接的IPV4流量传递到iptables的链:

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOFsysctl --system

#时间同步

yum install ntpdate -y
ntpdate time.windows.com

(2) 安装Docker

wget http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
yum -y install docker-ce
systemctl enable docker && systemctl start docker#配置镜像加速器sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://kd88kykb.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

(3)添加阿里云yum软件源

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

(4)安装kubeadm、kubelet和kubectl

 yum install -y kubelet-1.21.4 kubeadm-1.21.4 kubectl-1.21.4 systemctl enable kubelet

3、部署Kubernetes Master

kubeadm init \
--apiserver-advertise-address=192.168.204.129 \
--image-repository=registry.aliyuncs.com/google_containers \
--kubernetes-version=v1.21.4 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=172.16.0.0/16 \
--ignore-preflight-errors=all

安装成功

使用kubectl查看节点状态

4、部署Node节点

向集群添加新节点,执行kubeadm join命令即可。

kubeadm join 192.168.204.129:6443 --token 1g5b2s.sany5uo5w4op3hae \--discovery-token-ca-cert-hash sha256:0fc38e874b727a9a4c2118e562a0b941dde98fa6ecc4ec2a6161b7d70a3966e2 

journalctl -u kubelet 

5、部署容器网络(CNI)

找到k8s版本对应的calico

https://projectcalico.docs.tigera.io/archive/v3.20/getting-started/kubernetes/requirements

#下载calico.yaml,替换CALICO_IPV4POOL_CIDR
curl https://docs.projectcalico.org/archive/v3.20/manifests/calico.yaml -O calico.yaml
curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.0/manifests/calico-etcd.yaml -o calico.yaml
#通过CALICO_IPV4POOL_CIDR手动配置Pod子网范围
#   - name: CALICO_IPV4POOL_CIDR
#              value: "172.16.0.0/16"kubectl apply -f calico.yaml
kubectl get pods -n kube-system

6、测试kubernetes集群

在集群中创建一个pod,验证是否正常运行:

kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort
kubectl get pod,svc

7、部署Dashboard

下载,并增加 type: NodePort

https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.3/aio/deploy/recommended.yaml

kubectl apply -f recommended.yaml
kubectl get pod,svc -n kubernetes-dashboard

浏览器访问dashboard

创建service account 并绑定默认cluster-admin管理员集群角色:

1

2

3

4

5

6

#创建用户

kubectl create serviceaccount dashboard-admin -n kube-system

#用户授权

kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin

#获取用户token

kubectl describe  secret -n kube-system $(kubectl -n kube-system get secret|awk '/dashboard-admin/{print $1}')

使用token登录dashboard。

 

 

 

 

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

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

相关文章

828华为云征文|华为云Flexus云服务器X实例之openEuler系统下部署WordPress网站

828华为云征文&#xff5c;华为云Flexus云服务器X实例之openEuler系统下部署wordpress网站 前言一、Flexus云服务器X实例介绍1.1 Flexus云服务器X实例简介1.2 Flexus云服务器X实例特点1.3 Flexus云服务器X实例使用场景 二、WordPress介绍2.1 WordPress简介2.2 WordPress主要特点…

有什么免费好用的ai写作软件?2024帮助你快速进行写作的软件

有什么免费好用的ai写作软件&#xff1f;2024帮助你快速进行写作的软件 AI写作软件如今在提升写作效率、生成灵感、以及帮助完成复杂的写作任务方面表现得越来越出色。以下是五款免费且好用的AI写作软件&#xff0c;它们能够帮助你快速进行写作&#xff0c;无论是博客文章、市…

面试官:为什么 Redis 6.0 之后引入多线程?

大家好&#xff0c;我是大明哥&#xff0c;一个专注「死磕 Java」系列创作的硬核程序员。 回答 Redis 的性能瓶颈从来都不是 CPU&#xff0c;是网络I/O 和内存。 内存好解决&#xff0c;加机器内存和优化数据结构。 网路 I/O 的优化才是大头&#xff0c;因为读写网络的 read…

U盘格式化怎么办?这4款软件可以帮你进行数据恢复。

如果你的U 盘被格式化&#xff0c;里面的数据就会被清除掉了。有备份的话&#xff0c;就不用担心丢失那些重要的数据&#xff1b;如果没有备份&#xff0c;也有办法解决&#xff1b;可以用电脑自带的一些功能恢复&#xff0c;或者是使用专业的恢复软件。如果大家有需求&#xf…

【MTC拾取放置示例】将Connect中的最大目标偏差检查增加到1e-2,实现move to pick/move to place

问题描述 在运行Moveit2使用MTC构建拾取放置示例Pick and Place with MoveIt Task Constructor的时候出现报错 move to pick规划失败 “The computed trajectory is too short to detect jumps in joint-space. Need at least 10 steps, only got 2. Try a lower max_step”…

自带线充电宝哪个牌子质量好性价比高?口碑最好自带线充电宝

在如今这个快节奏的时代&#xff0c;手机等电子设备已经成为我们生活中不可或缺的一部分。然而&#xff0c;电量不足的困扰时常让我们陷入尴尬境地。自带线充电宝的出现&#xff0c;无疑为我们解决了这一难题。它不仅方便携带&#xff0c;无需再额外携带充电线&#xff0c;而且…

iphone16-iphone16pro原壁纸分享

iphone16-iphone16pro原壁纸分享 苹果公司在2024年9月10日的秋季新品发布会上正式推出了iPhone 16系列智能手机。以下是iPhone 16系列的主要特点和更新&#xff1a; 全新A18芯片&#xff1a;iPhone 16系列搭载了苹果最新的A18芯片&#xff0c;这款芯片专为苹果智能&#xff08;…

2024年CCPC网络赛K题题解 —— 取沙子游戏(gym105336K)

比较新的一类博弈题&#xff0c;考虑对因子的处理。题面&#xff1a; 在网络赛以前&#xff0c;我曾经做到过一道类似的题目&#xff1a; Bob和Alice和两堆石头&#xff0c;一堆有s1个&#xff0c;另一堆有s2个&#xff0c;然后Alice先手&#xff0c;每个人每次可以选择一堆石头…

【NVMe SSD寄存器、数据结构】NVMe Controller 重要寄存器、SSD内部跟NVMe相关的重要数据结构解析

前言 NVMe Controller会将一些重要的信息&#xff08;NVMe控制器的能力&#xff0c;状态&#xff0c;Admin SQ, CQ地址等&#xff09;直接放在NVMe寄存器中&#xff0c;另一部分&#xff08;跟SSD比较相关的&#xff09;信息会放置在SSD内部&#xff0c;并最终通过Admin NVMe …

UML的图及其他图补充

一、UML图 1.类图 ‌类图‌是统一建模语言&#xff08;UML&#xff09;中的一种静态结构图&#xff0c;主要用于描述软件系统的静态结构。它显示了模型中的类、类的内部结构以及它们与其他类的关系。类图是面向对象建模的主要组成部分&#xff0c;用于对系统的词汇进行建模、对…

C++day7

一、思维导图 二、模板类实现myStack和myQueue #include <iostream>using namespace std;template <typename T> class MyStack { private:T* arr;int capacity;int topIndex;public:MyStack(int size);~MyStack();void push(const T& value);void pop();T to…

无线通信 | 射频校准的概念、作用和步骤以及相关仪器

微信公众号上线&#xff0c;搜索公众号小灰灰的FPGA,关注可获取相关源码&#xff0c;定期更新有关FPGA的项目以及开源项目源码&#xff0c;包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 本节目录 一、射频校准 1、射频校…

面向物联网基础的智能农业环境的节能边缘-雾-云计算架构

这篇论文的标题是《Energy-Efficient Edge-Fog-Cloud Architecture for IoT-Based Smart Agriculture Environment》&#xff0c;作者是Hatem A. Alharbi和Mohammad Aldossary&#xff0c;发表在IEEE Access期刊上。论文的主要内容可以概括为以下几个部分&#xff1a; 摘要&am…

戏曲文化苑管理系统小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;操作日志管理&#xff0c;基础数据管理&#xff0c;公告管理&#xff0c;戏曲管理&#xff0c;用户管理&#xff0c;轮播图信息 微信端账号功能包括&#xff1a;系统首页&#…

vue 使用vue-quill-editor 富文本添加源码模式,查看源码功能和表格功能

今天接到个需求&#xff0c;在富文本中增加查看源码和增加表格功能&#xff0c;感觉这种功能手拿把掐&#xff0c;但是奈于平时沉迷于移动端有段时间没写pc了&#xff0c;看了下官方感觉一个头两个大&#xff0c;于是在茫茫文档中各种借鉴&#xff08;抄袭&#xff09;完成了功…

口袋微店多店铺管理解决方案:甜羊浏览器的应用

#### 前言 随着移动互联网的快速发展&#xff0c;口袋微店成为了众多商家首选的在线销售平台。然而&#xff0c;对于拥有多个口袋微店店铺的商家而言&#xff0c;如何高效地管理这些店铺成为了一大挑战。为了帮助商家解决这一难题&#xff0c;我们推荐使用甜羊浏览器&#xff…

局域网一套键鼠控制两台电脑(台式机和笔记本)

服务端&#xff08;有键盘和鼠标的电脑作为服务端&#xff09; 下载软件 分享文件&#xff1a;BarrierSetup-2.3.3.exe 链接&#xff1a;https://pan.xunlei.com/s/VO66rAZkzxTxVm-0QRCJ33mMA1?pwd4jde# 配置服务端 一&#xff0c; 二&#xff0c; 客户端屏幕名称一定要和…

携手浙商证券、华锐技术,共话交易技术的创新与应用

秉承“虚已者进德之基&#xff0c;求同存异谓之共赢”的理念&#xff0c;浙商证券联合非凸科技、华锐技术于8月28日在深圳举办了“量化机遇汇浙&#xff0c;交易技术共商”鑫管家私募沙龙纷享会。此次活动汇聚了众多优秀管理人与资方代表&#xff0c;分享前沿观点&#xff0c;探…

机器学习-逻辑回归原理及其公式

逻辑回归&#xff08;Logistic Regression&#xff09;是一种广泛应用于分类任务的统计学方法&#xff0c;尤其是在二分类问题中表现尤为突出。尽管它的名字中包含“回归”&#xff0c;但实际上逻辑回归是一种分类算法。逻辑回归的目标是预测一个样本属于某一类别的概率&#x…

链表题目训练

https://leetcode.cn/problems/remove-linked-li​​​​​​st-elements/description/第一题&#xff1a;移除链表元素 https://leetcode.cn/problems/remove-linked-li​​​​​​st-elements/description/ 第二题&#xff1a;反转链表 https://leetcode.cn/problems/reve…