K8s init初始化中遇到的问题及解决方案

从error中信息提示可以获知,需要关闭swap分区,命令为:

swapoff –a

将提示信息保存到一个文件中(名字随意,本文取得是K8sDebug.txt),使用awk、grep、cut等命令过滤出需要的镜像版本,命令如下:

awk -F" " '{print $7}' K8sDebug.txt | grep -v "^$" | grep -v "connection" |grep -v "fatal"| cut -d ":" -f 1,2

获取结果如下:

图中标亮的为需要的镜像版本,需要依据镜像版本替换成国内的源,将上述高亮的版本信息存放到另一个文件中(K8sDebug2.sh),批量替换源地址,将k8s.gcr.io替换成registry.aliyuncs.com/google_containers命令如下:

sed -i 's/k8s.gcr.io/registry.aliyuncs.com\/google_containers/g'  K8sDebug2.sh

结果如下:

依据已经替换的结果拉取对应的镜像,命令如下:

for i in `cat K8sDebug2.sh`;do docker pull $i;done

查看镜像:

对拉取的镜像重新打tag,变成k8s.gcr.io/格式,脚本为K8sDebug3.sh,如下所示:

#!/bin/bash
docker tag registry.aliyuncs.com/google_containers/kube-apiserver:v1.15.3 k8s.gcr.io/kube-apiserver:v1.15.3
docker tag registry.aliyuncs.com/google_containers/kube-controller-manager:v1.15.3 k8s.gcr.io/kube-controller-manager:v1.15.3
docker tag registry.aliyuncs.com/google_containers/kube-scheduler:v1.15.3 k8s.gcr.io/kube-scheduler:v1.15.3
docker tag registry.aliyuncs.com/google_containers/kube-proxy:v1.15.3 k8s.gcr.io/kube-proxy:v1.15.3
docker tag registry.aliyuncs.com/google_containers/pause:3.1 k8s.gcr.io/pause:3.1
docker tag registry.aliyuncs.com/google_containers/etcd:3.3.10 k8s.gcr.io/etcd:3.3.10
docker tag registry.aliyuncs.com/google_containers/coredns:1.3.1 k8s.gcr.io/coredns:1.3.1

 并删除registry.aliyuncs.com/google_containers/*系列镜像,命令如下:

for i in `cat K8sDebug2.sh`;do docker rmi $i;done

 

 重新执行命令:

 kubeadm init --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=NumCPU

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值