Free Webinar
December 20 | 11 am PT / 2 pm ET
Do you want to advance
Windows Server Failover Clustering management skills?
Pick the best WSFC management option!
Speaker: Ivan Ischenko, Pre-Sales Engineer, StarWind

StarWind Virtual SAN®
Hyperсonverged 3-node Scenario
with VMware vSphere 6.5

Published: August 29, 2018

INTRODUCTION

VMware requires a shared storage to guarantee the data safety and allow the virtual machines migration. It enables continuous application availability and eliminates any single point of failure within IT environment. VMware users have two options when choosing the shared storage:

  • Hyperconverged solutions allow sharing the same hardware resources for the application (i.e. hypervisor, database) and the shared storage, thus decreasing the TCO and achieving the outstanding performance results.
  • Compute and Storage Separated solutions keep compute and storage layers separately from each other, thus making the maintenance easier, increasing the hardware usage efficiency and allowing users to build the system accurately for solving the tasks.

This guide is intended for the experienced VMware and Windows system administrators and IT professionals who would like to configure StarWind Virtual SAN® Hyperсonverged solution for vSphere deployments. It provides a step-by-step guidance on configuring a 3-node vSphere cluster using StarWind Virtual SAN® to convert the local storage of the ESXi hosts into a fault-tolerant shared storage resource for ESXi.

The document describes the configuration using Heartbeat failover strategy.

A full set of up-to-date technical documentation can always be found here, or by pressing the Help button in StarWind Management Console.

For any technical inquiries please visit our online community, Frequently Asked Questions page, or use the support form to contact our technical support department.

Solution Diagram

The diagram below illustrates the network and storage configuration of the resulting solution described in the guide.

Preparing Hypervisor for StarWind Deployment

Configuring Networks

Configure network interfaces on each node to make sure that Synchronization and iSCSI/StarWind Heartbeat interfaces are in different subnets and connected physically according to the network diagram above. In this document, 172.16.11.x, 172.16.12.x, 172.16.13.x subnets are used for iSCSI/StarWind Heartbeat traffic, while 172.16.21.x, 172.16.22.x, 172.16.23.x subnets are used for the Synchronization traffic. All the actions below should be applied to each ESXi server.

1. Go to Networking -> Virtual Switches and click Add standard virtual switch. Type vSwitch Name, set MTU to 9000 and specify proper uplink. Create four vSwitches: two for the iSCSI/ StarWind Heartbeat channel and two for the Synchronization channel.

2. Create two VMkernel ports one per each iSCSI/ StarWind Heartbeat channel at Networking -> VMkernel NICS. Create new Port groups while adding VMkernel ones. Specify the static IPv4 address for each VMkernel.

3. Add four more Virtual Machine Port Groups: two more for iSCSI/StarWind Heartbeat channel and two for Synchronization channel. Assign vSwitch used for specified traffic at Networking -> Port groups tab.

4. Repeat the steps 1-3 for any other links intended for Synchronization and iSCSI/Heartbeat traffic on all ESXi nodes. Assign the corresponding subnets to VMkernels on the second and third hosts.

Creating Datacenter

NOTE: Before creating Datacenter, the vCenter server should be deployed.

5. Connect to vCenter, select the Getting Started tab, click on Create Datacenter and enter Datacenter name.

Creating Cluster

6. Click the Datacenter Getting Started tab and Create a cluster. Enter the name of the cluster and click Next.

Adding Hosts to Cluster

7. Open the Cluster tab and click Add a host.

8. Enter the name or IP address of the ESXi host and enter the administrative account.

9. Lockdown mode is disabled by default.

10. Apply the license by clicking Home -> Administration -> Licensing. Verify the settings.

Preparing StarWind Virtual Machines

11. Create Virtual Machines (VMs) on each ESXi host with Windows Server 2016 (2012 R2) and StarWind VSAN installed.

Make sure that server hardware used for StarWind Virtual SAN deployment satisfies the requirements listed below.

Minimum requirements:

