Now that our hardware is configured, assuming you opened all of your packages and placed the RAM, NIC, and drives into the NUC, lets configure the hardware and start building our VSAN cluster!

Current assumptions:
– Your hardware is installed into the NUC.
– You hardware is good and error free…. We all love Electrostatic Discharge!
– You downloaded the ESXi software and have it ready on a bootable USB drive or CD to boot your NUC with.

Lets start part two by kicking off some downloads that may take a while. Download the latest vCenter Appliance from VMWare.  You can find it by going to http://www.vmware.com and clicking on “Downloads” then the VMWare Virtual SAN “Download Product” link. While you are on the site, go ahead and download the vSphere client. The current one, as of this text, is “VMware vSphere Client 5.5 Update 2.” You will need this to connect to one of your hosts to deploy the vCenter Appliance. You will also want to check the Intel website for BIOS updates for your NUC. A quick google of “Intel NUC Driver Download” should get you to the page you want. I don’t know what version of NUC you purchased so I can only provide you with this: http://bit.ly/1y8GZMo. An updated BIOS is important because I did run into an issue where one of the three NUCs had an older BIOS that would not boot from a USB drive. A quick update fixed it. As of this text, the BIOS I have on my NUC is version 0033 for the D54250WYK.
Once everything is downloading, let’s jump back to the hardware and configure the BIOS.

BIOS settings and update:
Cable up your NUC; power, keyboard, mouse, monitor, network. Power it on and hit the F2 key to get into the BIOS. On the first page of the BIOS you will see the BIOS version. If you need to update it, power it down, copy the BIOS file you downloaded to a USB drive and power up your NUC. Once back into the BIOS click the wrench icon and select “Update BIOS.” If the NUC likes your drive, you will see a drive letter to the left side, click it and it will list your BIOS on the right. Select it and start the update process. It will reboot a few times and scare the crap out of you but it should be doing good stuff.
Once the BIOS version is happy, lets check some important settings that we will need for VMware ESXi to perform at its highest potential. Click the Advanced button and start by setting your system time. Make sure the Memory Information section is correct and you are not missing RAM. Click the devices tab and make sure all of your USB ports are enabled. Click through the sub-tabs under devices. SATA should have AHCI mode selected and you should see your MSATA drive listed here. Video sub-tab, make sure that the least amount of “GD minimum memory” is selected (32MB). We don’t want to waste RAM to a video adapter we will never be using. Onboard Devices sub-tab; uncheck the boxes for Audio, microphone, HDMI audio and Consumer IR. This should reduce the amount of junk ESXi needs to install and deal with. Now select the Security main tab and ensure that “Virtualization Tech” and “VT-D” check boxes are checked. Next click the Power main tab and set the Dynamic Power Technology to “OFF.” You can leave this enabled if you like but your VMs may get higher than normal CPU wait times as the CPU “powers up” from idle states. Lastly, click the Boot main tab and ensure that you can see your USB drive or USB CDROM in the list and that it’s selected as a boot device.
Hit F10 to save your new config and reboot the NUC.
Quick example of the BIOS screen:
NUCBIOS

ESXi install time!
Ensure your CD, Flash Drive, “Install media” is connected and let it boot to the ESXi installer. If your boot settings are playing nice, you can hit {F10} during the boot screen to get a boot menu. From there you can select your media of choice.

Here is the install; {enter}, {F11}, Select your USB Drive for the install and {enter}, Select your language and {enter}, type a password {tab} type the same password {enter}, {F11}. When the install is done you will get a dialog box for one more {enter} to reboot the PC. If you used a CDROM, it will auto eject the CD. If you used a flash drive for the install, be sure to remove it before the reboot to prevent it from going into the installer again.
Install1Install2

Once the reboot is done and has fully booted into the Hypervisor, it’s time to configure the IP address on the correct network adapter. Press {F2} to bring up the login prompt and enter root for the username and type the password you created during the installer. Down arrow to “Configure Management Network” and press {enter}, {enter} again on Network Adapters, then make sure that “vmnic0” has an “X” next to it and press {enter}. *** The best way to know what adapter should be selected here is to only connect one adapter to your switch. This adapter will say “Connected” while the second adapter will show “Disconnected.” Now arrow down to “IP Configuration” and press {enter}. If you are connected to a router or network that offers a DHCP address then you may already have an IP address. If you want to configure a static IP then press the down arrow to highlight “Set Static….” And press the {space} bar. Down arrow to the IP and type it, down arrow to the subnet mask, type it, and then the gateway, and finish with {enter}. Be sure to press {enter} when you are done or it wont save your settings. When you are back at the Configure Management Network page, press {esc}, it will ask if you want to Apply Changes, press {y} to accept. From here you can do the remaining host config with the vSphere client.
Don't You love my Mac Addresses

