Action1/Reboot1/Action2/Reboot2/Action3

(imported topic written by RichB91)

On our Windows servers, it is our practice to perform a reboot prior to patching, in addition to the reboot after patching. This policy is beyond my control.

On some of our Windows servers, one or more settings need to be changed prior to a reboot to make sure the server will be in an “off-line mode†after the first reboot. Those settings, obviously, need to be restored prior to the second reboot so the server will be in an “on-line mode†after the second reboot.

On some of our order processing servers, we also need to tell an application to stop accepting new connections, but wait to finish processing existing connections before shutting down.

Example of the current manual process:

  1. Set the Registry entry for the application’s maximum number of new connections

MaxNewConnections

to 0. This will allow existing orders to continuing processing prevent new orders from being initiated.

  1. Wait an unknown amount of time (seconds to tens of minutes) for in-flight orders to be completed. Once {exists running application “myprogram.exe”} = False then it is safe to proceed.

  2. Set the Start-Up Type of two services to Manual

  3. Reboot #1

  4. Double check that the application is in “off-line mode†by verifying that the Start-Up Type of two services are set to Manual and that {exists running application “myprogram.exe”} = False

  5. Apply patches

  6. Set the Registry entry for the application’s maximum number of new connections to 25

  7. Set the Start-Up Type of two services to Automatic

  8. Reboot #2

  9. Double check that application is in “on-line mode†by verifying that Start-Up Type of two services are set to Automatic and that {exists running application “myprogram.exe”} = True

Short of exploring the RunBook Automation add-on via BigFix Professional Services, anyone have any recommendations on how to approach automating this set of procedures?

(imported comment written by BenKus)

Sure… Try this:

  • Make custom Fixlets that deal with each step (or combine some of these into a single Fixlet).
  • Create a Task with relevance “True” and action “restart 60”.
  • Make a baseline that include all these steps in order with the two restart Tasks in the right places.

Ben