使用etcd备份/还原将k8s集群从一个AWS帐户迁移到另一个结果到未检测到的节点

我们使用KOPS在AWS中部署了一个小型集群。 出于组织目的,我们会将一个k8s集群迁移到另一个AWS账户。 我尝试使用etcd备份/还原进行迁移,但是还原后,不再使用kubectl get nodes列出节点,并且所有pod都处于挂起状态。

我执行的步骤:

  1. 使用kops get cluster $clusterName --state $state -o yaml提取的k8s群集清单
  2. 使用kops create -f $manifestFile --state $state创建了k8s集群
  3. 以terraform为目标运行kops update cluster,然后应用生成的terraform文件。
  4. 按照this修复八卦DNS和terraform问题。
  5. 将最新的main / eventsetcd备份文件复制到新的s3状态存储中。
  6. 在新群集中同时还原了主备份和事件备份。 here
  7. 中所述的步骤
  8. 在主服务器中重新启动etcd容器

结果:

  • 窗格显示为待处理,不再找到节点。

    使用etcd备份/还原将k8s集群从一个AWS帐户迁移到另一个结果到未检测到的节点


    集群最初是1.12.8版本,但已作为测试修复程序升级到1.12.10
  • 除DNS外,kube系统中的大多数pod正在运行。
  • kubectl get cs结果:

    使用etcd备份/还原将k8s集群从一个AWS帐户迁移到另一个结果到未检测到的节点

尝试以下方法解决此问题:

  • kops update cluster然后kops rolling-update cluster
  • kops upgrade cluster
  • 删除节点的自动缩放组,然后运行kops update cluster

有什么想法吗?
是否有另一种方法可以将k8s集群从一个AWS账户迁移到另一个账户?

谢谢!

iCMS 回答:使用etcd备份/还原将k8s集群从一个AWS帐户迁移到另一个结果到未检测到的节点

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2224564.html

大家都在问