4

我正在尝试使用 Berkshelf 和 Vagrant 与厨师一起设置星号服务器,我首先想通过运行来升级内核

apt-get 升级

,并重新启动我的机器。

如何在配方中触发重新启动,并在机器重新启动后启动它?我使用 Fabric 对此没有任何问题,但是

执行“重启”

Vagrant 中的 Chef 供应商在机器重启时死亡

4

1 回答 1

1

幂等性是 Chef 的原则之一。

这意味着你的食谱可以一遍又一遍地运行,它只会改变不符合预期的事情。

所以在你的情况下,它看起来像这样:

  • 第一次 Chef 运行注意到安装了意外的内核。因此,它会安装内核并触发重新启动。
  • Chef 再次运行,确定内核已按预期安装,因此继续运行。现在你可以继续做其他事情了。

一个注释:我从未尝试过这个,但是reboot在 Chef 运行过程中发出 a 信号可能会造成一些损害。我建议在reboot信号后中止厨师运行(例如,通过引发异常,请参阅如何中止/结束厨师运行?)。

于 2013-03-13T07:47:08.100 回答