How and When to Restart a Standalone SPOC and SPOC Group

This "how to" describes how and when it is necessary to restart SPOC or a SPOC group. It is strongly recommended to perform the restart with no load on the SPOC server (no new jobs, no printing/copying/scanning, ...) and running Dispatcher Paragon Management Server.

A SPOC group with only one SPOC server is not a supported configuration. A SPOC group has to have at least two SPOC servers.

To control services, run 'Services' on the Windows server (Start > Run > Services.msc > Enter).

What a SPOC cache is and how to delete it is described in How to Delete the Dispatcher Paragon Spooler Controller Cache.

SPOC Maintenance Scenarios:

When Creating a SPOC Group from Standalone SPOCs

When a new SPOC group was created on Dispatcher Paragon Management Server, follow the steps below.

If the SPOC servers are newly installed, then:

Follow the steps described in the section How to Safely Restart a SPOC Group without Cache Deletion below ( images/s/477gek/8804/1yuue1v/_/images/icons/emoticons/lightbulb_on.svg In this case, it is not necessary to wait as described in step 8).

If SPOC servers are already in production and contain waiting and printed jobs, then:

Follow the steps described in the section How to Safely Restart a SPOC Group with Cache Deletion below.

When Adding a Standalone SPOC to an Existing SPOC Group

When a standalone SPOC was added to an existing SPOC group on Dispatcher Paragon Management Server, follow the steps below.

When adding a standalone SPOC to an existing SPOC group that already has two members:

Follow the steps described in the section How to Safely Restart a SPOC Group with Cache Deletion below, including the newly added SPOC.

When adding a standalone SPOC to an existing SPOC group that already has three or more members:

  1. Stop the Dispatcher Paragon Spooler Controller service and Dispatcher Paragon Spooler Controller Group Service service on the newly added SPOC.

  2. Stop the Dispatcher Paragon Terminal Server service on the newly added SPOC.

  3. Stop all other YSoft services except those on the newly added SPOC.:

    1. Dispatcher Paragon Management Service service (if present)

    2. Dispatcher Paragon Bundled PostgreSQL 9.4 service (if present)

    3. Dispatcher Paragon Bundled Etcd service (if present)

  4. Delete the cache folder <install_dir\SPOC\SpoolCache on the newly added SPOC.

  5. Follow the steps described in the section How to Safely Restart a SPOC Group without Cache Deletion below only for SPOCs in the original SPOC group.

  6. Start the Dispatcher Paragon Spooler Controller service on the newly added SPOC and verify that the Dispatcher Paragon Spooler Controller Group Service service starts automatically within 1-2 minutes.

  7. Start the Dispatcher Paragon Terminal Server service on the newly added SPOC.

  8. Start all the other YSoft services stopped in step c. on the newly added SPOC.

After adding SPOC (any SPOC group size)

If enableEtcd is Enabled in Management System Settings, new server has to be manually added to existing ETCD cluster via command line. Follow Reconfiguring or Recovering an etcd Cluster in Terminal Server to make sure all ETCD cluster members are present in the cluster and are healthy.

When Removing One SPOC from a SPOC Group

When one SPOC is removed from a SPOC group on Dispatcher Paragon Management Server, follow these steps:

  1. Follow the steps described in the section How to safely restart a SPOC group with cache deletion below only for the SPOCs that stayed in the SPOC group.

  2. Stop the Dispatcher Paragon Spooler Controller service and Dispatcher Paragon Spooler Controller Group Service service on the removed SPOC.

  3. Stop the Dispatcher Paragon Terminal Server service on the removed SPOC.

  4. Stop all other YSoft services except those on the removed SPOC:

    1. Dispatcher Paragon Management Service service (if present)

    2. Dispatcher Paragon Bundled PostgreSQL 9.4 service (if present)

    3. Dispatcher Paragon Bundled Etcd service (if present)

  5. Start the Dispatcher Paragon Spooler Controller service on the removed SPOC.

  6. Start the Dispatcher Paragon Terminal Server service on the removed SPOC.

  7. Start all the other YSoft services stopped in step d. on the removed SPOC.

  8. If enableEtcd is Enabled in Management System Settings, removed server has to be manually removed from existing ETCD cluster via command line. Follow Reconfiguring or Recovering an etcd Cluster in Terminal Server to make sure only remaining servers are members of ETCD cluster and that ETCD cluster is healthy.

When Moving a SPOC from a SPOC Group to Another SPOC Group

When it is necessary to move a SPOC from a SPOC group to another SPOC group, do it in two steps.

  1. First, remove the SPOC from the SPOC group and make it a standalone SPOC.

  2. Then add the standalone SPOC to the new SPOC group.

  3. If enableEtcd is Enabled in Management System Settings, moved server has to be manually added to ETCD cluster via command line. It also has to be removed from the old ETCD cluster. Follow Reconfiguring or Recovering an etcd Cluster in Terminal Server to make sure all ETCD cluster members are present in the correct cluster and are healthy.

    Optionally, it can be done in one step, but then it is necessary to follow the How to safely restart a SPOC group with cache deletion section below for both SPOC groups.

