You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

关于计算节点重启/故障停机后OpenStack的VM与网络处理机制的问询

OpenStack计算节点故障/重启后的核心行为解析

一、计算节点重启或停止工作时的即时反应

当计算节点(不管是主动重启还是突然挂掉),首先会触发OpenStack控制平面的状态检测:

  • 节点上的nova-compute服务会离线,控制器节点的nova-conductornova-scheduler会在几次心跳失败后,把该节点标记为不可用状态,后续不会再把新的虚拟机调度到这台节点上。
  • 如果是主动重启,你可以先通过openstack server migrate或者openstack server evacuate提前把运行中的VM迁移到其他节点,避免业务中断;但如果是突发硬件故障/断电,节点上的所有活跃VM会直接中断,状态会被标记为ERROR或者DOWN(具体取决于Nova的配置),这些VM此时无法对外提供服务。

二、故障节点恢复后,VM是否会自动调度到其他节点?

默认情况下,OpenStack不会自动把故障节点上的VM迁移到其他节点。原因很简单:OpenStack无法自动判断你的VM是否适合迁移(比如是否有本地磁盘依赖、是否开启了live migrate支持),也不想擅自做可能影响业务的操作。

如果要恢复这些VM的服务,你有两种手动操作方式:

  • 如果你想把VM转移到其他健康节点:使用openstack server evacuate命令(需要提前配置好共享存储,或者VM使用的是卷而非本地磁盘),这个操作会在其他节点重新启动VM实例。
  • 如果你想让VM在原节点恢复:等计算节点重启完成、nova-compute服务上线后,手动启动状态为DOWN的VM(如果VM的磁盘是本地存储,只能这么做)。

当然,如果你部署了OpenStack的高可用扩展组件(比如Masakari),可以配置自动故障转移策略,实现VM的自动迁移,但这属于额外配置,不是OpenStack的默认功能。

三、网络连通性的影响

网络连通性的变化主要取决于VM是否被成功迁移或恢复:

  • 如果VM被迁移到其他节点:只要你的Neutron网络配置正常(比如使用VXLAN/GRE等Overlay网络,或者物理网络跨节点连通),VM的IP地址、MAC地址都会保持不变,其他节点上的VM和它的连通性不会受到任何影响——就像VM从来没移动过一样。
  • 如果VM在原节点恢复:当VM重启后,它会重新接入原来的网络端口,IP和网络配置不变,其他节点的VM和它的连通性会自动恢复。
  • 如果VM一直处于DOWN状态:其他节点的VM自然无法和它建立连接,直到VM被恢复或迁移。

内容的提问来源于stack exchange,提问作者Bahjat

火山引擎 最新活动