4

成功安装devstack并启动实例后,但一旦重新启动机器,需要重新启动并丢失所有当时启动的实例。我尝试重新加入堆栈但没有工作,我怎样才能在重新启动后恢复实例?

4

4 回答 4

1

你可以resume_guests_state_on_host_boot = Truenova.conf中设置。该文件应位于/etc/nova/nova.conf

于 2014-06-30T11:01:27.170 回答
0

我发现了一些旧的讨论http://www.gossamer-threads.com/lists/openstack/dev/8772

AFAIK 目前 OpenStack (Icehouse) 仍未完全了解其中的环境,因此重启后无法完全恢复。实例将在那里(virsh 域),但即使您手动启动它们或使用 nova 标志,我也不确定其他设施是否会正确处理此问题(例如,neutron 将根据数据库记录正确配置所有 L3 规则等)老实说,我很确定他们不会...

答案取决于您需要实现的目标:

  1. 如果您需要一个模板环境(例如,每次重启后都有类似的实例和网络集),您可以只编写所有脚本。换句话说,只需创建一个 bash 脚本来创建您需要的所有内容,并在每次 stack.sh 之后运行它。确保您从干净的环境开始,因为 OpenStack 数据库状态保持在 ./unstack - ./stack.sh 或 ./rejoin-stack.sh 之间(您可以尝试只清理数据库,或删除它。stack.sh 将构建回来了)。

  2. 如果您需要一个持久的环境(例如,您不想在重启后丢失虚拟机和整个基础设施状态),我不知道如何使用 OpenStack 来做到这一点。Fe neutron 代理(它们配置 iptables、dhcp 等)不保存状态并由来自 Neutron 服务的事件驱动。重新启动后它们将无法恢复,因此网络将死机。如果有人能分享一种进行这种恢复的方法,我将非常高兴。

总的来说,我认为 OpenStack 并没有关注这一点,也不会在最近的发布周期内关注。常见的方法是拥有多节点环境,其中每个节点都是可替换的。

请参阅http://docs.openstack.org/high-availability-guide/content/ch-intro.html以供参考

于 2014-07-01T17:43:36.080 回答
-1

devstack 是一个短暂的环境。它不应该在重新启动后幸存下来。这不是受支持的行为。

话虽如此,您可能会通过运行成功重新初始化环境

./unstack.sh

追随者

./stack.sh

再次。

同样,devstack 是一个短暂的环境。现有的主要目的是为 openstack 的 CI 基础设施运行门测试。

于 2014-05-09T13:49:48.903 回答
-2

或尝试./rejoin-stack.sh重新加入以前的屏幕。

于 2014-05-11T13:02:48.363 回答