Do the same install steps until all of your NUCs have the Hypervisor installed and a different IP address configured. Then, install the vSphere client you downloaded earlier. The file will be named something close to “VMware-viclient-all-5.5.0-XXXXXXXX.exe.” Once installed, launch the client. You will get a prompt to enter the IP address of the NUC you are connecting to, username “root” and the password you used to install the hypervisor. Click Login and you will get a Certificate Warning dialog. You can check the box to install the cert to suppress the warning then click Ignore to continue. You will also get a popup saying you have sixty days to evaluate the software.
vsphereClient

Time to configure our VSAN datastore so we can install the vCenter Appliance.
If you have an existing vCenter server and plan to use that for your VSAN config then you can skip a majority of what follows here. If the three NUCs are your first or only virtual setup, then follow along to configure the hosts so we can install vCenter.

Enable SSH on your host.
Connect to one of your NUC hosts using the vSphere client, (if not already connected) click on the “Configuration” Tab at the top, select “Security Profile” on the left side, then Properties at the top right under Security Profile. This should pop up a box where you can click on “SSH” and click the options button. Then another popup box where you can click the “start” button and “ok.” You can also select the button for “Start and stop with host” if you want SSH enabled all the time, even after reboots. If you do not make this setting, the next time you reboot, SSH will be disabled.
ssh1

Launch your favorite SSH program. Putty is most common and here is a download link : http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
If you are using putty , enter the IP address of your ESXi host and click Open to start an SSH session. You may get a Cert Alert, click Yes to continue. Log into your host using the user root and the password you created.

*** Big Note here: I am 100% pulling the following CLI commands from William Lam -> @lamw to create the vsanDatastore. Here is the link to his blog post if you want the long version with screen shots and details.  http://www.virtuallyghetto.com/2013/09/how-to-bootstrap-vcenter-server-onto_9.html
All credit for these commands go to Mr. Lam and his awesomeness for providing via his blog.
I will summarize the commands below:

Command time :  (you can copy and paste most of these commands)

esxcli vsan policy setdefault -c vdisk -p “((\”hostFailuresToTolerate\” i1) (\”forceProvisioning\” i1))”
esxcli vsan policy setdefault -c vmnamespace -p “((\”hostFailuresToTolerate\” i1) (\”forceProvisioning\” i1))”

python -c ‘import uuid; print str(uuid.uuid4());’
—- Copy and paste this into the next command — Mine was “4502fe3c-7b95-4386-8894-4367ef5a315f”

esxcli vsan cluster join -u 4502fe3c-7b95-4386-8894-4367ef5a315f
—- Be sure to change my UUID with yours in the above command ( I guess you could just use mine…)

esxcli storage core device list
—- Copy and paste these two lines into your next command.
—- You will need to save two things here, the Spinner HD name and the SSD name. Mine listed as follow:
—- HD (t10.ATA_____ST2000LM003_HN2DM201RAD__________________S32WJ9DF815599______)
—- SSD (t10.ATA_____Samsung_SSD_840_EVO_120GB_mSATA_________S1KTNSAF507039N_____)

esxcli vsan storage add -s t10.ATA_____Samsung_SSD_840_EVO_120GB_mSATA_________S1KTNSAF507039N_____ -d t10.ATA_____ST2000LM003_HN2DM201RAD__________________S32WJ9DF815599______
—- This single command will create your VSAN datastore so we can deploy the vCenter Appliance.
—- This is a single command so watch for the page break – esxcli vsan storage add -s SSDName -d HDDName

DONE! Go back to your vSphere client and you should see a new datastore named “vsanDatastore.”
datastore1

Time to deploy the vCenter Appliance:
In the vSphere client, click on your ESXi host object on the left side of the window, (disable Maintenance mode if its enabled, right click the host and select “Exit Maintenance Mode” to do so.) Now click on “File” at the very top of your client and select “Deploy OVF Template.” A wizard will launch. Click browse and select the vCenter Appliance you downloaded earlier. The name will look something like “VMware-vCenter-Server-Appliance-5.5.0.20200-2183109_OVF10.ova” {Next}, {Next}, Name Your vCenter VM and {Next}, Select the bullet for “Thin Provision” and {Next}, {Finish}. It will pop up a task window as it is copied to your ESXi host. When it reaches 100% and completes successfully, click {close}.

Time to Power on vCenter and configure it:
Back in your vSphere client, click on the plus sign “+” to the left of your ESXi host to show the new vCenter VM under it. Click the vCenter VM and click the Green Play button at the top of the client. You can also power it on by right clicking the vCenter VM object, selecting Power, and Power on. Now open a console to the VM. You can do this by clicking on your VM and then clicking the small monitor looking icon above it, OR you can right click your vCenter VM and select “Open Console.”

