当前位置:   article > 正文

离线安装 k8s 集群 kubeadmin方式_kubeadmin命令

kubeadmin命令

背景要求:公司线上环境由于某些原因不方便连接公网 但是想要部署k8s系统。

整体思路:先找一个可以连接外网的工作环境,部署一套k8s集群,然后在部署期间 下载对应的rpm包、导出k8s需要的docker 对应的镜像,然后把对应的包拷贝到离线环境,人工手动的去安装 ;

大体步骤如下:

1、服务集群基本设置

  1. # 关闭防火墙
  2. systemctl stop firewalld
  3. systemctl disable firewalld
  4. # 关闭selinux
  5. sed -i 's/enforcing/disabled/' /etc/selinux/config #永久
  6. setenforce 0 #临时
  7. # 关闭swap(k8s禁止虚拟内存以提高性能)
  8. sed -ri 's/.*swap.*/#&/' /etc/fstab #永久
  9. swapoff -a #临时
  10. # 在master添加hosts 一下是我的服务器集群信息,需要根据自己的实际情况去配置
  11. cat >> /etc/hosts << EOF
  12. 192.168.1.50 k8smaster
  13. 192.168.1.51 k8snode1
  14. 192.168.1.52 k8snode2
  15. EOF
  16. # 设置网桥参数
  17. cat > /etc/sysctl.d/k8s.conf << EOF
  18. net.bridge.bridge-nf-call-ip6tables = 1
  19. net.bridge.bridge-nf-call-iptables = 1
  20. EOF
  21. sysctl --system #生效
  22. # 时间同步
  23. timedatectl set-timezone Asia/Shanghai (设置时区)
  24. yum install ntpdate -y
  25. ntpdate time.windows.com
  26. # 离线安装docker 自行百度了,下面的是非离线方式
  27. 更新docker的yum源
  28. yum install wget -y
  29. wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
  30. 安装指定版本的docker:
  31. yum install docker-ce-19.03.13 -y
  32. #配置docker加速器
  33. 自行百度拉 我这是内网环境,也就不需要配置
  34. 然后重启服务

2、手动下载k8s 部署需要yum 安装包(kubelet kubeadm kubectl socat conntrack-tools) 到本地 

最好是找一台没有安装过以上命令的机器

然后通过 命令

yum install --downloadonly --downloaddir=./ kubelet kubeadm kubectl  socat conntrack-tools

把这些命令的rpm包下载到当前文件夹

然后把下载下来的rpm包 拷贝到每台内网服务器

通过 命令

rpm -ivh *.rpm --nodeps --force

去手动安装对应的命令

3、手动导入docker镜像

去已经装好的k8s集群里面 手动的把 master 、node 上的docker镜像 保存下来,拷贝到内网环境对应的服务,导入到对应的docker里面

1> 手动导出镜像 对应的路径地址 根据实际情况修改

  1. echo "导出k8s需要的docker镜像"
  2. IMGINFO=`docker images |awk '{print $1,$2,$3}'|sed 1d >> $TARDIR/tmp.txt`
  3. RESLIST=`/usr/bin/cat $TARDIR/tmp.txt |awk '{print $1}' `
  4. for i in $RESLIST
  5. do
  6. RESTAG=`docker images |grep "$i" |awk '{a=$1":"$2;print a }'`
  7. BAKNAME=`docker images |grep "$i" |awk '{a=$1":"$2;print a }'|sed 's/\//_/g'`
  8. /usr/bin/docker save $RESTAG -o $TARDIR/${BAKNAME}_`date +%Y%m%d`.tar >/dev/null 2>>$BAKLOGFILE
  9. done

2>导入命令

  1. echo "导入k8s需要的docker镜像"
  2. LIST=`/root/k8s-install/k8s-docker-images`
  3. for i in $LIST
  4. do
  5. /usr/bin/docker load -i '/root/k8s-install/k8s-docker-images/'$i
  6. doney
  7. 以下的操作就跟正常的部署k8s集群一样了

4、去k8s master 执行 init 命令 由于对应的命令已经安装成功,这时候就可以执行成功了

kubeadm init --apiserver-advertise-address=192.168.190.2 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.19.4 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16

5、去k8s node 节点执行 join 命令

。。

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号