azure - 使用 PersistentVolumes 的 Azure Kubernetes 故障转移
问题描述
我目前正在测试 Azure Kubernetes 如何处理 StatefulSets 的故障转移。我通过在我的一个节点上运行来模拟网络分区sudo iptables -A INPUT -j DROP
,虽然不完美但足以测试一些东西。
1)。如何重用挂载到故障节点的磁盘?有没有办法手动释放磁盘并使其可用于重新安排的 pod?强制删除后释放资源需要很长时间,有时需要一个多小时。
2)。如果我从集群中删除一个节点,所有资源都会在一段时间后释放。问题是,在 Azure 仪表板中,即使我删除了一个节点,它仍将我的集群显示为使用 3 个节点。有没有办法手动重新添加已删除的节点,或者我每次都需要重建集群?
3)。我绝对不想使用ReadWriteMany
.
基本上我想要的是让我的 StatefulSet pod 终止并让关联的磁盘分离,然后在发生网络分区或节点故障时在新节点上重新调度。我知道如果从网络分区恢复,Pod 将终止,但我希望自己控制该过程,或者至少让它更快发生。
解决方案
- 是的,只需从门户(或 powershell\cli\api\etc)手动分离磁盘
- 这是不支持的,你不应该这样做。缩放\升级可能会解决这个问题,但它可能不会
- 好吧,不要。
推荐阅读
- python - 在python中绘制正态曲线
- android - 启动时间太慢 Android App Check:JNI
- javascript - 从应用程序组件(异步管道)发送“用户”可观察对象时出错
- django - 在 Django 中第二次保存模型时出错
- java - Java如何使用一个库的多个版本可能使用类加载器
- javascript - 使用 Ajax 将 PHP 文件上传到 HTML 表中
- kubernetes - 将 Helm 3 用于使用 kubectl 部署的现有资源
- c# - CSS没有被拉入页面?
- machine-learning - 即使训练和测试始终相同,测试精度也会波动
- templates - 如何使模板构造函数参数可扣除?