Free Webinar
August 1 | 11am PT / 2pm ET
Looking for something beyond your traditional VMs?
Try application containers!
Speaker: Ivan Talaichuk, Solutions Engineer, StarWind

StarWind Virtual SAN for vSphere

Introduction to StarWind Virtual SAN for vSphere

StarWind Virtual SAN for vSphere comes as a prepackaged Linux virtual machine to be installed as a VM on vSphere. It creates a VM-centric and high performing storage pool for a VMware сluster.
This guide describes the deployment and configuration process of the StarWind Virtual SAN with VMware vSphere.

StarWind Virtual SAN for vSphere VM requirements

StarWind Virtual SAN VM requires to have the minimum of 4 virtual processors with 2 GHz reserved, 4 GB of RAM, 3 NIC ports dedicated as separate vSwitches for management, StarWind synchronization, and iSCSI traffic to ensure the proper functioning of Virtual SAN.

Creating Datacenter

NOTE: Before creating Datacenter, the vCenter server should be deployed.
1. Connect to the vCenter, select the Getting Started tab, click on Create Datacenter, and enter the Datacenter name.vCenter getting started
Create new datacenter2. Click the Datacenter’s Getting Started tab and click Create a cluster. Enter the name of the cluster and click Next.
Create a cluster3. Open the Cluster tab and click Add a host.
4. Enter the name or IP address of the ESXi host and enter the administrative account.
IP address of the ESXi host5. Lockdown mode is not enabled by default.
Lockdown mode6. Assign the license from the Licensing tab. Verify the settings.
Licensing tab7.  To provide high availability for clustered VMs, click Cluster -> Configure -> Edit and check the turn on vSphere HA option.
vSphere HA option

Installing StarWind Virtual SAN for vSphere

1. Download zip archive that contains StarWind Virtual SAN for vSphere.
https://www.starwindsoftware.com/starwind-virtual-san#download
2. Extract virtual machine files.
3. Deploy a virtual machine to the vSphere. Right-click on the host and select “Deploy OVF template” from a drop-down menu.

4. In the first step of the wizard, point to the location of the OVF template. Select VM files and click Next.

5. Specify the name and location for the StarWind Virtual SAN VM.

6. Select a resource for the StarWind Virtual SAN VM.

7. Review the information about the VM.
8. Select the storage for the VM.

9. Select networks for the VM.

10. Click Finish to start the deployment process.

Configuring Networks

By default, the StarWind Virtual SAN virtual machine receives an IP address automatically via DHCP. It is recommended to create a DHCP reservation and set a static IP address for this VM. In order to access StarWind Virtual SAN VM from the local network, the virtual machine must have access to the network. In case there is no DHCP server, the connection to the VM can be established using the VMware console and static IP address can be configured manually.
1. Open a web browser and enter the IP address of the VM, which it had received via DHCP (or had it assigned manually).
IP address of the VMAlternatively, log in to the VM via the VMware console and assign a static IP address by editing the configuration file of the interface located by the following path:
/etc/sysconfig/network-scripts.
vmware remote consoleOpen that file and change:
BOOTPROTO=dhcp To: BOOTPROTO=static

Add the IP settings needed to the file:
IPADDR=192.168.13.103
NETMASK=255.255.254.0
GATEWAY=192.168.12.1
DNS1=192.168.1.17
By default, the Management link should have ens192 interface name. The configuration file should look as following:
configuration fileRestart interface using following cmdlet: ifdown ens192 && ifup ens192Restart interface
2. Log in to StarWind Virtual SAN for vSphere using the following default credentials:
Username: root
Password: root
StarWind Virtual SAN for vSphere
3.
 After the successful login, on the left sidebar, click Accounts.
create new account4. Select a user and click Set Password.
Set Password5. On the left sidebar, click Networking.
Networking Here, Management IP address of the StarWind Virtual SAN Virtual Machine, as well as IP addresses for iSCSI and Synchronization networks can be configured.
In case the Network interface is inactive, click on the interface and turn it on.

5-2

Configuring an Automatic Storage Rescan

1. Open the Terminal page.
2. Edit file /opt/StarWind/StarWindVSA/drive_c/StarWind/hba_rescan.ps1 with the following command:
nano /opt/StarWind/StarWindVSA/drive_c/StarWind/hba_rescan.ps1
import module command
3. 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”

Configuring StarWind Management Console

