You are here: Installation > Advanced implementation > Clustering and high availability > Microsoft Failover Cluster Manager (MSFCM) on Windows server 2012/2016

Microsoft Failover Cluster Manager (MSFCM) on Windows server 2012/2016

Since Microsoft Windows 2012, Microsoft have reconfigured the way in which you can manage High Availability with print services. They introduced the ability to use Hyper-V and failover clusteringClustering allows your organisation to ensure your services are not affected if anything should happen to your main server. PaperCut is a cluster compatible application and is supported under Windows (Microsoft Cluster Server / MSCS, Microsoft Failover Cluster Manager / MSFCM, Vetitas Cluster Server / VCS) and Linux (Novell Cluster Services / NCS, Linux-HA) at all levels of the application, including: clustering at the print spooler service layer by integrating with clustering services, failover based clustering at the Application Server layer using clustering services, and at the database layer by utilising cluster aware databases such as Microsoft SQL Server, PostgreSQL, or Oracle. to make your print serverA print server is a system responsible for hosting print queues and sharing printer resources to desktops. Users submit print jobs to a print server rather then directly to the printer itself. A print server can be a dedicated server but on many networks this server also performs other tasks, such as file serving a highly available virtual machine. This solution provides full server failover options and can be implemented with the PaperCut NG Application ServerAn Application Server is the primary server program responsible for providing the PaperCut user interface, storing data, and providing services to users. PaperCut uses the Application Server to manage user and account information, manage printers, calculate print costs, provide a web browser interface to administrators and end users, and much more., Secondary Server, and/or Site ServerSite Servers take over the role of a Primary Application Server in the event of network outages. Key roles taken over include authentication, copy and print tracking and Find-Me printing. Site Servers ensure continuous availability of printing resources to support key business functions over unreliable network links or during unplanned network disruptions..

There are several steps involved in the setup of this failover solution:

Before you Begin

Systems Requirements:

  • 2+ physical servers
  • MS Server 2012/2016 with Hyper-V capabilities
  • iSCI SAN with 2 drives configured
  • Drive 1: 5GB (to be used for the Quorum if using only 2 nodes)
  • Drive 2: VM server storage

You will also require the following:

  • Administrative rights to be able to join machines to the domain
  • IP address to connect to your SAN
  • IP Addresses for the following:
    • 2 x IP addresses for the Physical Servers
    • 1 x IP address for the Cluster
    • 1 x IP address for the VM

Step 1: Configure roles / features on nodes for high availability

  1. Install MS Windows Server 2012 or MS Server 2016 onto your two server nodes.
  2. In the Server Manager > Dashboard, click Add roles and features.

    The Before you begin window is displayed.

  3. Click Next.

    The Select installation type window is displayed.

  4. Select Role-based or feature-based installation.
  5. Click Next.

    The Select destination server window is displayed.

  6. Select the server that you are logged in on.
  7. Click Next.

    The Select server roles window is displayed.

  8. In the Roles list, select Hyper-V.

    The Add feature that are required for Hyper-V window is displayed. This window shows the dependencies that will be installed.

  9. Click Add Features.
  10. Click Next.

    The Select features window is displayed.

  11. In the Features list, select Failover Clustering.

    The Add features that are required for Failover Clustering window will pop up and now be displayed. This window shows the dependencies that will be installed with this feature.

  12. Click Add Features.

    The Hyper-V window is displayed.

  13. Click Next.

    The Create Virtual Switches window is displayed.

  14. In Network adapters, select the network that you want your virtual machine to use for the cluster. If you have multiple NIC’s listed here, choose the appropriate one/s.
  15. Click Next.

    The Virtual Machine Migration window is displayed.

  16. Select the Allow this server to send and receive live migrations of virtual machines checkbox. This allows the VM to transfer between your nodes where required.
  17. Click Next.

    The Default Stores window is displayed. Do not change the default stores.

  18. Click Next.

    The Confirm installation selections window is displayed.

  19. Check the setting to ensure you are happy with the selected items to be installed.
  20. Click Install.

    The chosen Role and Feature will be installed on your machine.

  21. When the installation is complete, restart the machine to finalize the installation.
  22. Repeat the above steps on any additional nodes you want to include in the failover cluster.