**** NOTE!! When working in the VM console, If you need to “unlock” your mouse from the console window, press {Control}+{Alt} (at the same time.)
Once in the console, you should see either a black booting screen or a blue “ready to configure” screen. When it is at the blue screen, click into the console window and press {enter} to login. The default login for a brand new vCenter Appliance is root+vmware. If entered correctly you should get a red prompt of “localhost:~ #”
Type the following command and press {enter}   — (copy and paste will not work–sorry)
/opt/vmware/share/vami/vami_config_net

This will launch into a wizard to configure the IP of the vCenter Appliance.
Press {2}{enter} and type your Default Gateway then press enter when done. {10.10.10.1}{enter} as an example.
Press {6}{enter}. {enter} for no IPV6 address, {y}{enter} for IPv4 address, {n}{enter} for DHCP, Type your IP address {10.10.10.2}{enter} as an example, Type your Subnet mask {255.255.255.0}{enter} as an example. Then {y}{enter} to save your config and reload the network interface.
To finish, Press {1}{enter} to exit the wizard, type “exit” to log out of the vCenter CLI, then press {Control}+{Alt} (at the same time) to release your mouse from the console.
*** NOTE!: look at the console for your new vCenter Web Client URL. It will look like this : https://10.10.10.2:5480 You can now close the console window if you like.
Open a web browser of your favorite flavor and type the URL you saw above: https://10.10.10.2:5480. Since its HTTPS, you will get a Cert error, click Accept, Continue etc until you get to the login page. Again, the default user/pass is root+vmware. Accept the EULA (after reading all of the words first….) and click Next, A wheel will spin for a bit then click Next again. Select the “configure with default settings” bullet and click Next and Start. It will do a bunch of stuff at this point so take a break and come back…
vCenterConfig1
Breaks done! If everything completed successfully then click Close. You should see the window populate with all of the “running” services. Make sure the “vSphere Web Client” is in the Running state.

From here, we need to configure two advanced settings before we move on.
1 – Click on the Admin tab at the top and create a new password for your Administrator account. Enter the old password of “vmware” and make something new for you. Optional, you can disable the password expires bullet but if this is a 60 day evaluation, the 90 day limit wont matter. (Now before you hit submit…)
2 – Click the bullet for “Yes” next to “Certificate Regeneration Enabled” – Now hit submit. If things are happy you should get a green “Operation was Successful” at the top.
vCenterConfig2

Lets log into the vCenter Appliance vSphere Web Client:
Launch a web browser (that has flash installed) and enter your vCenter URL. Example https://10.10.10.2 You will get the cert error, continue or accept as needed. Next, click the “Log in to the vSphere Web Client” link on the right side of the page. The URL will change to http://10.10.10.2:9443/vsphere-client/ and launch the flash based Web Client. Type the admin username “administrator@vsphere.local” and password. The default is vmware unless you changed it as listed above.

You now have a working vCenter server and we are ready to finish configuring VSAN!
The final installation (part 3) coming soon!

Again, Thank you Mr. Lam for your awesome blog : http://www.virtuallyghetto.com/2013/09/how-to-bootstrap-vcenter-server-onto_9.html

Back in November, I started seeing the “virtual” blogs light up with virtual enthusiasts installing VMware ESXi on Mac mini hardware. This increased as Apple released their new Mac mini, even though the cpu core count was reduced. Apple also announced that the new Mac mini hardware (ram and flash storage) would be soldiered to the board giving the user less flexibility. This pushed me to attempt the same idea but on Intel NUC hardware.
For those that are not familiar with the Intel NUC , it’s a small form factor PC that allows for user selected RAM, drives, and even two mini PCIe slots.
Website here :
http://www.intel.com/content/www/us/en/nuc/overview.html
The important part, is the ability to configure the mini PC in any way and continue to change it even after purchase. You can configure the NUC with four, eight, or sixteen gigabytes of RAM, a full 2.5 inch drive (spinner or SSD), and two internal mini PCIe slots. (half length and full length)

The idea for a mini VSAN cluster starts with a few requirements, mostly set by VMware.
– At least three physical PCs/Servers that contain the following:
1 – A SSD or flash device.
2 – A spinning drive.
3 – A drive to install ESXi separate from the above two drives.
4 – A Gigabit network adapter. Two is preferred and 10Gb makes it optimal.
5 – Enough CPU cores and RAM to run the ESXi software plus any Virtual Machines.

If you need extra info on VMware VSAN , click this link here —>  http://bit.ly/1Attry9

The challenge:
How can I find three physical devices that use very little power, is stable enough to run a home lab without any unexpected down time, has all of the above requirements in a low cost, easy to obtain package.