RAM: 4 GB (plus the size of the RAM cache if it is planned to be used);
CPUs: 4 virtual processors with 2 GHz reserved;
Hard disk 1: 100 GB for OS (recommended)
The location of StarWind VM on the local drive (Boss card, SATA DOM, etc.) makes it possible to connect the underlying storage to StarWind VM as RDM disk;
Hard disk 2: depends on the storage volume to be used as shared storage.
Each hard disk should be Thick Provisioned Eager Zeroed.

NOTE: Each hard disk should be Thick Provisioned Eager Zeroed.

Network adapter 1: Management
Network adapter 2: iSCSI for connection from first to second node
Network adapter 3: iSCSI for connection from first to third node
Network adapter 4: Sync for connection from first to second node
Network adapter 5: Sync for connection from first to third node

NOTE: All the network adapters should be configured as VMXNET 3. It is recommended to set jumbo frames to 9000 on vSwitches and VMkernel ports for iSCSI and Synchronization traffic. Additionally, vMotion can be enabled on VMkernel ports.

NOTE: In this technical guide, a Windows Server 2016-based virtual machine created to run StarWind Virtual SAN is called StarWind Virtual Machine (StarWind VM). Active Directory Domain Services role can be added on StarWind VM if necessary. Thus, it can serve as a domain controller.

NOTE: It is not recommended to make backups and snapshots of StarWind VM with synchronous replication feature inside as this can pause the VM operation. Pausing the VMs while StarWind service is under load may lead to split-brain issues and data corruption.

Configuring StarWind VMs autostart/shutdown

12. Login to vCenter Web Client and configure the StarWind VMs autostart policy on each ESXi hosts in the Configure -> VM Startup/Shutdown tab.

13. Click Edit to configure the VM Startup/Shutdown policies. Check Automatically start and stop the virtual machines with the system option. Select Guest shutdown action as the shutdown action. Move StarWind VMs and vCenter VM up to setup Automatic Startup. Click OK to proceed.

14. Complete the actions on each ESXi host.

15. Turn on vSphere HA, click Cluster -> Configure -> Edit.

16. Start the StarWind VMs, install OS and StarWind Virtual SAN.

Downloading, Installing and Registering the Software

17. Download the StarWind setup executable file from StarWind website by following the link:

https://www.starwind.com/registration-starwind-virtual-san

18. Launch the downloaded setup file on the server where StarWind Virtual SAN or one of its components should be installed. The setup wizard will appear.

19. Read and accept the License Agreement. Click Next to continue.

20. Carefully read the information about new features and improvements. Red text indicates warnings for users who are updating existing software installations. Click Next to continue.

21. Specify one of the following installation types and the components which should be installed:

  • Full installation (recommended):

Full installation includes both StarWind Service and the StarWind Management Console elements. It allows users to manage storage resources on the machine where StarWind Virtual SAN is installed, as well as manage other StarWind Virtual SAN installations on the network.

  • StarWind Virtual SAN Service:

This installation type is designed for Core OS editions. StarWind Service is the “core” of the software. It enables the creation of iSCSI targets as well as sharing virtual and physical devices. StarWind Management Console installed on any Windows computer or virtual machine in the network can manage the service.

  • StarWind Management Console:

StarWind Management Console is the Graphic User Interface (GUI) part of the software that controls and monitors all storage-related operations (e.g. allows users to create targets and devices on the available Virtual SAN servers). Once installed, StarWind Management Console is connected to the servers running StarWind Virtual SAN.

22. Specify Start Menu Folder and click Next to continue.

23. Enable the checkbox to create a desktop icon. Click Next.

24. The appeared prompt will ask to request a time-limited fully functional evaluation key, a FREE version key, or a fully-commercial license key sent to you with the purchase of StarWind Virtual SAN. Select the appropriate option.

25. Click Browse to locate the license file and click Next.

26. Review the licensing information. Click Next to apply the license key.

27. Verify the installation settings. Click Back to make any changes or Install to continue.