Step 2: Connecting to iSCI network drives

  1. Start the iSCI initiator then connect to your two SAN drives:
    1. Click Start > Windows Administrative Tools > iSCI Initiator.

      Note:

      One of the drives is configured for your Quorum and the other is configured for the virtual machines. 5GB is required for the Quorum and the second drive will be used to store your Virtual machines. Therefore, ensure you have provided enough disk space on this drive to handle the virtual machine storage.

    2. Ensure the drives are set to allow simultaneous connections. This is configured on your SAN. Make sure you have granted access to your two cluster servers.
  2. Connect to the SAN drives:
    1. Open iSCSI initiator.
    2. Click the Targets tab.

    3. In Target, enter the IP address for the SAN.
    4. Click Quick Connect.

      Your advertised drives are displayed.

    5. Highlight a drive; then click connect to connect to each drive.
    6. When a drive is connected, click Done.
    7. Click the Volumes and Devices tab.
    8. Click Auto Configure.
    9. Click OK.
    10. When you are connected on the first machine, click Start > WIndows Administrative tools > Computer Management > Disk Management.

    11. Your two disks appear as Unknown and Offline. They also display the size you configured on the SAN (eg: 5GB and 150GB).

  3. Bring the disks online:
    1. Right-click the disk number.
    2. Select Online.
  4. Repeat the above step for the second drive.
  5. Initialize the disks:
    1. Right-click the disk number next to one of the new drives.
    2. select Initialize disk.
    3. In the box that appears, ensure that both your new disks have a tick mark next to them.
    4. Set as MBR.
    5. Click OK.
  6. Configure the new drive:
    1. Right-click the first drive.

    2. Select Create New Simple Volume.
    3. Leave the defaults in place.
    4. Choose a drive letter to assign.
    5. Label your drives:
      • 5GB drive—label the drive as Quorum
      • 150GB (larger drive)—label it as ClusterStorage
  7. Repeat the above steps for the second drive.

  8. Once this is done for your first node (Server), repeat these steps on your additional nodes (Servers). For example, from the two listed servers above (Server1 and Server2), you must connect the iSCSI drives on both systems before they will be available for your cluster.

    Note:

    As the simple volume is now configured, you only need to initialise the disks on the other Nodes, not recreate the Volume.

    Step 3: Create the failover cluster

    From the OS of any of the nodes:

    1. Click Start > Windows Administrative tools > Failover Cluster Manager to launch the Failover Cluster Manager.

    2. Click Create Cluster.

      The Before you Begin window is displayed.

    3. Click Next.

      The Select Servers window is displayed.

    4. Enter the server names that you want to add to the cluster. Alternatively, you can locate them via Browse.
    5. Click Add.
    6. Click Next.

      The Validation Warning window is displayed.

    7. Select Yes to allow verification of the cluster services.
    8. Click Next.

      The Validate a Configuration Wizard is displayed. This wizard validates the server configuration.

    9. Click Next.

      The Testing Options window is displayed.

    10. Select Run all tests (recommended).
    11. Click Next.

      The Confirmation window is displayed. This window lists all of the tests that will be run.

    12. Click Next.

      The Validating window is displayed while all of the clustering tests are being run. This process may take several minutes depending on your network infrastructure and the number of nodes you have chosen to add to your cluster.

    13. When the tests have completed, check the report then fix any configuration errors. The cluster setup will fail if any errors exist.

      Note:

      A common error is the NIC/s used on the two nodes. The NIC/s must have the same name on both servers for the cluster to use the NIC in the configuration.

      The Access Point for Administering the Cluster window in the Create Cluster wizard is displayed.

    14. In Cluster Name, enter a name for your cluster.
    15. In the available network provide an IP address for the cluster.

      Note:

      This name and IP address will be registered in your DNS

    16. Click Next.

      The Confirmation window is displayed. This window lists the settings to be applied to your new cluster.

    17. Select the Add all eligible storage to the cluster check box.
      The system will now try to assign any storage it can find.
    18. Click Next.

      The system attempts to create the new cluster in your domain. This may take a while as there are several checks that must take place and tests that are conducted while the system is configured.

      When the process is complete, the Summary window is displayed stating that the cluster wizard completed successfully.

    19. Click Finish.
    20. Check to confirm that the cluster is configured correctly:
      1. In the Failover Cluster Manager, navigate to Nodes.

      2. Check that all nodes in the cluster are online. If they are not, go to the server that is offline and bring the system online to join the cluster.
    21. Navigate to Storage > Disks.

      The system detects the SCSI drives and displays them here. If you were setting this up with only two nodes, then the 5GB Quorum cluster would have been assigned as Disk Witness in Quorum.

      Note:

      If no disks are displayed, check that you have correctly completed the steps on all nodes detailed in Connecting to ISCSI network drives.

      The configured storage space is assigned to Available Storage.

    22. Configure this storage to be part of the cluster:
      1. Right-click the disk assigned to available storage; then select Add to Cluster Shared Volumes.

      The cluster is now assigned to Cluster Shared Volume.

    23. Check the Cluster Events folder for any reported issues with the cluster. If there are no issues, you can configure your virtual machine in the cluster environment.

    Step 4: Create a high availability virtual machine

    1. In the Failover Cluster Manager, expand the cluster created in the previous steps.
    2. Right-click Roles; then select Virtual Machines > New Virtual Machine.

      The New Virtual Machine window is displayed.

    3. Select the node you want to set the virtual machine up on. It doesn’t matter which node you choose, but we recommend you choose the node that you are currently working on.
    4. Click OK.

      The New Virtual Machine Wizard is displayed. This window explains the steps involved in setting up a virtual machine.

    5. Click Next.

      The Specify Name and Location window is displayed.

    6. In Name, enter a name for your virtual machine.
    7. In Location, enter the drive where the VM will be stored on the server.
      For this VM to be able to move between the nodes, choose the ClusterStorage\Volume drive. This is usually located on C:\ClusterStorage\Volume1\ or similar.
    8. Click Next.

      The Specify Generation window is displayed.

    9. Select the generation of virtual machine you want to use:
      • Generation 1—offers the best cross compatibility with versions. Generation 2 offers greater security, better performance, and supports the UEFI disk partitioning.
      • Generation 2—supported on the current releases, but not the older versions of Hyper-V. Also Generation 2 virtual machines are not supported by Azure.
      Important:

      Once this selection is made, it most likely will not be able to be changed. There are some tools that allow you to switch generation (for example, Azure DR allows you to to convert to Gen1 or Gen2 based on failover location), but it is best to assume that it cannot be changed.

    10. Click Next.

      The Assign Memory window is displayed.

    11. In Startup memory, enter the relevant amount of memory that you want for this virtual machine.
    12. If you want the memory to be dynamic, select the Use Dynamic Memory for this virtual machine check box.
    13. Click Next.

      The Configure Networking window is displayed.

    14. In Connection, select the NIC you want to assign to this virtual machine.
    15. Click Next.
      The Connect Virtual Hard Disk window is displayed.

    16. In Name, enter a name for your virtual machine. This is the name that will be displayed in Hyper-V.
    17. In Location, enter a location on the cluster drive for the hard drive. By default, this is usually created on your system under C:\ClusterStorage\Volume1\.
    18. Set the hard drive size.
    19. Click Next.

      The Installation Options window is displayed.

    20. Select the install location for your operating system. If you intend to perform this installation at a later time, select Install an Operating System Later.
    21. Click Next.

      The Completing the New Virtual Machine Wizard window is displayed. This window displays the options that you have selected for the configuration of this Hyper-V machine.

    22. Review your selections and if you are happy with them, click Finish.

      When the Hyper-V machine has been configured, the Summary window displays a  Success message.

    23. Click Finish.
    24. If your two node machines are running different CPU models, enable processor compatibility:
      1. With the virtual machine turned off, in Hyper-V Manager, highlight the machine.
      2. From the Action pane select Settings > Processor.
      3. Expand Processor; then click Compatibility.

      4. Select the Migrate to a physical computer with a different processor check box.
      5. Click OK.
    25. Ensure that the new nodes are configured to accept the virtual machine in the event of a failover:

      1. In the Failover Cluster Manager, select Roles.

      2. Double-click your virtual machine.

      3. On the General tab, under Preferred owners, select the nodes that you want to manage your virtual machine in the event of a failure.

      4. Click OK.