1. Install StarWind Management Console on a workstation with Windows OS (Windows 7 or higher, Windows Server 2008 R2 and higher).
NOTE: StarWind Management Console and Powershell Management Library components are required.
2. Select the appropriate option to apply the StarWind License key.
Once the appropriate license key has been received, it should be applied to StarWind Virtual SAN service via Management Console or Powershell.
3. Open StarWind Management Console and click Add Server.
Add Server4. Type the IP address of the StarWind Virtual SAN in the pop-up window and click OK.
Add new StarWind server5. Select the server and click Connect.
6. Click Apply Key… on the pop-up window.

Apply key7. Select Load license from file and click the Load button.
8. Select the appropriate license key.
As an alternative, PowerShell can be used. Open StarWind InstallLicense.ps1 script with PowerShell ISE as administrator. It can be found here:
C:\Program Files\StarWind Software\StarWind\StarWindX\Samples\powershell\InstallLicense.ps1
Type the IP address of StarWind Virtual SAN VM and credentials of StarWind Virtual SAN service (defaults login: root, password: starwind).
Add the path to the license key.
Configuring StarWind Management Console9. After the license key is applied, StarWind devices can be created.
NOTE: In order to manage StarWind Virtual SAN service (e.g. create ImageFile devices, VTL devices, etc.), StarWind Management Console can be used.

Configuring Storage

StarWind Virtual SAN for vSphere can work on top of Hardware RAID or Linux Software RAID (MDADM) inside of the Virtual Machine.
Please select the required option:

Configuring StarWind Storage on Top of Hardware RAID

1. Add a new virtual disk to the StarWind Virtual SAN VM. (Make sure it is Thick Provisioned Eager Zeroed). Virtual Disk should be located on the datastore provided by hardware RAID.Add a new virtual disk to the StarWind Virtual SAN VM
Add a new virtual disk to the StarWind Virtual SAN VM_22. Find the Virtual Disk which was added.
NOTE: The added disk does not have any partitions and filesystem.Virtual DiskClick Format.
Mount point3. Create the XFS partition. The mount point should be as following: /mnt/%yourdiskname% .Click Format.
4. On the storage page of the disk, navigate to the Filesystem tab. Click Mount.
Filesystem tab5. Connect to StarWind Virtual SAN from the StarWind Management Console or from Web Console. Click Yes.
StarWind Management Console 6. Select the disk which was recently mounted.
select the mounted disk

Configuring StarWind Storage on top of Software RAID

Make sure that the prerequisites for deploying Software RAID with StarWind Virtual SAN are met:

  • The ESXi hosts have all the drives connected through HBA or RAID controller in HBA mode.
  • StarWind Virtual SAN for vSphere is installed on the ESXi server.
  • StarWind Virtual SAN must be installed on a separate storage device available to the ESXi host (e.g. SSD, HDD etc.).
  • HBA or RAID controller will be added via a DirectPath I/O passthrough device to a StarWind VM.
  • vCenter is installed in the environment to manage ESXi hosts.

PCI Device Configuration
1. Login to the vCenter via vSphere Client. Select the host where StarWind Virtual SAN VM is installed.
vCenter via vSphere Client

Select the host2. Go to the Configure tab. In the Hardware section, select PCI Devices. Click Edit.
select PCI Devices3. Locate the HBA/RAID Controller of the ESXi host. Check the box on the appropriate PCI device. Click OK.
PCI device4. The device will appear in the Direct I/O PCI Devices Available to VMs table in the Available (pending) status.
Direct I/O PCI Devices Available to VMs table5. Reboot ESXi host. After the reboot, the status changes to Available.
ESXi host6. Right-click on the StarWind Virtual SAN VM. Select Edit Settings.
Edit Settings7. Click ADD NEW DEVICE. Select PCI Device.
ADD NEW DEVICE8. Add HBA/RAID Controller to the VM. Reserve memory for the StarWind Virtual Machine. Click OK.
9. Boot StarWind Virtual SAN VM.
10. Repeat steps 1-8 for all hosts where StarWind Virtual SAN for vSphere is deployed.
11. Login to StarWind Virtual SAN VM via IP. The default credentials:
Login: root
Password: root
StarWind Virtual SAN VM12. Go to the Storage page. The Drives section shows the drives connected to HBA/RAID Controller (if available).
Drives section13. Click “+” in the RAID Devices section to create Software RAID. (In the current example, RAID 10 will be created with 4 HDD drives). StarWind recommendations of RAID configurations depending on the number of disks, chunk size, and array level are shown in the table below:

RAID Level Chunk size for HDD Arrays Chunk size for SSD Arrays

0

Disk quantity * 4Kb

Disk quantity * 8Kb

5

(Disk quantity – 1) * 4Kb

