Setting up a Windows failover cluster

Revision as of 18:05, 10 November 2020 by Samuel (talk | contribs)

Introduction

Setting up a Windows cluster requires at least three virtual machines and two networks.

These instructions assume KVM and libvirt are used. Windows version is Server 2019.


				+-------------+
				| SMB  Client |
				+-------------+
				       |
				192.168.150.201
				       |
	+---------------------------------------------------------------+
	|			Clients network				|
	+---------------------------------------------------------------+
		|                      |                       |
	 192.168.150.10		192.168.150.21		192.168.150.22
		|                      |                       |
	+---------------+       +------------+          +------------+
	|   AD + iSCSI  |       |   Node 1   |          |   Node 2   |
	| target server |       +------------+          +------------+
	+---------------+              |                       |
                                       |                       |
                                192.168.160.21          192.168.160.22
                                       |                       |
	+---------------------------------------------------------------+
	|		        Cluster network                         |
	+---------------------------------------------------------------+

VM name Hostname IP addresses
win2k19-fover-ad fover-ad 192.168.150.10
win2k19-fover-n1 fover-n1 192.168.150.21 192.168.160.21
win2k19-fover-n2 fover-ad 192.168.150.22 192.168.160.22

Setup libvirt networks

The first step is to create the public and private networks in libvirt. Save the following fragment to a file named cluster-public.xml:

<network>
  <name>cluster-public</name>
  <forward mode='nat'>
    <nat>
      <port start='1024' end='65535'/>
    </nat>
  </forward>
  <domain name='cluster-public'/>
  <dns>
    <forwarder domain='fover.net' addr='192.168.150.10'/>
  </dns>
  <ip address='192.168.150.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.150.200' end='192.168.150.250'/>
    </dhcp>
  </ip>
</network>

Save the following fragment to cluster-private.xml:

<network>
  <name>cluster-private</name>
  <domain name='fover.net'/>
  <dns>
    <forwarder domain='fover.net' addr='192.168.160.10'/>
  </dns>
  <ip address='192.168.160.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.160.200' end='192.168.160.250'/>
    </dhcp>
  </ip>
</network>

Now define and start the networks:

# virsh net-define cluster-public.xml
# virsh net-define cluster-private.xml
# virsh net-start cluster-public
# virsh net-start cluster-private

Setup AD virtual machine

After installing the operating system, set the host name and IP addresses. It is useful to rename the network adapters to know to which network are connected.

Public Private
IP Address 192.168.150.10 192.168.160.10
Netmask 255.255.255.0 255.255.255.0
Gateway 192.168.150.1
DNS 1 192.168.150.1
DNS 2

Proceed to install the Active Directory Domain Services and iSCSI target server roles:

Setting up a Windows failover cluster ad install roles.png

Once roles are installed, provision the Active Directory domain following the Wizard:

Setting up a Windows failover cluster ad domain provision.png

Setup cluster nodes

In both nodes:

  1. Install the operating system
  2. Set the hostname
  3. Set the IP addresses
  4. fover-n1 fover-n2
    Public Private Public Private
    IP Address 192.168.150.21 192.168.160.21 192.168.150.22 192.168.160.22
    Netmask 255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0
    Gateway 192.168.150.1 192.168.150.1
    DNS 1 192.168.150.10 192.168.150.10
    DNS 2
  5. Join the computer to the domain
  6. Install the "File Server" role and the "Failover Clustering" feature.

Setup the iSCSI target server

In fover-ad:

  1. Open the Server Manager console and go to "File and Storage Services" -> "iSCSI"
  2. Click TASKS -> New iSCSI virtual disk
  3. Follow the "New iSCSI Virtual Disk Wizard"
    1. iSCSI Virtual Disk Location
      Select C
    2. iSCSCI Virtual Disk Name
      Name
      quorum
      Description
      quorum witness disk</il>
    3. iSCSI Virtual Disk Size
      128 MB, Dynamically expanding
    4. iSCSI target
      Select New iSCSI target
    5. Target Name and Access
      Name
      fover
      Description
      Fover cluster iSCSI target server
    6. Access Server
      1. Click add
      2. Select Query initiator computer for ID
      3. Type the node 1 host name (fover-n1.fover.net)
      4. Click OK
      5. Click add
      6. Select Query initiator computer for ID
      7. Type the node 2 host name (fover-n2.fover.net)
      8. Click OK
    7. Enable authentication
      Do not enable
    8. Confirm

Setting up a Windows failover cluster ad iscsi target server.png

Setup the iSCSI initiators

In each node:

  1. Open the Server Manager
  2. Click Tools -> iSCSI initiator
  3. It will ask to start the service, click yes
  4. In the "Targets" tab, type "fover-ad.fover.net" and click Quick Connect
  5. In the "Volumes and Devices" tab, click Auto Configure
  6. Click OK

Setting up a Windows failover cluster node iscsi initiator.png