openEuler 22.04使用yum源最快速度部署k8s 1.20集群

本文目的

openEuler的官方源里有kubernetes 1.20,使用yum源安装是最快部署一个k8s集群的办法

硬件环境
主机名 系统 架构 ip
master openEuler release 22.03 (LTS-SP2) arm 192.168.3.11
edge openEuler release 22.03 (LTS-SP2) arm 192.168.3.12
device openEuler release 22.03 (LTS-SP2) arm 192.168.3.14
master节点部署

安装k8s基础组件

bash 复制代码
# 关闭防火墙及swap
swapoff -a
systemctl stop firewalld && systemctl disable firewalld
# 安装docker(18.09)
dnf install -y docker
systemctl enable docker && systemctl start docker
# 安装kubernetes(1.20)
dnf install -y kubernetes-kubeadm kubernetes-kubelet kubernetes-master
# 安装k8s依赖
dnf install -y conntrack
systemctl enable kubelet.service && systemctl start kubelet.service
# 初始化k8s集群
# --image-repository:指定要使用的镜像仓库,指定为aliyun镜像加速下载
# --kubernetes-version:k8s版本,openEuler仓库目前只有1.20.2这一个版本
# --pod-network-cidr:Pod网络的地址范围
# --service-cidr:Service的网络地址范围
# --cri-socket:如需指定其他容器引擎,可以加这个如--cri-socket=/var/run/isulad.sock
kubeadm init --apiserver-advertise-address=192.168.3.11 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.20.2 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16

集群初始化完成,保留屏幕出现的join命令

bash 复制代码
kubeadm join 192.168.3.11:6443 --token bl02x4.bow5nrt50fnudxrq \
    --discovery-token-ca-cert-hash sha256:34083d0cd5ecc38150eeb184663fcb0fcfbd8095f5efd46fe01520fe4a03ff93

环境变量配置

bash 复制代码
# 配置环境变量
vi /etc/profile
# 在文件底部追加
export KUBECONFIG=/etc/kubernetes/admin.conf
# 应用改变
source /etc/profile

安装网络组件flannel

bash 复制代码
# 安装cni插件
dnf install -y containernetworking-plugins
# containerd容器运行时 cni相关文件默认路径在/usr/libexec/cni
# flannel 默认读取/opt/cni/bin路径
# 拷贝相关文件
mkdir -p /opt/cni/bin
cp /usr/libexec/cni/* /opt/cni/bin/
# 下载kube-flannel.yml文件放置到 /opt/yaml/kube-flannel.yml
# kube-flannel.yml文件链接:https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl apply -f /opt/yaml/kube-flannel.yaml
# 下载两个flannel的镜像(docker.io/flannel/flannel:v0.26.2,docker.io/flannel/flannel-cni-plugin:v1.6.0-flannel1)并导入
docker load -i flannel_master.tar
docker load -i flannel_cni.tar

验证效果

bash 复制代码
# 查看节点状态,此时应该只有一个节点且节点处于ready状态
kubectl get nodes
node节点部署
bash 复制代码
# 关闭防火墙及swap
swapoff -a
systemctl stop firewalld && systemctl disable firewalld
# 安装docker(18.09)
dnf install -y docker
systemctl enable docker && systemctl start docker
# 安装kubernetes(1.20)
dnf install -y kubernetes-kubeadm kubernetes-kubelet kubernetes-master
# 安装k8s依赖
dnf install -y conntrack
systemctl enable kubelet.service && systemctl start kubelet.service
# 安装cni插件
dnf install -y containernetworking-plugins
# containerd容器运行时 cni相关文件默认路径在/usr/libexec/cni
# flannel 默认读取/opt/cni/bin路径
# 拷贝相关文件
mkdir -p /opt/cni/bin
cp /usr/libexec/cni/* /opt/cni/bin/
# 下载两个flannel的镜像(docker.io/flannel/flannel:v0.26.2,docker.io/flannel/flannel-cni-plugin:v1.6.0-flannel1)并导入
docker load -i flannel_master.tar
docker load -i flannel_cni.tar

使用上面的join命令加入集群

bash 复制代码
kubeadm join 192.168.3.11:6443 --token bl02x4.bow5nrt50fnudxrq     --discovery-token-ca-cert-hash sha256:34083d0cd5ecc38150eeb184663fcb0fcfbd8095f5efd46fe01520fe4a03ff93

验证集群加入成功

bash 复制代码
# 查看节点状态,此时节点都处于ready状态
kubectl get nodes
相关推荐
阿里云云原生33 分钟前
FunctionAI 图像生成:简化从灵感到 API 调用的每一步
云原生
喂完待续44 分钟前
【序列晋升】31 Spring Cloud App Broker 微服务时代的云服务代理框架
spring·spring cloud·微服务·云原生·架构·big data·序列晋升
pwj去战斗吧2 小时前
k8s+jenkins+harbor构建Devops平台
kubernetes·jenkins·devops
ChaITSimpleLove3 小时前
零代码入侵:Kubernetes 部署时自动注入 kube-system UID 到 .NET 9 环境变量
kubernetes·.net·环境变量·uid·kube-system·集群环境唯一id
無名之輩4 小时前
Nvidia Device Plugin入门三之volume mount策略
kubernetes
Lin_Aries_04216 小时前
使用阿里云容器镜像服务 ACR
linux·阿里云·docker·云原生·centos·云计算
Twilight-pending6 小时前
计算机系统性能、架构设计、调度策略论文分类体系参考
人工智能·云原生·分类·数据挖掘
zzz.107 小时前
【Kubernetes知识点】CRD客户资源定义及Gateway
云原生·容器·kubernetes
AKAMAI15 小时前
Queue-it 为数十亿用户增强在线体验
人工智能·云原生·云计算
逍遥浪子~16 小时前
docker实践(一)
运维·docker·容器