28. Click Finish to complete the installation process. Optionally, StarWind Management Console can be launched by ticking the corresponding checkbox.

29. Repeat the steps above on all StarWind Virtual Machines.

Configuring Automatic Storage Rescan

For each ESXi host, configure an automatic storage rescan.

30. Log in to StarWind VM and install vSphere PowerCLI on each StarWind Virtual Machine by adding the PowerShell module (Internet connectivity is required). To do so, run the following command in PowerShell:

NOTE: In case of using Windows Server 2012 R2, online installation of PowerCLI requires Windows Management Framework 5.1 or later version available on VMs. Windows Management Framework 5.1 can be downloaded by following the link: https://go.microsoft.com/fwlink/?linkid=839516

31. Open PowerShell and change the Execution Policy to Unrestricted by running the following command:

32. Create the PowerShell script which will perform an HBA rescan on the hypervisor host.

In the appropriate lines, specify the IP address and login credentials of the ESXi host on which the current StarWind VM is stored and running:

$ESXiHost1 = “IP address”
$ESXiUser = “Login”
$ESXiPassword = “Password”

Save the script as rescan_script.ps1 to the root of the C:\ drive of the VM.

33. Perform the configuration steps above on the partner nodes.

34. Go to Control Panel -> Administrative Tools -> Task Scheduler -> Create Basic Task and follow the wizard steps:

35. Specify the task name, select When a specific event is logged option, and click Next.

36. Select Application in the Log dropdown menu, type StarWindService as the event source and 788 as event ID. Click Next.

37. Select the Start a Program option as the action the task should perform and click Next.

38. Type powershell.exe in the Program/script field. In the Add arguments field, type:

“ -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File C:\rescan_script.ps1 ”

39. Click Finish to exit the Wizard.

40. Configure the task to run with the highest privileges by enabling the corresponding checkbox at the bottom of the window. Make sure that Run whether user is logged on or not option is selected.

41. Switch to the Triggers tab. Verify that the trigger on event 788 is set up correctly.

42. Click New and add other triggers for Event ID 782, 257, 773, and 817.

43. All the added triggers should look like in the picture below.

44. Switch to the Actions tab and verify the task parameters.

Press OK and type in the credentials for the user whose rights will be used to execute the command.

45. Perform the same steps on all StarWind VMs, specifying the corresponding settings.

Provisioning Storage with StarWind VSAN

Creating StarWind HA devices (DS1, DS2)

46. Open StarWind Management Console and click on the Add Device (advanced) button.

47. Select Hard disk device as the type of device to be created. Click Next to continue.

48. Select the Virtual disk option as a disk device type and click Next to continue.

49. Specify virtual disk Name, Location, and Size. Click Next to continue.

50. Specify Virtual Disk Options.

NOTE: Sector size should be 512 bytes when using ESXi.

51. Define the RAM caching policy and specify the cache size in corresponding units.

NOTE: It is recommended to assign 1 GB of L1 cache in Write-Back or Write-Through mode per 1 TB of storage capacity. The cache size should correspond to the storage working set of the servers.

52. Define the Flash caching policy and the cache size. Click Next to continue.

NOTE: The recommended size of the L2 cache is 10% of the initial StarWind device capacity.

53. Specify Target Parameters. Select the Target Name checkbox to enter a custom name of the target if required. Otherwise, the name will be generated automatically in accordance with the specified target alias. Click Next to continue.

54. Click Create to add a new device and attach it to the target and Finish to close the wizard.

55. Right-click on the recently created device and select Replication Manager from the shortcut menu.

56. Click Add replica.


57. Select Synchronous “Two-Way” Replication as a replication mode. Click Next to proceed.

58. Specify partner host name, IP address and port number. Click Next to proceed.

59. Select the Failover Strategy policy.

NOTE: With Heartbeat failover strategy, one node remains active even in case of all partner nodes failure. With Node Majority failover strategy, the system can tolerate failure of only one node. If two nodes fail, the third one will become unavailable to the clients’ requests.