Lets start with the hardware:
The Intel NUC i5 series (D54250WYKH) flavor provides two core, four threads @ 1.3Ghz with 2.6Ghz turbo processor. It has two SODIMM slots for up to 16GB RAM but it only accepts 1.35 Volt SODIMMs so make sure you watch what you buy. The 1.5 Volt SODIMMs will prevent the NUC from booting. The D54250WYKH has a taller case when compared to the D54250WYK flavor so you can slide in a 2.5 Drive. I found a few 2TB spinner drives but only the Samsung SpinPoint 2TB drive will fit into the NUC. The Western Digital 2TB 2.5 drive is too thick and you will need to bend metal to make it fit. If you plan to run the system 24/7 then I would suggest a WD Red 1TB or an enterprise drive that is made to spin all day, every day. It must be a SATA drive though so check your selection. The idea of the 4TB San Disk SSD in this spot would be amazing. The NUC has a Full length and half length mini PCIe port. The Full length will allow for a msata SSD. Samsung EVO msata SSDs tested great. Now the difficult part; where can I find a mini PCIe network adapter that will fit into a half length mini PCIe slot. My SSD is hogging the full length slot and SSDs in the half-length form factor are very limited. I even researched the idea of a mini PCIe extension ribbon cable.
This is where the Syba Mini PCI-e Gigabit Ethernet Adapter (SD-MPE24031) comes in. This adapter, with a bit of tweaking, fits perfectly under the msata SSD. I modified the adapter so the cat5 cable is wired directly to the adapter. I lose out on an activity LED but if you like flashy LEDs, you can watch them on your switch. The only thing left is to feed the cable outside of the NUC and your hardware is golden. You will need to throw in a 16GB or 32GB flash drive so you can install your Hypervisor to. I would suggest a good brand and a USB3 version just to make sure any Hypervisor bits do not corrupt and are accessed better than USB v2 speed. A 32GB or larger is suggested to handle a memory dump or provide room for logs etc. I’ve tested with a 8GB thumb and it works fine minus a few annoying messages about it being too small for persistent storage.

Quick hardware summary: (all of this times three for our VSAN cluster)
– Intel NUC D54250WYKH
– 8GB DDR3 SODIMM 1.35volt (two sticks of 8GB for 16GB)
– 2TB Samsung SpinPoint 2.5TB spinner
– 120GB Samsung EVO msata SSD
– Syba half length mini PCIe 1Gb Network Adapter (SD-MPE24031)
– 16GB-32GB flash drive / thumb drive to install the Hypervisor to.
– Mini HDMI to HDMI cable, keyboard, mouse, monitor, tools, brain etc…..

Some Photos of the goods:
nuc2NUCnucinside
sybasyba2

Now the software build:
Start by downloading your favorite flavor of VMWare ESXi. I started with 5.5u2p3 build 2143827 because it was the current download at the time. Download ESXi Customizer. I used a copy from http://www.v-front.de/p/esxi-customizer.html .

Next, download the drivers:
— Intel Network Driver :
http://vmnick0.me/net-e1000e-2.3.2.x86_64.zip
–SATA Controller driver :
http://vmnick0.me/sata-xahci-1.10-1.x86_64.zip
Lastly, you need the Realtek driver for your Syba mini PCIe NIC.
http://vmnick0.me/realtekvib.zip
Now just unzip all of the above software, run the esxi Customizer GUI, select your downloaded ISO and the VIB, click RUN. Repeat as needed for each VIB being sure to include the Exported ISO as your new Import ISO so it includes the previous VIB you injected. Once you have your ISO you can burn it to an old fashioned CD or you can play with the many other methods; PXE, USB drive/flash drive….etc.
If you found a better or updated driver, please send me the link and I will update the page.
If you don’t trust any of the above software, you can download all of the software inside a Virtual Machine, create the custom ISO, then export it out of the VM and destroy the VM.

Now you are ready for the install:
Install ESXi to a thumb drive on each NUC, configure the IP Network settings, then load up your management GUI of choice and start playing.

Sneak Peek of LegoEVORack Version 1:   Cooling and Top of Rack switch just needs to be installed…..

lego1

Here is Version 2:   — Note the top of rack switch…
vsanlegoV2 vsanlegoV2vsanlegoV2

Quick shout out to a few websites that google sent me to while I was learning how to do this.
https://miketabor.com/add-realtek-r8168-to-esxi-5-5/
http://pricklytech.wordpress.com/2014/04/17/installing-vmware-vsphere-esxi-5-5-on-an-intel-haswell-nuc-d34010wyh1/
http://trainingrevolution.wordpress.com/2013/12/30/installing-vsphere-esxi-5-5-on-an-intel-nuc-d54250wyk/
http://www.virten.net/2013/12/vmware-vsphere-homeserver-homelab-esxi-on-4th-gen-intel-nuc/

Step #1

Thank you, hard taco shells, for surviving the long journey from factory, to supermarket, to my plate and then breaking the moment I put something inside you. Thank you.

-Jimmy Fallon