title: Best Practice automated MongoDb Cluster Restart
body: <p>We have a MongoDB cluster and would like to restart all members of a cluster.</p>
  
  <p>We could automate the windows services to restart or use <code>shutdownServer</code> via mognoshell.</p>
  
  <p>But we don't want to have the database unavailable, so an idea would be to only restart the slaves, make a step down, then restart the old master.</p>
  
  <p>I know I can determine masters and slaves with <code>rs.status()</code> and with <code>rs.StepDown()</code> and <code>rs.freeze()</code> I can manage who the primary is.</p>
  
  <p>But is there an built in way to restart a MongoDB cluister without downtime? Or would I have to write a tool which reads the status of the server and then handles this manually?</p>