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
相关推荐
小猪咪piggy3 小时前
【微服务】(4) 负载均衡
微服务·云原生·架构
岚天start5 小时前
KubeSphere在线安装单节点K8S集群
docker·容器·kubernetes·k8s·kubesphere·kubekey
Yyyy4825 小时前
标签Labels、Scheduler:调度器、k8s污点与容忍度
开发语言·kubernetes
xyhshen5 小时前
记录一次K8S跨命名空间访问 xxx.xxx.svc.cluster.local 类似内部服务不通的问题
云原生·容器·kubernetes
栗子~~5 小时前
shell-基于k8s/docker管理容器、监控模型训练所消耗的最大CPU与最大内存脚本
docker·容器·kubernetes
海鸥815 小时前
在k8s中部署seaweedfs,上传文件到seaweedfs方法
云原生·容器·kubernetes
半梦半醒*5 小时前
k8s——pod详解2
linux·运维·docker·容器·kubernetes·负载均衡
AAA小肥杨5 小时前
K8s从Docker到Containerd的迁移全流程实践
docker·容器·kubernetes
DARLING Zero two♡5 小时前
云原生基石的试金石:基于 openEuler 部署 Docker 与 Nginx 的全景实录
nginx·docker·云原生
阿里云云原生6 小时前
云效「AI 智能评审」,先锋体验官招募活动正式启动,赢取极客专属好礼!
云原生