VMware is one of the best and user-friendly virtualization software in the market. Their Workstation and VM Player can be installed on most of the client Operating Systems to virtualize the physical hardware and install multiple Operating Systems top of it.
Not only the server or client Operating Systems but even we can also install network storage Operating Systems on VMware as a virtual machine. Here I’m going to show how to install FreeNAS on VMware Workstation and configure iSCSI disks. This method gives the ideal test lab setup to have NAS as a virtual machine on single computer hardware. We can use this storage to setup Microsoft Windows server cluster.
What is NAS (Network Access Storage)?
In the physical environment, NAS is a hardware device with hard drives and it is accessible via the network port. The controller will have its own Operating System to manage the disks and allow the access. Every NAS devices have plenty of features and tools to make it scalable, secure and accessible.
These NAS devices support iSCSI, that can be used to set up a Windows failover cluster. But for the testing purpose in VMware, we can’t have the expensive physical NAS devices to configure a cluster with high availability in VMware. So, there is some free open source NAS software available to install on computers or servers to build a NAS system with existing hard disks and partitions. These free storage virtualization software make your computer hard disk as network access storage and allow other clients to access the disk directly through the network.
I found that these two famous free NAS software can be installed in the computer and make NAS.
Installing FreeNAS on VMware is simple and straight forward. But setting up and configuring the iSCSI disks involves several steps. Also, remember that the steps involved in configuring iSCSI disks in FreeNAS as shown below remain the same on any platform. For example, if you have the physical FreeNAS box, or install it on VirtualBox or any other virtualization software, you can follow the same below steps to set up disks.
How to Install FreeNAS Server on VMware workstation?
1) Download the latest stable version from the official site here. At the moment you can find FreeNAS 11.2 as on writing this guide.
NOTE: The current version requires a minimum 8GB of RAM. Since I have enough resources on my PC, I could configure a VM with 8GB RAM. If you do not have enough RAM, then you can try with lower capacity. It may impact the performance of VM.
2) Create a virtual machine in VMware workstation. Once you browse the downloaded FreeNAS ISO, it will automatically detect the OS version.
3) Set a hard disk size for the Operating System. Remember, this hard disk will be used to install the Operating System only. We can’t use this disk to create storage, disks and LUNs for sharing a purpose. We need to attach another hard disk again to this VM. We will discuss that later.
4) Set the appropriate hardware resources. I modified the RAM to 8GB and Processor numbers to 4.
Make sure that the ISO file is attached to CD/DVD drive.
5) Boot the system with the first option (default)
6) Select the Install/Upgrade option and press OK.
7) On the next screen, select the virtual hard disk to install. You need to choose the hard drive and press spacebar key to make the selection.
8) Select the Boot mode as ‘Boot via BIOS’ option to make the things simple.
You will see the installation screen. It is fast. The installation will be completed
9) Remove the loaded ISO file and reboot the virtual machine.
At this point, we have successfully installed the latest FreeNAS on VMware which is running on Windows 10 host.
Let’s see some more settings to make it work.
Network Settings in FreeNAS VM – Vmware
Once the VM booted, you can see the below screen which gives several options.
By default, the VM network is in NAT mode in VMware. I’m not going to explain more about VMware networking.
In the NAT mode, your virtual machines and host will communicate well even though the host and VM IP look different.
If you want you can change the network mode to ‘Bridge Mode’ so the FreeNAS virtual machine will get the same IP scheme of your host computer physical network.
In both cases, we need to configure static IP for FreeNAS storage. That is the ideal way to keep the IP unchanged for your storage device.
10) Enter 1 and continue the network configuration. Set up a manual IP which is not in the DHCP scope.
Here are the steps involved in setting up the IP.
Once the IP changes, it will display the web URL on the screen.
11) Open a browser and access the URL. Login with the root user name and password you set during the installation.
You must land on the FreeNAS management page without any issues.
Add Disk and Configure iSCSI in FreeNAS 11 on VMware
12) Now we are ready to configure the storage system and iSCSI disks. But we do not have any more drives than the OS disk. Hence we need to add another disk. You can add a few disks if you want.
Luckily VMware allows adding the virtual disks to a virtual machine while it is working. SCSI disks can be added.
I added another 10GB disk for testing purpose.
13) Make sure VMware and FreeNAS detected the new disk successfully. It should be listed under the disks.
14) Create a pool. Select and add the new disk to the pool, as shown below.
15) Now start the iSCSI service in FreeNAS. By default, it is off. Go to ‘Services’, select and switch on the iSCSI service.
16) Go to ‘Sharing’ and select ‘Block (iSCSI)’ to configure more options.
17) Click on ‘Portals’ and add a new one. If it is the first time you are configuring, most probably you need to add a new portal.
You can comment for your reference. Click on the drop-down and select the IP address of the FreeNAS VM.
18) Now click on ‘Initiators’ tab and add a new one.
If you do not want more restriction, then keep both ‘All’. Otherwise, add the client network where you will be accessing the iSCSI storage. I left ‘All’ and applied the settings.
19) Time to add targets. Click on ‘Targets’ and add a new one.
Give a name related to the type so that you can understand later. Here select the portal you created in the earlier step.
20) We need to create Extents to add the storage. Click on ‘Extends’ and add new.
Give an appropriate name, and select the type as ‘File’.
Browse the mount point where you intended to store the iSCSI disk and give a name at the end of the mount point. This method will allow hosting several LUNs in the same disk. Give the size of the extend. When host access this iSCSI target, it will read the disk size what you mention here. It should be less than the mount point size.
21) As the final step, add an ‘Associated Targets’. Make sure to select the correct names from the drop-down and add LUN ID. It can be any number between 0 to 256 but should be unique.
With those steps, we have successfully created an iSCSI disk in FreeNAS which is running on VMware workstation.
Connect and Test the iSCSI Target in FreeNAS from Windows
Make sure the network connectivity to the FreeNAS is working and iSCSI protocol allowed on the Windows firewall and any other network security protection software on Windows computer.
I’m going to test this from my Windows 10 computer. You can use the same method on Windows servers such as 2016, 2019 or any other earlier versions which have Microsoft iSCSI service.
22) Start the iSCSI initiator on Windows client and type the IP address of FreeNAS in quick connect. It will connect successfully.
23) Go to ‘Volumes and Devices’ and press ‘Auto Configure’. Windows will find the mount point with the device which is hosted on FreeNAS.
24) We are almost done. Now open the disk management under Computer Management in Windows 10. It will pop up the new volume it found via the iSCSI. Format, give a name and initialize it.
With the above clear steps with the images, you should be having a FreeNAS server on VMware workstation with Windows 10, 8.1 or any client OS. We created iSCSI disks successfully on FreeNAS that can be accessed by any client as long as the network to the virtual machine available.