StarWind Virtual SAN:
Configuration Guide for VMware vSphere [ESXi], VSAN Deployed as a Controller Virtual Machine (CVM) using Web UI
- May 23, 2024
- 20 min read
- Download as PDF
Annotation
Relevant Products
This guide is applicable to StarWind Virtual SAN and StarWind Virtual SAN Free (Version V8 (Build 15260, CVM Version 20231016) and later).
For older versions of StarWind Virtual SAN (Version V8 (Build 15260, OVF Version 20230901) and earlier), please refer to this configuration guide: StarWind Virtual SAN: Configuration Guide for VMware vSphere [ESXi], VSAN Deployed as a Controller VM using PowerShell CLI
Purpose
This guide provides a comprehensive outline on how to deploy and configure StarWind Virtual SAN within the VMware vSphere environment and create StarWind devices using the Web UI. It includes links to the system requirements, RAID settings, best practices, and steps to ensure a seamless setup and integration.
Audience
The guide is created for IT specialists, system administrators, and VMware professionals who are keen on deploying and configuring StarWind Virtual SAN on VMware vSphere.
Expected Result
Users will possess a robust understanding of the steps and best practices for deploying and configuring StarWind Virtual SAN in a VMware vSphere environment.
StarWind Virtual SAN for vSphere VM requirements
Prior to installing StarWind Virtual SAN Virtual Machines, please make sure that the system meets the requirements, which are available via the following link: https://www.starwindsoftware.com/system-requirements
Storage provisioning guidelines: https://knowledgebase.starwindsoftware.com/guidance/how-to-provision-physical-storage-to-starwind-virtual-san-controller-virtual-machine/
Recommended RAID settings for HDD and SSD disks:
https://knowledgebase.starwindsoftware.com/guidance/recommended-raid-settings-for-hdd-and-ssd-disks/
Please read StarWind Virtual SAN Best Practices document for additional information: https://www.starwindsoftware.com/resource-library/starwind-virtual-san-best-practices
Pre-Configuring the Servers
The diagram below illustrates the network and storage configuration of the solution:
1. ESXi hypervisor should be installed on each host.
2. StarWind Virtual SAN for vSphere VM should be deployed on each ESXi host from an OVF template, downloaded on this page: https://www.starwindsoftware.com/release-notes-build
3. The network interfaces on each node for Synchronization and iSCSI/StarWind heartbeat interfaces should be in different subnets and connected directly according to the network diagram above. Here, the 172.16.10.x subnet is used for the iSCSI/StarWind heartbeat traffic, while the 172.16.20.x subnet is used for the Synchronization traffic.
NOTE: Do not use iSCSI/Heartbeat and Synchronization channels over the same physical link. Synchronization and iSCSI/Heartbeat links and can be connected either via redundant switches or directly between the nodes.
vCenter Server can be deployed separately on another host or as VCSA on StarWind VSAN highly-available storage, created in this guide.
Preparing Environment for StarWind VSAN 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. All actions below should be applied to each ESXi server.
NOTE: Virtual Machine Port Group should be created for both iSCSI/ StarWind Heartbeat and the Synchronization vSwitches. VMKernel port should be created only for iSCSI traffic. Static IP addresses should be assigned to VMKernel ports.
NOTE: It is recommended to set MTU to 9000 on vSwitches and VMKernel ports for iSCSI and Synchronization traffic. Additionally, vMotion can be enabled on VMKernel ports.
1. Using the VMware ESXi web console, create two standard vSwitches: one for the iSCSI/ StarWind Heartbeat channel (vSwitch1) and the other one for the Synchronization channel (vSwitch2).
2. Create a VMKernel port for the iSCSI/ StarWind Heartbeat channel.
3. Add a Virtual Machine Port Groups on the vSwitch for iSCSI traffic (vSwtich1) and on the vSwitch for Synchronization traffic (vSwitch2).
4. Repeat steps 1-3 for any other links intended for Synchronization and iSCSI/Heartbeat traffic on ESXi hosts.
Deploying 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 the virtual machine files.
3. Deploy the control virtual machine to the VMware vSphere. Right-click on the Datacenter, cluster, or node menu and select the “Deploy OVF Template…” option from a drop-down menu.
4. In the first step of the wizard, point to the location of the OVF template. Select the VM files and click Next.
5. Specify the VM name and target location.
6. Select a compute resource intended to run the StarWind vSAN CVM
7. Review the template details. Click Next.
8. In the second step of the wizard, specify the virtual machine provisioning type, VM Storage Policy, and select the direct-attached storage for the appliance system drive. Click Next.
9. Select the destination network for each network adapter assigned to the VM.
The default naming for virtual switches:
- the Management virtual switch is “Management vSwitch”,
- the iSCSI virtual switch is “Data/iSCSI vSwitch”,
- the Synchronization virtual switch is “Replication/Sync vSwitch “.
Specify corresponding network connections according to your virtual network naming. Click Next.
10. Specify the hostname, static IPv4 address, gateway, DNS, and additional network settings for Management and iSCSI/Data network interfaces:
NOTE: To manage the StarWind appliances via the StarWind vCenter plugin, the static IPv4 address must be assigned.
NOTE: if a DHCP server is available on the given network, you can skip setting the additional parameters for that interface.
11. Review the deployment summary information and click to start the VM creation.
12. Repeat the VM deployment on each other ESXi hosts.
NOTE: In some cases, it’s recommended to reserve memory for StarWind VSAN VM.
NOTE: When using StarWind with the synchronous replication feature inside of a Virtual Machine, it is recommended not to make backups and/or snapshots of the Virtual Machine with the StarWind VSAN service installed, as this could pause the StarWind Virtual Machine. Pausing the Virtual Machines while the StarWind VSAN service is under load may lead to split-brain issues in synchronous replication devices, thus to data corruption.
Initial Configuration Wizard
1. Start StarWind Virtual SAN CVM.
2. Launch VM console to see the VM boot process and get the IPv4 address of the Management network interface.
NOTE: in case VM has no IPv4 address obtained from a DHCP server, use the Text-based User Interface (TUI) to set up a Management network.
Default credentials for TUI: user/rds123RDS
3. Using the web browser, open a new tab and enter the VM IPv4 address to open StarWind VSAN Web Interface. Click “Advanced” and then “Continue to…”
4. StarWind VSAN web UI welcomes you, and the “Initial Configuration” wizard will guide you through the deployment process.
5. In the following step, upload the license file.
6. Read and accept the End User License Agreement to proceed.
7. Review or edit the Network settings and click Next.
NOTE: Static network settings are recommended for the configuration.
8. Specify the hostname for the virtual machine and click Next.
9. Create an administrator account. Click Next.
10. Review your settings selection before setting up StarWind VSAN.
11. Please standby until the Initial Configuration Wizard configures StarWind VSAN for you.
12. The appliance is set and ready. Click on the Done button to install the StarWind vCenter Plugin right now or uncheck the checkbox to skip this step and proceed to the Login page.
13. Repeat the initial configuration on other StarWind CVMs that will be used to create 2-node or 3-node HA shared storage.
Add Appliance
To create 2-way or 3-way synchronously replicated highly available storage, add partner appliances that use the same license key.
1. Add StarWind appliance(s) in the web console, on the Appliances page.
NOTE: The newly added appliance will be linked to already connected partners.
2. Provide credentials of partner appliance.
3. Wait for connection and validation of settings.
4. Review the summary and click “Add appliance”.
Configure HA networking
1. Launch the “Configure HA Networking” wizard.
2. Select appliances for network configuration.
NOTE: the number of appliances to select is limited by your license, so can be either two or three appliances at a time.
3. Configure the “Data” network. Select interfaces to carry storage traffic, configure them with static IP addresses in unique networks, and specify subnet masks:
- assign and configure at least one interface on each node
- for redundant configuration, select two interfaces on each node
- ensure interfaces are connected to client hosts directly or through redundant switches
4. Assign MTU value to all selected network adapters, e.g. 1500 or 9000. Ensure the switches have the same MTU value set.
5. Click Next to validate Data network settings.
6. Configure the “Replication” network. Select interfaces to carry storage traffic, configure them with static IP addresses in unique networks, and specify subnet masks:
- assign and configure at least one interface on each node
- for redundant configuration, select two interfaces on each node
- ensure interfaces are connected to client hosts directly or through redundant switches
7. Assign MTU value to all selected network adapters, e.g. 1500 or 9000. Ensure the switches have the same MTU value set.
8. Click Next to validate the Replication network settings completion.
9. Review the summary and click Configure.
Add physical disks
Attach physical storage to StarWind Virtual SAN Controller VM:
- Ensure that all physical drives are connected through an HBA or RAID controller.
- Deploy StarWind VSAN CVM on each server that will be used to configure fault-tolerant standalone or highly available storage.
- Store StarWind VSAN CVM on a separate storage device accessible to the hypervisor host (e.g., SSD, HDD).
- Add HBA, RAID controllers, or NVMe SSD drives to StarWind CVM via a passthrough device.
Learn more about storage provisioning guidelines in the KB article.
Create Storage Pool
1. Click the “Add” button to create a storage pool.
2. Select two storage nodes to create a storage pool on them simultaneously.
3. Select physical disks to include in the storage pool name and click the “Next” button.
NOTE: Select identical type and number of disks on each storage node to create identical storage pools.
4. Select one of the preconfigured storage profiles or create a redundancy layout for the new storage pool manually according to your redundancy, capacity, and performance requirements.
Hardware RAID, Linux Software RAID, and ZFS storage pools are supported and integrated into the StarWind CVM web interface. To make easier the storage pool configuration, the preconfigured storage profiles are provided to configure the recommended pool type and layout according to the direct-attached storage:
- hardware RAID – configures Hardware RAID’s virtual disk as a storage pool. It is available only if a hardware RAID controller is passed through to the CVM
- high performance – creates Linux Software RAID-10 to maximize storage performance while maintaining redundancy
- high capacity – creates Linux Software RAID-5 to maximize storage capacity while maintaining
redundancy - better redundancy – creates ZFS Stripped RAID-Z2 (RAID 60)) to maximize redundancy while maintaining high storage capacity
- manual – allows users to configure any storage pool type and layout with attached storage
5. Review “Summary” and click the “Create” button to create the pools on storage servers simultaneously.
Create Volume
1. To create volumes, click the “Add” button.
2. Select two identical storage pools to create a volume simultaneously.
3. Specify volume name and capacity.
4. Select the Standard volume type.
5. Review “Summary” and click the “Create” button to create the pool.
Create HA LUN
The LUN availability for StarWind LUN can be Standalone and High availability (2-way or 3-way replication) and is narrowed by your license.
1. To create a virtual disk, click the Add button.
2. Select the protocol.
3. Choose the “High availability” LUN availability type.
4. Select the appliances that will host the LUN. Partner appliances must have identical hardware configurations, including CPU, RAM, storage, and networking.
5. Select a volume to store the LUN data. Selected volumes must have identical storage configurations.
6. Select the “Heartbeat” failover strategy.
NOTE: To use the Node witness or the File share witness failover strategies, the appliances should have these features licensed.
7. Specify the HA LUN settings, e.g. name, size, and block size. Click Next.
8. Review “Summary” and click the “Create” button to create the LUN.
Connecting StarWind LUNs to VMware vSphere servers
1. Log in to VMware vSphere Client.
2. Select the ESXi server in the sidebar-menu, then navigate to the “Configure” tab and open the “Storage Adapters” submenu page.
3. Click the “+Add Software Adapter” button to launch the corresponding wizard.
4. Mark the “Add software iSCSI adapter” option and click OK.
5. Add the IPv4 address of StarWind CVM Data\iSCSI network interface to the “Dynamic Discovery“. Save the configuration
6. Click on the “Rescan” button to discover StarWind virtual disk.
7. Once scanned, the created StarWind LUNs appear on the “Storage Devices” submenu page.
8. Right-click on the ESXi server to open the “Actions” menu, click on “Storage” and click the “New datastore” button.
9. The Datastore creation wizard appears. Specify the Datastore type as VMFS.
10. Specify the datastore name. Select the StarWind virtual disk.
11. Specify the VMFS6 version for the datastore.
12. Specify the datastore size using the entire disk capacity.
13. Review the configuration summary and click “Finish” to create the datastore.
14. Check the StarWind datastore in the Datastores tab.
15. Repeat the configuration steps 6-13 to add newly created StarWind LUNs as datastores on your VMware vSphere cluster.
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.
2. To configure a VM autostart, right-click on the VM, navigate to Autostart and click Enable.
3. Complete the actions above on StarWind VM located on all ESXi hosts.
4. Start the virtual machines on all ESXi hosts.
Configuring an Automatic Storage Rescan
1. Connect to the appliance via Shell Terminal in a Text-based User Interface (TUI) or using a remote SSH terminal.
2. Edit file /opt/starwind/starwind-virtual-san/drive_c/starwind/hba_rescan_config.py with the following command: sudo nano /opt/starwind/starwind-virtual-san/drive_c/starwind/hba_rescan_config.py
3. In the appropriate lines, specify the IP address and login credentials of the single or multiple ESXi hosts (see NOTE below) on which the current StarWind VM is stored and will trigger the storage rescan task:
$esxi_host_list = [‘IP address’]
$username = ‘Login’
$password = ‘Password’
NOTE: In some cases, it makes sense to create a separate ESXi user for storage rescans. To create the user, please follow the steps below:
4. Log in to ESXi with the VMware Host Client. Click Manage, and under Security & users tab, in the Users section click Add user button. In the appeared window, enter a user name, and a password.
5. Create a new Role, under Roles section, and click New Role button. Type a name for the new role. Select privileges for the role and click OK.
The following privileges might be assigned: Host – Inventory, Config, Local Cim, and Global – Settings.
6. Assign permission to the storage rescan user for an ESXi host – right-click Host in the VMware Host Client inventory and click Permissions. In the appeared window click Add user.
7. Click the arrow next to the Select a user text box and select the user that you want to assign a role to. Click the arrow next to the Select a role text box and select a role from the list.
(Optional) Select Propagate to all children or Add as group. Click Add user and click Close.
Make sure that rescan script is working and execute it from the VM: sudo python3 /opt/starwind/starwind-virtual-san/drive_c/starwind/hba_rescan.py
4. Repeat all steps from this section on the other ESXi hosts.
Performance Tweaks
1. Click on the Configuration tab on all of the ESXi hosts and choose Advanced Settings.
2. Select Disk and change the Disk.DiskMaxIOSize parameter to 512.
3. To optimize performance change I/O scheduler options according to the article below:
https://knowledgebase.starwindsoftware.com/guidance/starwind-vsan-for-vsphere-changing-linux-i-o-scheduler-to-optimize-storage-performance/
NOTE: Changing Disk.DiskMaxIOSize to 512 might cause startup issues with Windows-based VMs, located on the datastore where specific ESX builds are installed. If the issue with VMs start appears, leave this parameter as default or update the ESXi host to the next available build.
NOTE: To provide high availability for clustered VMs, deploy vCenter and add ESXi hosts to the cluster.
Click on Cluster -> Configure -> Edit and check the turn on vSphere HA option if it’s licensed.
Installing StarWind vCenter Plugin
NOTE: This step is optional. StarWind vCenter plugin integrates the Controller Virtual Machines management into VMware vSphere user interface allowing managing compute and storage resources from a single web console.
1. To install the StarWind Plugin ensure that the version of your VMware vCenter Server Appliance 7.o or newer, then click Next.
2. Specify the vCenter Server FQDN or IP Address and administrator credentials and click Next.
3. Confirm the connection to your vCenter Server Appliance.
4. Review Summary and click the Install button.
5. Wait until the plugin is installed.
6. Click the Open Plugin page to start using StarWind SAN & NAS via the vCenter Plugin interface.
7. Repeat the plugin installation on each StarWind Controller Virtual Machine that will be managed using the StarWind Plugin in the VMware vSphere web interface.
Conclusion
By following this guide, StarWind Virtual SAN was deployed and configured in a VMware vSphere environment. As a result, the highly-avaialble datastores were created for storing the virtual machines in VMware vSphere cluster. Also, VMware vSphere plugin was deployed to manage StarWind storage from vSphere Web UI.