(Disk quantity – 1) * 8Kb

6

(Disk quantity – 2) * 4Kb

(Disk quantity – 2) * 8Kb

10 (Disk quantity * 4Kb)/2 (Disk quantity * 8Kb)/2

StarWind Software RAID recommended settings can be found here:
https://knowledgebase.starwindsoftware.com/guidance/recommended-raid-settings-for-hdd-and-ssd-disks/

14.
 Select the drives to add to the array.
Select the drives to add to the array15. After the synchronization is finished, find the RAID array created.
NOTE: The disk created will not have any partitions and file system.  Click Format.
RAID array created16. Create the XFS partition. Mount point should be as follows: /mnt/%yourdiskname% . Select the Custom mounting option and type noatime. Click Format.
Mount point17. On the storage page of the disk, navigate to the Filesystem tab. Click Mount.
Filesystem tab18. Connect to StarWind Virtual SAN from StarWind Management Console or from Web Console. Click Yes.
StarWind Management Console 19. Select the disk recently mounted.
mounted disk

Configuring StarWind VMs Startup/Shutdown

1. Setup the VMs startup policy on both ESXi hosts from Manage -> System tab in the ESXi web console. In the appeared window, check Yes to enable the option and choose the stop action as Shut down. Click Save to proceed.
System tab in the ESXi web console2. To configure a VM autostart, right-click on the VM, navigate to Autostart and click Enable.
 configure a VM autostart3. Complete the actions above on StarWind VM located on another host.
4. Start the both virtual machines, install OS and StarWind Virtual SAN.

Provisioning Storage with StarWind VSAN

Creating StarWind HA devices

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

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

3. Select Virtual disk. Click Next to continue.

4. Specify virtual disk Name, Location, and Size.

NOTE: Image file device and HA device can be extended later according to the steps in KB article:

How to extend Image File or High Availability device

5. Specify virtual disk options.

NOTE: Sector size should be 512 bytes in case of using ESXi.

6. Define the RAM caching policy and specify the cache size (in the corresponding units) and click Next to continue.

NOTE: The recommended RAM cache size is 1 GB per 1 TB of storage.

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

NOTE: The recommended Flash cache size is 10% of the Device size.

8. Specify Target Parameters and select the Allow multiple concurrent iSCSI connections checkbox to enable several clients to connect simultaneously to the target.

9. Click Create to add a new device and attach it to the target.
10. Click Create to add a new device and attach it to the target.

11. Click Finish to close the wizard.

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

13. Click Add replica.

Synchronous “Two-Way” replication

1. Select Synchronous “Two-Way” replication as a replication mode.

2. Specify a partner Host name or IP address and Port Number.

Selecting the Failover Strategy

StarWind provides 2 options for configuring a failover strategy:

Heartbeat
The Heartbeat failover strategy allows avoiding the “split-brain” scenario when the HA cluster nodes are unable to synchronize but continue to accept write commands from the initiators independently. It can occur when all synchronization and heartbeat channels disconnect simultaneously, and the partner nodes do not respond to the node’s requests. As a result, StarWind service assumes the partner nodes to be offline and continues operations on a single-node mode using data written to it.
If at least one heartbeat link is online, StarWind services can communicate with each other via this link. The device with the lowest priority will be marked as not synchronized and get subsequently blocked for the further read and write operations until the synchronization channel resumption. At the same time, the partner device on the synchronized node flushes data from the cache to the disk to preserve data integrity in case the node goes down unexpectedly. It is recommended to assign more independent heartbeat channels during the replica creation to improve system stability and avoid the “split-brain” issue.
With the heartbeat failover strategy, the storage cluster will continue working with only one StarWind node available.

Node Majority
The Node Majority failover strategy ensures the synchronization connection without any additional heartbeat links. The failure-handling process occurs when the node has detected the absence of the connection with the partner.
The main requirement for keeping the node operational is an active connection with more than half of the HA device’s nodes. Calculation of the available partners is based on their “votes”.
In case of a two-node HA storage, all nodes will be disconnected if there is a problem on the node itself, or in communication between them. Therefore, the Node Majority failover strategy requires the addition of the third Witness node which participates in the nodes count for the majority, but neither contains data on it nor is involved in processing clients’ requests. In case an HA device is replicated between 3 nodes, no Witness node is required.
With Node Majority failover strategy, failure of only one node can be tolerated. If two nodes fail, the third node will also become unavailable to clients’ requests.
Please select the required option:

Heartbeat