When Changing the IP Address of Site Server

When the IP address of Site Server (SPOC) is changed as described in the section How to Change the IP Address of Dispatcher Paragon Site Server, then follow the steps described in the section How to safely restart SPOC group with cache deletion on all remaining members of Spooler Controller Group to properly reconnect the node with the changed IP address.

When Restarting the Server with the Installed SPOC

When a server restart is required due to, e.g., Windows updates, Windows failure, or a hardware configuration change, then restart the operating system. Windows shuts down all services, reboots, and then restarts them.

  • The SPOC server that is not part of the SPOC group:

    • You may restart multiple SPOC servers in parallel

  • SPOC servers in a SPOC group (any size of SPOC group):

    • Only one member (server) of a SPOC group can be restarted at a time. Once the server restarts and the SPOC is visible online on Management Server (Dispatcher Paragon management interface> Devices > Spooler Controller Groups), wait circa 5-10 minutes. If you wish, you may then proceed with the restart of the next SPOC server in the group.

    • If you restarted multiple members of a SPOC group in parallel, follow the section How to safely restart a SPOC group with cache deletion on all members of a SPOC group.

SPOC Restart Procedures:

The following section describes the process for restarting a standalone SPOC and a SPOC group. To choose the right one, please check the use cases above. If you delete the cache during a restart, the cache recovery algorithm executes and the SPOC downloads all its jobs from Dispatcher Paragon Management Server and saves them to its cache and distributed layer if the SPOC is in the SPOC group. If you do not delete the cache during the restart, the cache rescue algorithm executes. The difference between the cache recovery and cache rescue algorithm is that in the cache rescue algorithm, the jobs are not downloaded from Dispatcher Paragon Management Server and stored in the cache and distributed layer again, but only the jobs' "statuses" are updated according to the newest time stamp (the time stamp on the SPOC vs. the time stamp on Dispatcher Paragon Management Server).

How to Safely Restart a SPOC Group with Cache Deletion

  1. Stop the Dispatcher Paragon Spooler Controller service and Dispatcher Paragon Spooler Controller Group Service service.

  2. Stop the Dispatcher Paragon Terminal Server service.

  3. Stop all other YSoft services except those:

    1. Dispatcher Paragon Management Service service (if present)

    2. Dispatcher Paragon Bundled PostgreSQL 9.4 service (if present)

    3. Dispatcher Paragon Bundled Etcd service (if present)

  4. Repeat previous steps 1-3 on all Site Servers in the Spooler Controller group.

  5. Delete the cache folder <install_dir\SPOC\SpoolCache on all Site Servers in the group.

  6. Start the Dispatcher Paragon Spooler Controller service and verify that the Dispatcher Paragon Spooler Controller Group Service service starts automatically within 1-2 minutes.

  7. Start the Dispatcher Paragon Terminal Server service.

  8. Wait until the Dispatcher Paragon Spooler Controller service starts and is online. Check that <install_dir\SPOC\logs\spoc_lifecycle.log last status is "ONLINE".

  9. Start all the other YSoft services stopped in step 3.

  10. Repeat the previous steps 6-9 on all Site Servers in the Spooler Controller group. Depending on the count of not-deleted jobs, wait 3-10 minutes between the start of each Site Server services.

    Previously printed jobs may not be visible in the terminal job list for 15 to 30 minutes until spooler job recovery has completed.

How to Safely Restart a SPOC Group without Cache Deletion

  1. Stop the Dispatcher Paragon Spooler Controller service and Dispatcher Paragon Spooler Controller Group Service service.

  2. Stop the Dispatcher Paragon Terminal Server service.

  3. Stop all other YSoft services except those:

    1. Dispatcher Paragon Management Service service (if present)

    2. Dispatcher Paragon Bundled PostgreSQL 9.4 service (if present)

    3. Dispatcher Paragon Bundled Etcd service (if present)

  4. Start the Dispatcher Paragon Spooler Controller service and verify that the Dispatcher Paragon Spooler Controller Group Service service starts automatically within 1-2 minutes.

  5. Start the Dispatcher Paragon Terminal Server service.

  6. Wait until the Dispatcher Paragon Spooler Controller service starts and is online. Check that <install_dir\SPOC\logs\spoc_lifecycle.log last status is "ONLINE".

  7. Start all the other YSoft services stopped in step 3.

  8. Wait until distributed layer has converged (wait circa 5 minutes since spoc.log contains "RescueCache| Rescue process for SPOC's cache finished.").

  9. Repeat the previous steps 1-8 on all SPOCs in the SPOC group.