For nearly 10 years, I’ve compiled lots information about my home labs. From time to time I would blog about items I was working. However, readers of my blog were starting to respond with – “We enjoy your blogs around home labs. However, it’s a bit hard contextualize this information from multiple blog posts.” And “where do I start with home labs” Most recently the VMware User Group asked me to co-record a session for home lab vs. HOL Of course, I did the Home Lab side of the recording but it got me thinking more about the listener and how I could really put a focus on Who, what, why, and how around home labs. After the recording, I realized my “Home Lab Generations page” (HLG)was in major need of an overhaul.
This is when I decided to change my Home Lags Guide to “HOME LABS: A DEFINITIVE GUIDE”. It took me a few months to transform the HLG into this new approach as it puts a strong focus on Home Lab design considerations. From there I used these design considerations to document and measure my 5 Generations of home labs dating back to 2008. In doing this I got a sense this design guide could help others to measure and plan out their home labs too.
Next Steps for the Home Lab Definitive guide:
- I’ll continue to update it as I progress my home labs
I’ll continue to improve it over time but I’d love your feedback too
My hopes are you find this new guide useful and of value. Please post up your suggestions to help its continuous growth!
Also, if you are interested in applying these design practices to your home lab or even if you are just starting out, then reach out to me as I’d love to feature your design here on my blog!
If you like my ‘no-nonsense’ blog articles that get straight to the point… then post a comment or let me know… Else, I’ll start writing boring blog content.
I currently have an IOMega ix4-200d with 4 x 500GB Hard Disk Drives (HDD). I am in the process of rebuilding my vSAN Home lab to all flash. This means I’ll have plenty of spare 2TB HDDs. So why not repurpose them to upgrade my IOMega. Updating the HDDs in an IOMega is a pretty simple process. However, documenting and waiting are most of this battle.
There are 2 different ways you can update your IOMega: 1 via Command Line and 2 via the Web client. From what I understand the command line version is far faster. However, I wanted to document the non-command line version as most of the blogs around this process were a bit sparse on the details. I started off by reading a few blog posts on the non-command line version of this upgrade. From there I came up with the basic steps and filled in the blanks as I went along. Below are the steps I took to update mine, your steps might vary. After documenting this process I can now see why most of the blogs were sparse on the details, there are a lot of steps and details to complete this task. So, be prepared as this process can be quite lengthy.
- YOU WILL LOSE YOUR DATA, SO BACK IT UP
- You will lose the IOMega configuration (documenting it might be helpful)
Here are the steps I took:
- Ensure you can logon to the website of your IOMega Device (lost the password – follow these steps)
- Backup the IOMega Configuration
- If needed screen shot the configuration or document how it is setup
Backup the data (YOU WILL LOSE YOUR DATA)
- For me, I have an external 3TB USB disk and I used Syncback via my Windows PC to back up the data
Firmware: ensure the new HDDs and the IOMega IX4 are up to date
- Seagate Disks ST2000DM001 -9YN164
- Iomega IX4-200d (Product is EOL, no updates from Lenovo)
- After backing up the data, power off the IOMega, unplug the power, and remove the cover
- Remove the non-boot 500GB disks from the IOMega and label them (Disks 2-4), do not remove Disk 1
- From what I read usually Disk 1 is the “boot” disk for the IOMega
- In my case, it was Disk 1
- For some of you, it may not be. One way to find this out is to remove disks 2-4 and see if the IOMega Boots, if so you found it, if not power off try with only disk 2 and so on till you find this right disk
- Replace Disks 2-4 with the new HDD, in my case I put in the 2TB HDDs
- Power on system (Don’t forget to plug it back in)
- The IOMega display may note there are new disks added, just push the down arrow till you see the main screen
- Also at this point, you won’t see the correct size as we need to adjust for the new disks
Go into IOMega web client
- Settings > Disks Storage
- Choose “Click here for steps…”
- Check box to authorize overwrite
- About a minute or two later my IOMega Auto Restarted
- Note: Yours may not, give it some time and if not go to the Dashboard and choose restart
- After reboot, I noted my configuration was gone but the Parity was reconstructing with 500GB disks
- This is expected, as the system is replicating the parity to the new disks
- This step took about +12 hours to complete
- After the reconstruction, I went into the Web client and the IOMega configuration was gone. It asked me to type in the device name, time zone, email, and then it auto Rebooted
- After Reboot I noted all the disks are now healthy and part of the current 1.4TB parity set. This size is expected.
- Now that the Iomega has accepted the 3 x 2TB disks we need to break parity group and add the final 2TB HDD
- First, you have to delete the shares before you can change the parity type.
- Shared Storage > Delete both shares and check to confirm delete
- Now go to — Settings > disks > Manage Disks > Data Protection
- Choose “Without data protection
- Check the box to change data protection
- Once complete the Power off the IOMega
- Dashboard > Shutdown > Allow device to shutdown
- After it powers off, replace Disk 1 with last 2TB Disk
- Power On
- Validate all disks are online
- Go to Settings > Disks > “Click here for steps….” Then check box to authorize overwrite, choose OK.
- After the last step observe the error message below and press ‘OK’
- Go to Dashboard > Restart to restart the IOMega
- After the restart the display should show “The filesystem is being prepared” with a progress bar, allow this to finish
- Now create the Parity set with the new 2TB Disks
- First, remove all Shared folders (See earlier steps if needed)
- Second go to Settings > Disks > Manage Disks > Data Protection > Choose Parity > Next
- Choose “check this box….” then click on apply…
- After clicking apply my screen updated with a reconstruction of 0% and the display screen on the IOMega showed a progress bar too.
- Mine took more than 24+ hours to complete the rebuild.
- After the rebuild is complete then restore the config
- Finally, restore your data. Again, I used syncback to copy my data back
If you like my ‘no-nonsense’ blog articles that get straight to the point… then post a comment or let me know… Else, I’ll start writing boring blog content.
Part of the joy of building out a home lab or virtualization workstation is finding those one-off items that enable you to build something great, cheap, and unique. Below is a list of some those niche items and distributors I’ve found along the way. I’ll continue to update this post as we go along and I encourage you post up some of your findings too!
** 2019 UPDATE **
Makes a lot of Intel NUC product modifications that make your NUC even more useful. The product I like are the NUC lid mods — Add RJ45, Wireless, TV Tuner, etc. right to your NUC! Very cool!
** OLDER ITEMS **
This place is full of all types of unique adapters and gadgets to make your home lab or workstation PC better. What I like about their product line focus is the support of cards with a PCIe x1 slot. Various server based add on cards (example 2/4 port NIC cards) typically require a PCIe x4 or x8 port. However, most home labs typically have plenty of x1 slots and very little to no support for x4 and x8. Syba seems to make a “plethora” of add on cards that support x1. The only downside is poor documentation / support.
Some products I like from them —
- 2 Port Gbe PCIe x1 card (SY-PEX24028): I own and use several of these, they seem to work quite well. Dislikes – No Jumbo frames and it uses a Realtek 8111e chips set which means you must add these drivers to support ESXi
- Another cool item they make is a M.2 to 4-port SATA III Adapter. This little RAID controller allows you to plug directly into a M.2 port and allow for 4 mort SATA devices. I think this would be handy for smaller systems (ie. NUC builds)
StarTech is really becoming a great company with a very diverse and well supported / documented product line. I think they are really starting to give Blackbox a run for their money. I really like their cable and adapter card lines.
I’ve been using their Startech Null Modem DB9 to USB to run the CLI on my Netgear manage Switch since 2012 and have yet to have an issue with it.
William Lam has blogged many times around the use of NUC style home labs with StarTech Single and Dual USB 3.0 network adapters.
Winyao is a “boutique” distributor specializing in NICs, Fibre adapters, and Transceivers. One item I find of value is their PCIe x1 Dual NIC with Intel or Broadcom chipset. Personally, I don’t know much about this company or own any of their products, but at $40-$60 per brand new adapter I wished I had found them before buying the Syba adapters.
If you are looking for your next server, workstation, media, or top of the line PC case then take a peek at Fractal Design. Founded in 2007 and based out of Sweden they have really started to dominate the custom case design market. Their innovative designs blend elegance with flexibility, which I might add is a hard combination to find. I like their Arc Midi and Arc Mini R2 line of cases for home lab build outs. However, when or if my trusty Antec Sonata from 2003 lets me down, then Fractal will be next on my list. Here is a great blog post from Erik Bussink around his use of Fractal Design for his 2014 Home Lab.
** 09/06/2017 – Here are some updates to this list **
Came across this interesting case / mod company that builds all kinds of custom cases, cables, etc to mod your PC’s. I like the Prodigy Mini-ITX case, with 2 PCI Slots and a spare slot for Disk or other mods it could be a good fit for a NAS project. However I’m not fond of the excessive top and bottom ornaments.
ASUS came out with a great M.2 to U.2 option allowing users to interface with SAS disks. They claim this option will help users to interface with SAS SSD and get extreme performance. There are some constraints around this (cables, disks, chipsets, etc) so read up on this before you buy.
If you like my ‘no-nonsense’ blog articles that get straight to the point… then post a comment or let me know… Else, I’ll start writing boring blog content.
Gigabyte MX31-BS0 Firmware / BIOS update for MergePoint Embedded Management Software and Motherboard
** Blog Updates / Notes **
I wrote this post when I first got my MX31-BS0 (2017), since then I have updated my BIOS several times using this process. Here are my notes around my most recent update experiences and blog comments.
- 07/2019 – Updated 1 host with MX-31BS0 BIOS from R10 to R11 and MergePoint EMS 8.73 to 8.85. This update didn’t go smooth and I cannot recommend it.
- Why did I update — I recently installed Java 9 and the vKVM under EMS 8.73 would not work. After installing R11/8.85 Java 9 seemed to work but I had issues
- Notes / Issues:
- Noted EMS 8.85 Changes: I didn’t dig in deep but the install log screen got a new look, and all the rest of the screens seemed to be the same. I had some random quirkiness (as stated int he blog post below) during the update, but nothing out of the ordinary.
- vKVM/vMedia Issues:
- EMS 8.85 with the vKVM or the vMedia would disconnect upon reboot of the host OR it would do this randomly. This is with the ‘Keep PHY link up’ enabled.
- Tested on a system with Java 8 and had the same results
- Downgraded to EMS 8.73 with BIOS R11 all issues went away
- I did not test EMS 8.80 or 8.83
- 09/2018 – Mix of updates for my three hosts — Updated MX-31BS0 BIOS from R03 or R08 to R10 and 2 hosts MergePoint 8.58 to 8.73, as one host was on 8.73 already
- Noted behavior:
- After BIOS update was completed the Mobo powered off vs. rebooting as with previous updates. Had to power on the mobo to complete the BIOS install. Then the mobo rebooted one more time as expected.
- Even though the Mobo had been warm booted the BIOS Version in MergePoint web interface still showed the old version. However, the Boot BIOS screen reflected the update. A full power disconnect of the Mobo and a few ‘refreshes’ of the web browser allowed the MergePoint to report R10. I did not see this behavior with the MergePoint EMS BIOS update, it promptly reported 8.73 properly.
- Noted behavior:
- 05/2018 –Updated on host to MX-31BS0 BIOS from R03 to R08 and MergePoint 8.58 to 8.73.
- Blog readers noted issues going to R08 and could not connect to vKVM, I didn’t have any issues with update. Looks like it was a JAVA 8 Update issue (See post comments for more info)
- 09/2017 – Updated MX-31BS0 BIOS from F10 to R03 and MergePoint 8.41 to 8.58.
- 03/2017 – Original update documented below. Updated MX-31BS0 BIOS from F01 to F10 and MergePoint 8.01 to 8.41.
**** Blog Post ****
You’d think by now manufactures would have a solid and concise process around updating their products. They are quick to warn users to not update their BIOS unless there is a problem and quick to state if there is a problem they usually won’t support it. This total cycle of disservice is a constant for low-end manufacturers, heck even some high server platforms have the same issues. I have these same concerns when I started to look into updating my current MX31-BS0 Motherboard (mobo).
What can soften this blow a bit? How about the ability to update your BIOS remotely? This is a great feature of the MX-31BS0 and in this blog post, I’ll show you how I updated the BIOS and the remote MergePoint EMS (MP-EMS) firmware too.
Initial Steps –
- My system is powered off and the power supply can supply power to the mobo.
- I have setup remote access to the MP-EMS site with an IP address and have access to it via a browser. Additionally, I have validated the vKVM function works without issue
- I downloaded the correct Mobo BIOS and BMC or MP-EMS Firmware and have extracted these files
- Steps below were completed on a Gigabyte MX31-BS0 from BIOS F01 > F10 and MP-EMS 8.01 > 8.41, your system may vary
1 – Access the MergePoint EMS site
Start out by going to the IP address for MP-EMS site. From the initial display screen, we can see the MP-EMS Firmware versions but not the Platform (or Mobo) BIOS Version. Why not you may ask? Well, the MP-EMS will only display Mobo information when the Mobo is powered on. Before you power on your Mobo I would recommend opening the vKVM session so that you can see the boot screen. When you power on your mobo (MP-EMS > Power > Control > Power On ) use the vKVM screen to halt at the ‘boot menu’ or even go into setup and disable all the boot devices.
In this PIC, we can see my Firmware for the MP-EMS is 8.01 and the BIOS is blank as the Mobo is not powered on.
2- Selecting the Mobo BIOS Update
I choose the following to update the Mobo BIOS. Start out by uploading the file: Update > ‘BIOS & ME’ > Choose File > Image.RBU > Upload
Once the upload is complete, click on ‘Update’ to proceed. NOTE: a warning dialog box appeared for me stating the system would be powered off to update the BIOS. Good thing I’m in the Boot Menu as the system will just directly power off with no regard of the system state
3 – Installing the Mobo BIOS Update: Be Patient for the BIOS install to complete
Once I saw the message the ‘BIOS firmware image has been updated successfully’ I then exited the browser session and vKVM . Note: I’d recommend closing the browser out entirely and then reopening a new session.
Once I restarted my vKVM and MP-EMS sessions and then powered on my Mobo. This allowed the BIOS update to continue.
Here is the patience part – My system was going from BIOS F01 > F10 and it rebooted 2 times to complete the update. Be patient it will complete.
Here is the behavior I noted:
- First Reboot – The system posted normally, it cleared the screen, and then white text stated a warning message about the BIOS booted to default settings. Very shortly after it rebooted again.
- On the 2nd reboot, it posted normally and I pressed F10 to get back to the Boot menu. I did this because next, we’ll need to update the MP-EMS firmware.
Once the system had rebooted I then refreshed my MP-EMS screen and viola there it was BIOS Version F10.
** Note – Not every time but sometimes, I would notice the MP-EMS Screen would show the old BIOS Version #. However, in BIOS the updated BIOS Version # would be present. A cold boot didn’t always fix this, but eventually the MP-EMS would update and would reflect the correct BIOS #**
4 – Selecting the MP-EMS Firmware
While the Mobo is booted and I’m in the boot menu, I went into the MP-EMS session and choose the following Update > BMC > Choose File > 841.img > upload
5 – Installing the MP-EMS firmware update
Once the file was uploaded I could see the Current and New versions. I then choose Update button which promptly disconnected my vKVM session and Status changed from None to a % Completed.
Again, be patient and allow the system to update. For my systems the % Complete seemed to hang a few times but the total process, for me, took about 10 mins.
After the update was complete, the next screen let me know the update was successful, my system did an auto-reboot. When I heard my system beep I then closed my MP-EMS session and started a new browser session.
Shortly after the system booted I went into the MP-EMS and validated the firmware was now 8.41.
Wrapping this up…
Ever heard the saying “It really is a simple process we just make it complicated”? Recent BIOS updates and overall system management sometimes feel this way when trying to do simple processes. Not trying to date myself but BIOS/Firmware updates have been around for decades now. I’ve done countless updates where it was simply extracting an update to simple media and then it completes the update on its own. Now one could argue that systems are more complicated and local boot devices don’t scale well for large environments and I’d say both are very true but that doesn’t mean the process can’t be made more simple.
My recommendation to firmware / bios manufactures — invest in simplicity or make it a requirement for your suppliers. You’ll have happier customers, less service calls, and more $$ in your pocket but then again if you do, what would I have to blog about?
Am I happy with the way I have to update this Mobo? Yes, I am happy with it. For the price I paid it’s really nice to have a headless environment that I can remotely update. I won’t have to do it very often so I’m glad I wrote down my steps in this blog.
Initially, when I decided to refresh my Home Lab to Generation IV I planned to wipe just the software and add InfiniBand. I would keep most of the hardware. However, as I started to get into this transformation I decided it was time for a hardware refresh too including moving to All Flash vSAN.
In this post, I wanted to write a bit more about my new motherboard (mobo) and why I think it’s a great choice for a home lab. The past workhorse of my home lab has been my trusty MSI Z68MS-G45(B3) Rev 3.0 (AKA MSI-7676). I bought 3 MSI-7676 in 2012 and this mobo has been a solid performer and they treated me very well. However, they were starting to age a bit so I sold them off to a good buddy of mine and I used those resources to fund my new items.
My new workhorse –
Items kept from Home Lab Gen III:
- 3 x Antec Sonata Gen I and III each with 500W PS by Antec: I’ve had one of these cases since 2003, now that is some serious return on investment
- 3 x Gigabyte MX31-BS0 – So feature rich, I found them for $139 each, and this is partly why I feel it’s the best ESXi white box mobo
- 3 x Intel Xeon E3-1230 v5 – I bought the one without the GPU and saved some $$
- 3 x 32GB DDR4 RAM – Nothing special here, just 2133Mhz DDR4 RAM
- 3 x Mellanox Connectx InfiniBand cards (More to come on this soon)
- 4 x 200GB SSD, 1 x 64GB USB (Boot)
- 1 x IBM M5210 JBOD SAS Controller
Why I chose the Gigabyte MX31-BS0 –
- Headless environment: This Mobo comes with an AST2400 headless chipset environment. This means I no longer am tied to my KVM. With a java enabled browser, I can view the host screen, reboot, go into BIOS, BIOS updates, view hardware, and make adjustments as if I was physically at the box
- Virtual Media: I now can virtually mount ISOs to the ESXi host without directly being at the console (Still to test ESXi install)
- Onboard 2D Video: No VGA card needed, the onboard video controller takes care of it all. Why is this important? You can save money by choosing a CPU that doesn’t have the integrated GPU, the onboard video does this for you
- vSphere HCL Support: Really? Yep, most of the components on this mobo are on the HCL and Gigabyte lists ESXi 6 as a supported OS, its not 100% HCL but for a white box its darn close
- Full 16x PCIe Socket: Goes right into the CPU << Used for the Infiniband HCA
- Full 8x PCIe Socket: Goes into the C232 << Used for the IBM M5210
- M.2 Socket: Supporting 10Gb/s for SSD cards
- 4 x SATA III ports (white)
- 2 x SATA III can be used for Satadom ports (orange) with onboard power connectors
- 2 x Intel i210 1Gbe (HCL supported) NICs
- E3 v5 Xeon Support
- 64GB RAM Support (ECC or Non-ECC Support)
- 1 x Onboard USB 2.0 Port (Great for a boot drive)
Dislikes: (Very little)
- Manual is terrible
- Mobo Power connector is horizontal with the mobo, this made it a bit tight for a common case
- 4 x SATA III Ports (White) are horizontal too, again hard to seat and maintain
- No Audio (Really not needed, but would be nice)
- For some installs, it could be a bit limited on PCIe Ports
Some PICS :
The pic directly below shows 2 windows: Window 1 has the large Gigabyte logo, this is the headless environmental controls. From here you can control your host and launch the video viewer (window 2). The video viewer allows you to control your host just as if you were physically there. In windows 2 I’m in the BIOS settings for the ESXi host.
This is a stock photo of the MX31-BS0. It’s a bit limited on the PCIe ports, however, I don’t need many ports as soon I’ll have 20Gb/s InfiniBand running on this board but that is another post soon to come!
This is one of those great command line items to put in your toolkit that will impress your co-workers. I think this command is one of the least known commands but could have a huge impact on an admins ability to manage their environment. The vSphere command is simply ‘dcui’ and it is a very simple way to access the DCUI without having to go into your remote IPMI tools (ilo, iDRAC, KVM over IP, etc). The only down side compared to IPMI tools is it doesn’t work when you reboot your system as you’ll lose your ssh session.
How to use it:
- After your server is fully booted, start an ssh session to your target server and logon
- From the command prompt type in dcui and press enter
- From there you can use the dcui remotely.
- Press CTRL + C to exit
- Have your ssh screen size where you want it prior to going into the dcui. If you resize after connecting it will exit out of the DCUI
- The DCUI command worked great in putty but it did not work with the MAC Terminal program. Not sure why, but if you got this working on a MAC then post up!
To prep my Home Lab for ESXi 6.0U2 with VSAN + IB. I wanted to ensure it was in pristine condition. It had been running ESXi 5.5 + VSAN for many years but it was in need of some updates. I plan to fully wipe my environment (no backups) and reinstall it all. Yes, that’s right I’m going to wipe it all – this means goodbye to those Windows 2008 VM’s I’ve been hanging on to for years now. Tip: If you’d like to understand my different Home lab generations please see my dedicated page around this topic.
In this post, I am going to focus on listing out my current to-do items, then describing how to flattening all SSD/HDD and finally building a custom ESXi 6.0U2 ISO with Realtek 8186 drivers.
Current to Do list –
- PM the Hosts – While they are off it’s a good time to do some routine PM (Complete)
- BIOS and Firmware – Check all MoBo BIOS, pNIC, and HDD/SDD firmware (Complete)
- Netgear Switch BIOS – It’s doubtful but always worth a check (Complete)
- Flatten all SDD / HDD with Mini-Partition Tool (This Post)
Create ISO with ESXi 6.0U2 and Realtek 8168 Drivers (This Post)
- Install Windows 2012 Server VM for DNS and AD Service (Local disk)
- Install vCenter Server Appliance (Local Disk)
- Get Infiniband Functional (Needs work)
- Setup FT and VSAN Networks
- Enable VSAN
- Rebuild VM Environment
Flatten all SDD / HDD with Mini-Partition Tool
Installing VSAN fresh on to an environment requires the SDD / HDD’s to be free of data and partition information. The Mini-Partition tool is a FREE bootable software product allowing you to remove all the partitions on your ESXi Hosts and other PCs. You can download it here >> https://www.partitionwizard.com/partition-wizard-bootable-cd.html
Once I created the BOOT CD and allowed the product to boot. I was quickly able to see all the HDD / SDD’s in my Host.
I simply right clicked on each host and choose ‘Delete All Partitions’
After choosing ‘Delete All Partitions’ for all my disks I clicked on ‘Apply’ in the upper right-hand corner. The following window appeared, I choose ‘Yes’ to Apply pending changes, and it removed all my partitions on all my disks quite quickly.
Create ISO with ESXi 6.0U2 and Realtek 8168 Drivers
ESXi no longer supports RealTek Network drivers, so home lab users who need these drivers will have to create a custom ISO to add these drivers back in. Keep in mind these are unsupported drivers by VMware, so use at your own risk. My trusty ESXi-Customizer GUI program is no more for ESXi 6. It has moved to a CLI based product. However, PowerCLI has all the functionality I need to build my customer ISO. In this section, I’ll be using PowerCLI to create my ISO. Keep in mind these are the steps that worked for me, your environment may vary.
To get started you will need two files and PowerCLI Installed on a Windows PC.
- File 1: VMware Offline ZIP >> www.vmware.com/download
2. RealTek 8186 Offline bundle >> https://vibsdepot.v-front.de/wiki/index.php/Net55-r8168
3. PowerCLI Download and install >> https://communities.vmware.com/community/vmtn/automationtools/powercli
Tip: If you don’t know PowerCLI try starting here
4. Place the files from Step 1 and 2 into c:\tmp folder
–POWERCLI COMMANDS— For each command, I have included a screenshot and the actual command allowing to copy, paste, and edit into your environment.
- Add ESXi 6.0u2 and RealTek8186 products to the local Software Depot
2. Confirm the products are in the depot
3. List out the ESXi Image Profiles
4. Create a Clone Image to be modified – Ensure you are targeting the “ESXi…..standard” profile from step 3
New-EsxImageProfile -cloneprofile ESXi-6.0.0-20160302001-standard -Name “RealTek8186a”
Forward-Looking Tip: Whatever name you choose it will show up in your boot ISO
5. Set the Acceptance Level to Community Supported – Remember RealTek is unsupported by VMware
Set-EsxImageProfile -Name RealTek8186a -AcceptanceLevel CommunitySupported
For ImageProfile Enter – RealTek8186a
6. Ensure the RealTek net55-r8186 driver is loaded from the local depot (Screenshot shortened)
7. Add the RealTek software package to the profile
SoftwarePackage: net55-r8168 8.039.01-napi
Tip: You MUST enter the full name here if you just use the short name it will not work
8. Validate the RealTek drivers are now part of the RealTek8186a Profile (Screenshot shortened)
9. Export the profile to an ISO
Export-EsxImageProfile -ImageProfile “RealTek8186a” -ExportToIso -FilePath c:\tmp\RealTek8186a.iso
And that’s it… now with my clean/updated hosts, flatten HDD/SDD’s, and a newly pressed custom ISO I am ready to install ESXi onto my systems. Next Steps for me will be to install ESXi, AD/DNS VM, and vCenter Server Appliance. However, my next post will be focused on getting InfiniBand running in my environment.
I’ve been running ESXi 5.5 with VSAN using a Netgear 24 Port Managed Gig switch for some time now, and though it has performed okay I’d like to step up my home lab to be able to support the emerging vSphere features (VSAN 6.x, FT-SMP, and faster vMotion). To support some of these features 10Gb/s is HIGHLY recommend if not fully required. Looking at 10Gbe switches and pNICS the cost is very prohibitive for a home lab. I’ve toyed around with InfiniBand in the past (See my Xsigo Posts here) and since then I’ve always wanted to use this SUPER fast and cost effective technology. Initially, the cost to do HPC (High-performance computing) has always been very expensive. However, in recent years the InfiniBand price per port has become very cost effective for the home lab.
Let’s take a quick peek at the speed InfiniBand brings. When most of us were still playing around with 100Mb/s Ethernet InfiniBand was able to provide 10Gb/s since 2001. When I state 10Gb/s I’m talking about each port being able to produce 10Gb/s and in most cases Infiniband switches have a non-blocking backplane. So a 24 Port InfiniBand Switch, 10Gb/s per port, Full duplex, Non-blocking switch will support 480Gb/s! Over time InfiniBand speed has greatly increased and over time the older switches have dropped in price making InfiniBand a good choice for a growing home lab. For most home labs a 40Gb/s per port QDR switch is financial achievable. Even the 20Gb/s DDR or 10Gb/s SDR switch give ample speed and are VERY cost effective. However, step above QDR and you’ll find the price point is a bit too steep for home lab use.
So let’s take a look at the price / speed comparisons for InfiniBand vs. 10Gb/s Ethernet.
|InfiniBand HCA||2 Port 10Gb/s ($15-$75)||2 Port 20Gb/s ($20-$100)||2 Ports 40GB/s ($30-$150)|
|InfiniBand Switch||24 Ports SDR (~$30-$70)||24 Ports DDR (~$70-$120)||8-36 Ports QDR (~$250-$500)|
|InfiniBand Cable||CX4 (SFF-8470) ($15-$30)||CX4 (SFF-8470) ($15-$30)||QSFP (SFF-8436) ($15-$30)|
|Ethernet Switch||8 Ports 10Gbe ($700-$900)|
|Ethernet pNIC||2 Port 10Gbe ($300-$450)|
|Ethernet Cable||1M / 3ft. CAT 6a ($5-$10)|
Let’s break this down a bit further. I used the high dollar from each line item above and figured 3 x HCAs or pNICs and 6 cables for my 3 hosts.
Ethernet 10Gb/s – (3 Host Total cost $2310)
- Cost Per Switch – $900 Switch / 8 Ports = $112 per port
- Cost to enable 3 Hosts with 3 pNICs and 2 Cables -(3 Hosts x $450 pNICS) + ((2 Cables x 3 Hosts) x $10 each) = $1410 for three hosts or $470 per Host
- Total Cost to enable 3 hosts and switch cost – $1410 + $900 = $2310
- Fully populated 8 Port switch supporting 4 hosts = $2776
InfiniBand SDR 10Gb/s – (3 Host Total Costs $385)
- Cost Per Switch Port – $70 / 24 Ports = $2.91 per port
- Host Costs – (3 Hosts x $75 HCA) + ((2 Cables x 3 Hosts) x $30 = $315 (Per Host $105)
- Total Cost to enable 3 hosts and switch cost – $315 + $70 = $385
- Fully populated 24 port switch supporting 12 hosts = $1330
InfiniBand DDR 20Gb/s – (3 Host Total Cost $510)
- Cost Per Switch Port – $120 / 24 Ports = $5 per port
- Host Costs – (3 Hosts x $100 HCA) + ((2 Cables x 3 Hosts) x $30 = $390 (Per Host $130)
- Total Cost to enable 3 hosts and switch cost – $390 + $120 = $510
- Fully populated 24 port switch supporting 12 hosts = $1680
InfiniBand QDR 40Gb/s – (3 Host Total Cost $1040)
- Cost Per Switch Port – $500 / 24 Ports = $20.83 per port
- Host Costs – (3 Hosts x $150 HCA) + ((2 Cables x 3 Hosts) x $30 = $540 (Per Host $180)
- Total Cost to enable 3 hosts and switch cost – $540 + $500 = $1040
- Fully populated 24 port switch supporting 12 hosts = $2660
From these costs you can clearly see that InfiniBand is TRULY the best value for speed and port price. Even if you got a great deal, let’s say 50% off on 10Gbe, it still would be slower and it would cost you more. Heck, for the price you could easily buy an extra switch as a backup.
With this in mind my plan it to replace my backend Gbe network with InfiniBand. Using IPoIB (IP over InfiniBand) for VSAN, vMotion, and FT traffic and my 1Gbe network for the VM’s and ESXi management traffic. However, without knowledge wisdom cannot be achieved. So, my next steps are to learn more about InfiniBand and review these great videos by Mellanox. Then come up with a plan to move forward using this technology.
Check out these Videos: InfiniBand Principles Every HPC Expert MUST Know!
I was working on a remote server today and I needed better stats around ping and trace route. I could not install additional software and then I came across the windows command ‘pathping’. Its hard to believe this tool has been around since NT4 days and I don’t recall ever hearing about it. Give it a go when you get a chance and I’m adding it to my “virtual” tool belt.
More information here… https://en.wikipedia.org/wiki/PathPing
If you like my ‘no-nonsense’ blog articles that get straight to the point… then post a comment or let me know…
Else, I’ll start writing boring blog content.
There are two simple checks a virtual infrastructure (VI) admin should be doing to ensure ESXi Datastores and the Windows VM’s are properly aligned. If either are misaligned then performance issues will follow. Though I’m not going to get into the whys and how’s of alignment issues I will show you how to quickly check.
1 – ESXi Datastores (DS)
By default if the VI admin formats a target datastore with vCenter Server or directly connected to a host via the VI Client the starting sector will be 2048. A starting sector of 2048 will satisfy nearly all of the storage vendors out there, however a 2048 starting sector should be validated with your storage vendor.
If the VI Admin chose to format the DS via a script then they should choose a starting sector of 2048 or what the storage vendor recommends
Example — partedUtil setptbl \$disk gpt “1 2048…..” More info here on partedUtil
Here is a simple command to check your “Start Sector”. SSH or Direct console into a host that has DSs you want to check and run this command.
~ # esxcli storage core device partition list
Some note about this –
RED Box – Is the local boot disk, so its starting sector will be 64, this is not an issue as this is the ESXi Boot disk
Yellow, Green, and Blue – Are all VSAN Disks and all have a starting sector of 2048 << This is what I’m looking for, I want to make sure all DS disks start at 2048, if not they could experience performance issues.
2 – Windows VM Check
Windows checks are pretty easy too, the starting sector offset should be 2048. Note the screenshot below shows the Partition starting offset of 1,048,576, also note it’s labeled in bytes not sectors. To find the starting sector just divide the Partition Starting Offset by the Bytes/Sector. Simple math tells us its right — 1048576/512 = 2048 Sector. If your Partition Starting offset is anything other than 1,048,576 Bytes or 2048 Sectors then the VM is not aligned and will need adjusted.
To find your Partition Starting offset, from a Windows Command Prompt, type in ‘msinfo32.exe’, go to Components > Storage > Disks, and note your Partition Starting Offset.