走过的K8S坑

基本的docker命令:

docker 镜像 打包成文件

sudo docker save -o  打包后的文件名   {镜像ID}或者{镜像标签}

docker 改名:

docker tag ff281650a721 quay.io/coreos/flannel:v0.11.0-amd64

删除node节点

# master上执行
kubectl drain 节点名称 --delete-local-data --force --ignore-daemonsets
kubectl delete node 节点名称


# 节点执行:
kubeadm reset

节点重启

systemctl enable kubelet
systemctl restart kubelet 或者 service kubelet start

实例:node01

# master上执行
kubectl drain node01 --delete-local-data --force --ignore-daemonsets
kubectl delete node node01


# 节点执行:
kubeadm reset

使用kubeadm工具部署k8s-V1.13.3版本遇见的坑(使用镜像:CentOS7)

  1. 在部署k8s1.13.3的过程中,node节点flannel网络组件镜像pull不下来的情况(master节点的flannel镜像是已经下载下来了)。

    """
    主要的思路为:将master节点中flannel镜像打包成为文件,发送给node节点,然后node通过加载文件的方式将镜像还原。
    1. 将master节点中flannel镜像打包成为文件。
       docker save -o ./plf.tar  {镜像的ID}
    2. 发送到其他的node节点
    3. 还原镜像(node节点执行),同时需要把镜像打tag值
       docker load < {镜像文件} 或者  docker load --input {镜像文件}
       docker tag ff281650a721 quay.io/coreos/flannel:v0.11.0-amd64
    4. 在master节点上删除node节点
       详细步骤见上“删除node节点”
    5. 将node节点重新加入到集群中
    """
  2. note节点在加入集群时,一定要记住加上--ignore-preflight-errors=Swap的参数
  3. node节点反复添加之后,需要在添加之前清除一下node节点的网络。

    反复添加之后,master节点报错:

    走过的K8S坑_第1张图片

    因此需要在node节点执行如下操作:

    1. 重置kubernetes服务,重置网络。删除网络配置,link

    kubeadm reset      
    systemctl stop kubelet
    systemctl stop docker
    rm -rf /var/lib/cni/
    rm -rf /var/lib/kubelet/*
    rm -rf /etc/cni/
    ifconfig cni0 down
    ifconfig flannel.1 down
    ifconfig docker0 down
    ip link delete cni0
    ip link delete flannel.1
    systemctl start docker

    2. 再次加入到master集群中

转载于:https://www.cnblogs.com/plf-Jack/p/11256923.html

你可能感兴趣的:(走过的K8S坑)