Node reboot in a chef recipe

Hello,

I am looking for strategies on node rebooting within a recipe.

I am aware of dreamcat4’s restart cookbook, but I don’t want to patch chef
in order to make it work.

How do you guys reboot your nodes in a chef run?

Thanks.

Jacobo García López de Araujo
http://beattaster.com | http://robotplaysguitar.com |
http://twitter.com/therobot

On Wed, Aug 3, 2011 at 1:15 PM, Jacobo García jacobo.garcia@gmail.comwrote:

How do you guys reboot your nodes in a chef run?

execute "reboot"

Is that what your asking: to perform an actual OS/server reboot?

On Wed, Aug 3, 2011 at 1:15 PM, Jacobo García jacobo.garcia@gmail.com wrote:

Hello,
I am looking for strategies on node rebooting within a recipe.
I am aware of dreamcat4's restart cookbook, but I don't want to patch chef
in order to make it work.

Brian had it pretty much covered. Nothing "special" is required.

If you need a bit more "coordinated" reboot, the Webster-Clay guys
created something called "dominodes" that uses a data bag as a mutex
for coordination:

Nothing special needed,

I have the belief that a server reboot in between a chef-run could be
harmful. I will delay the reboot at the end of the chef run at least.

Thanks for your help.

Jacobo García López de Araujo
http://beattaster.com | http://robotplaysguitar.com |
http://twitter.com/therobot

On Wed, Aug 3, 2011 at 7:25 PM, John E. Vincent (lusis) <lusis.org+
chef-list@gmail.com> wrote:

On Wed, Aug 3, 2011 at 1:15 PM, Jacobo García jacobo.garcia@gmail.com
wrote:

Hello,
I am looking for strategies on node rebooting within a recipe.
I am aware of dreamcat4's restart cookbook, but I don't want to patch
chef
in order to make it work.

Brian had it pretty much covered. Nothing "special" is required.

If you need a bit more "coordinated" reboot, the Webster-Clay guys
created something called "dominodes" that uses a data bag as a mutex
for coordination:

GitHub - websterclay/chef-dominodes: A Chef resource for mutual exclusion of blocks of recipe code. Useful for cross-cluster rolling restarts.

One elegant way you could solve this is to set a flag in node.run_state (inside of a recipe), then look for this flag in a chef report handler [0].

node.run_state[:reboot] = true

This would ensure the reboot happens only after a successful chef run.

Seth

--
Opscode, Inc.
Seth Chisamore, Software Design Engineer
IRC, Skype, Twitter, Github: schisamo

[0] http://wiki.opscode.com/display/chef/Exception+and+Report+Handlers

On Wednesday, August 3, 2011 at 2:09 PM, Jacobo García wrote:

Nothing special needed,

I have the belief that a server reboot in between a chef-run could be harmful. I will delay the reboot at the end of the chef run at least.

Thanks for your help.

Jacobo García López de Araujo
http://beattaster.com | http://robotplaysguitar.com | http://twitter.com/therobot

On Wed, Aug 3, 2011 at 7:25 PM, John E. Vincent (lusis) <lusis.org (http://lusis.org)+chef-list@gmail.com (mailto:chef-list@gmail.com)> wrote:

On Wed, Aug 3, 2011 at 1:15 PM, Jacobo García <jacobo.garcia@gmail.com (mailto:jacobo.garcia@gmail.com)> wrote:

Hello,
I am looking for strategies on node rebooting within a recipe.
I am aware of dreamcat4's restart cookbook, but I don't want to patch chef
in order to make it work.

Brian had it pretty much covered. Nothing "special" is required.

If you need a bit more "coordinated" reboot, the Webster-Clay guys
created something called "dominodes" that uses a data bag as a mutex
for coordination:

GitHub - websterclay/chef-dominodes: A Chef resource for mutual exclusion of blocks of recipe code. Useful for cross-cluster rolling restarts.

The handler strategy looks nice, I'll follow that path.

Thanks :slight_smile:

Jacobo García López de Araujo
http://beattaster.com | http://robotplaysguitar.com |
http://twitter.com/therobot

On Wed, Aug 3, 2011 at 8:19 PM, Seth Chisamore schisamo@opscode.com wrote:

One elegant way you could solve this is to set a flag in node.run_state
(inside of a recipe), then look for this flag in a chef report handler [0].

node.run_state[:reboot] = true

This would ensure the reboot happens only after a successful chef run.

Seth

--
Opscode, Inc.
Seth Chisamore, Software Design Engineer
IRC, Skype, Twitter, Github: schisamo

[0] http://wiki.opscode.com/display/chef/Exception+and+Report+Handlers

On Wednesday, August 3, 2011 at 2:09 PM, Jacobo García wrote:

Nothing special needed,

I have the belief that a server reboot in between a chef-run could be
harmful. I will delay the reboot at the end of the chef run at least.

Thanks for your help.

Jacobo García López de Araujo
http://beattaster.com | http://robotplaysguitar.com |
http://twitter.com/therobot

On Wed, Aug 3, 2011 at 7:25 PM, John E. Vincent (lusis) <lusis.org (
http://lusis.org)+chef-list@gmail.com (mailto:chef-list@gmail.com)> wrote:

On Wed, Aug 3, 2011 at 1:15 PM, Jacobo García <jacobo.garcia@gmail.com(mailto:
jacobo.garcia@gmail.com)> wrote:

Hello,
I am looking for strategies on node rebooting within a recipe.
I am aware of dreamcat4's restart cookbook, but I don't want to patch
chef
in order to make it work.

Brian had it pretty much covered. Nothing "special" is required.

If you need a bit more "coordinated" reboot, the Webster-Clay guys
created something called "dominodes" that uses a data bag as a mutex
for coordination:

GitHub - websterclay/chef-dominodes: A Chef resource for mutual exclusion of blocks of recipe code. Useful for cross-cluster rolling restarts.