This document describes the creation of an HA device with Heartbeat failover strategy.

The creation of an HA device with Node Majority failover strategy is covered in the following document:

https://www.starwindsoftware.com/resource-library/creating-highly-available-device-using-node-majority-failover-strategy

60. Select Create new Partner Device and click Next.

61. Select the device location and specify target name if required. Otherwise, the name is generated automatically in accordance with the specified target alias. Click Next.

62. Click Change Network Settings.

63. Specify interfaces for Synchronization and Heartbeat channels. Click OK->Next.

64. Select Synchronize from existing Device. Click Next to continue.

65. Click Create Replica.

66. Click Finish to close the wizard.

67. Add one more replica to the third StarWind VM.

68. Specify a partner hostname, IP address and port number. Click Next to proceed.

69. Create a new partner device or select an existing device. Click Next.

70. Click Change network settings.

71. Click Create Replica.

72. Click Finish to close the wizard.

73. The successfully added devices will appear in the StarWind Management Console. Repeat the steps above to create other virtual disks that will be used as datastores.

Preparing Datastores

Adding Discover Portals

74. To connect the previously created devices to the ESXi host, click Storage Adapters and +, select Software iSCSI adapter and the Enabled option to enable Software iSCSI storage adapter.

75. On the same page, go below and click Targets tab. Click Add to add dynamic targets.

76. In iSCSI Server field, enter the iSCSI IP address of the first StarWind node and add other IP addresses of the second and third StarWind nodes from the virtual local networks 172.16.11.*. Click Save configuration.

77. Rescan all storage adapters. The result should look like in the image below. Now, the previously created StarWind devices are visible.

78. Repeat all the steps from this section on all three ESXi nodes, specifying corresponding IP addresses for the iSCSI subnet.

Creating datastores

79. Right-click on Datacenter ->Storage ->New Datastore.

80. Select VMFS Datastore and click Next. On the next step, type the Datastore name, select the previously discovered StarWind device, and click Next.

81. Select the VMFS 6 file system. Click Next.

82. Enter Datastore size. Click Next.

83. Verify the settings. Click Finish.

84. Add another Datastore (DS2) in the same way but select the second device for the second datastore.

85. Verify that the storages (DS1, DS2) are connected to all hosts. Otherwise, rescan the storage adapter.

86. Path Selection Policy changing for Datastores from Most Recently Used (VMware) to Round Robin (VMware) has been already added into the Rescan Script, and this action is performed automatically. For checking and changing this parameter manually, the hosts should be connected to vCenter.

87. Multipathing configuration can be checked only in vCenter. To check it, click the Configure button, select the Storage Devices tab, select the device, and click the Edit Multipathing button.

88. Select Round Robin (VMware) MPIO policy.

Additional Tweaks

89. On each ESXi host open Configure tab, switch to Security Profile and then click Edit to configure Services.

90. Select SSH. Click start service and set up Startup Policy on Start, then select Start and Stop with host.

91. Connect to the host using SSH client (e.g. Putty).

92. Check the storage device list and get UID of StarWind device(s) using the following command:

93. For devices, adjust Round Robin size from 1000 to 1 using the following command:

NOTE. Paste UID of StarWind device in the end of the command. Also, this parameter has been already added into the Rescan Script and this action is performed automatically.

94. Repeat the steps above on each host for each datastore.

CONCLUSION

This technical paper covers the configuration of the StarWind Virtual SAN for Hyperconverged 3-node scenario with VMware 6.5. In this setup, all virtual machines are stored on the shared storage that is provided by StarWind. VMware HA provides VMs with redundancy, while StarWind is responsible for the storage uptime. The combination of StarWind shared storage and VMware ensures high availability for applications and data across the entire virtualized environment. Using StarWind VSAN, the local storage of both ESXi hosts is converted into a fault-tolerant shared storage synchronously ”mirrored” between the nodes. Virtual SAN nested inside a VM and running on both ESXi hosts ensures data safety and maintains continuous application availability.