Specifically, an elasticsearch cluster, but doing this the right way would 
also apply to other kinds of clusters, like RabbitMQ or Redis.

I'm using https://github.com/LaneCommunityCollege/aspects_elasticsearch to 
manage my elasticsearch cluster. Currently, if I modify the configuration 
settings, Ansible would issue a restart to all the nodes in the cluster. 

The obvious answer is to only run the playbook on one node at a time. But 
there are situations where that isn't convenient. If I run Ansible like a 
puppet agent then setting the configuration setting in the group_vars file 
will apply it on all the nodes, thus restarting them all. Or if I have a 
large number of nodes. Or simply need to apply the change, but don't have 
time to do it one or two nodes at a time.

The other solutions I've thought of involve custom scripts that would not 
be part of the Ansible playbook. And likely be application specific.

Is there a way to tell ansible to set a service restart task sometime in 
the future? Say, right now for node1, 5 minutes later for node2, 10 minutes 
later for node3, and so on. 

Maybe the at module? How would it know to set it 10 minutes in the future 
instead of 5 for the third node? 

So, yeah, is there a good Ansible specific method for this? Or do I need to 
look outside of Ansible?

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To post to this group, send email to ansible-project@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/dcd691af-f8f3-47c8-b481-87a49c55ab89%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to