1. Select Failover Strategy.
2. Select Create new Partner Device and click Next.
3. Select a partner device Location.
4. Click Change Network Settings.
5. Specify the interfaces for Synchronization and Heartbeat Channels. Click OK and then click Next.
6. In Select Partner Device Initialization Mode, select Synchronize from existing Device and click Next.
7. Click Create Replica. Click Finish to close the wizard.
The successfully added device appears in StarWind Management Console.
8. Follow the same procedure for the creation of other virtual disks that will be used as storage repositories.

Node Majority

1. Select the Node Majority failover strategy and click Next.
Node Majority2. Choose Create new Partner Device and click Next.
3. Specify the partner device Location and modify the target name if necessary. Click Next.
4. In Network Options for Replication, press the Change network settings button and select the synchronization channel for the HA device.
5. In Specify Interfaces for Synchronization Channels, select the checkboxes with the appropriate networks and click OK. Then click Next.
6. Select Synchronize from existing Device as the partner device initialization mode.
7. Press the Create Replica button and close the wizard.
8. The added devices will appear in StarWind Management Console.
Repeat the steps above to create other virtual disks if necessary.

Adding Witness Node
Witness node can be configured on a separate host or as a virtual machine in a cloud. It requires StarWind Virtual SAN service installed on it.
NOTE: Since the device created in this guide is replicated between 2 active nodes with the Node Majority failover strategy, a Witness node must be added to it.
1. Open StarWind Management Console, right-click on the Servers field and press the Add Server button. Add a new StarWind Server which will be used as the Witness node and click OK.
witness node2. Right-click on the HA device with the configured Node Majority failover policy and select Replication Manager and press the Add Replica button.
3. Select Witness Node.
witness node
4. Specify the Witness node Host Name or IP address. The default Port Number is 3261.
Ad partner node
5. In Partner Device Setup, specify the Witness device Location. Optionally, modify the target name by clicking the appropriate button.
6. In Network Options for Replication, select the synchronization channel with the Witness node by clicking the Change Network Settings button.
7. Specify the interface for Synchronization and Heartbeat and click OK.
8. Click Create Replica and then close the wizard.
9. Repeat the steps above to create other virtual disks if necessary.

Preparing Datastores

Adding Discover Portals
1. To connect the previously created devices to the ESXi host, click on the Storage -> Adapters -> Configure iSCSI and choose the Enabled option to enable Software iSCSI storage adapter.
enable Software iSCSI storage adapter
2. In the Configure iSCSI window, under Dynamic Targets, click on the Add dynamic target button to specify iSCSI interfaces.
Add dynamic target3. Enter the iSCSI IP address of the first StarWind node from the virtual local network 172.16.10.*
Enter the iSCSI IP address4. Add the IP address of the second StarWind node – 172.16.10.* Confirm your actions by pressing Save configuration.
IP address of the second StarWind node5. The result should look like in the image below.
configure iscsi6. In All Actions, click on the Rescan button to rescan storage.
Rescan 7. Now, the previously created StarWind devices are visible.
8. Repeat all the steps 1-6 on the other ESXi node, specifying corresponding IP addresses for the iSCSI subnet.

Creating Datastores

1. Open the Storage tab on one of your hosts and click on New Datastore.
Select creation type2. Specify the Datastore name, select the previously discovered StarWind device, and click Next.
Select device3. Enter datastore size and click Next.
Enter datastore size4. Verify the settings and click Finish.
5. Add another Datastore (DS2) in the same way but select the second device for the second datastore.
6. Verify that your storages (DS1, DS2) are connected to both hosts. Otherwise, rescan the storage adapter.
storages7. 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.
8. Multipathing configuration can be checked only from vCenter. To check it, click the Configure button, choose the Storage Devices tab, select the device, and click the Edit Multipathing button.
Multipathing configuratio9. From the ESXi host, click on the Manage tab on one of the hosts and proceed to Services. Choose SSH and right-click on Start, then select Start and Stop with host.
Start and Stop with host10. Connect to the host using the SSH client (e.g. Putty).
Connect to the host11. Check the device list using the following command:

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

NOTE: Paste UID of the StarWind device at the end of the command. Also, this parameter has been already added into the Rescan Script and this action is performed automatically.
UID of the StarWind device13. Repeat the steps above on each host for each datastore.
14. Сhoose Advanced Settings.
configuration tab15. Select Disk and change the Disk.DiskMaxIOSize parameter to 512.
Disk 

Save your time finding all the answers to your questions in one place!
Have a question? Doubt something? Or just want to know an independent opinion?
StarWind Forum exists for you to “trust and verify” any issue already discussed and solved