Step 5: Set up your print server

  1. From the Cluster Manager window start your VM and install Windows.
  2. Configure the machine on your network.
  3. For testing purposes, turn off Windows Firewall so you can RDP and Ping this machine.
  4. Configure your print queues.
  5. Test that printing works successfully:
    1. Check printing on the server.
    2. Map the print queueA print queue displays information about documents that are waiting to be printed, such as the printing status, document owner, and number of pages to print. You can use the print queue to view, pause, resume, restart, and cancel print jobs. from a client machine on the network and test printing.
  6. When printing is working successfully, test the failover.
    1. In Failover Cluster Manager, right-click the VM you have created.
    2. Click Move.
    3. Select Quick Migration > Select Node.
    4. Select a node that the VM is not currently residing on.

      The VM will now start up on the other node.

  7. When the virtual machine status shows that it is running, remote desktop into this machine to ensure it is still operational. Any windows you had open previously should still be running.

  8. Install PaperCut NG onto this machine.
  9. Send several test print jobs to ensure that PaperCut NG is operating correctly.
  10. Install your shared print queues to a client machine.
  11. Print a document.
  12. Log in to the server node that the PaperCut NG VM is running on; then restart the server.
  13. While the server is restarting, from the client machine, send several test print documents to the shared printer.
  14. The print jobs are processed and the VM fails over successfully to one of your other nodes.

    HA achieved!

Note:

Don’t forget to reapply your firewall services on your machine before deploying into production.


Comments

Share your findings and experience with other PaperCut users. Feel free to add comments and suggestions about this Knowledge Base article. Please don't use this for support requests.