Intel NUC & VMware ESXi 6.0

So, recently I’ve decided to rationalise a lot of my computing equipment at home to reduce the footprint of what I use and the power consumption associated with all the equipment.

I’ve got a series of USB Hard Drives, Raspberry Pis (x2) and ACER Revo (Atom based) and a Core2Duo DELL machine all having their own use.  The raspberry pis, were a web/intranet server as well as an SSH access gateway, download device for large file downloads and a jenkins build server.  The revo was a windows 7, then 8, then 10 remote desktop client when being access remotely.  The core2duo machine is my development box where I build all the things I work on.  I reckon I have 5 x USB hard drives which I’ve also yet to detangle/clean up.

My Revo finally died, which prompted me to do something about all the equipment as I needed to replace it.

After lots of deliberation, I decided to go all out, on a reasonably low powered, but highly performant intel i7 NUC.

My shopping list was as follows:

  • Intel NUC5i7RYH Amazon Link
  • HyperX 16GB Low Voltage (1.35V) Ram (1600 MHz DDR3L CL9 SODIMM) Amazon Link
  • HyperX Predator 240GB M.2 SSD Amazon Link
  • I’d also got a 160GB SATA 2.5″ Drive going spare from the Revo

On arrival, it’s pretty painless to get into the barebones NUC to install the RAM/SSD, basically unscrew the four screws on the feet and pull off the panel.  Adding the RAM is easy.  The M.2 drive slightly more painful just as you have to screw it down and it’s a bit fiddly, but still painless.

And that was it – all ready to go.

OS of choice VMWare ESXi6 Open Source edition.
After downloading and registering/getting the key from vmware, it was put onto a USB drive to boot, which I used Rufus (https://rufus.akeo.ie/) to create.  Of course, this fails as VMWare is missing the Sata-xahci drivers/etc.

I followed the instructions here, replicated for posterity.

  1. Download and install vSphere PowerCLI 6.0 (Link) to use the Image Builder.
    This requires an account at vmware.com.
    If you are not entitled to download PowerCLI, register for an evaluation.
  2. Download required packages (Place both files in C:\esx)
    ESXi 6.0 Offline Bundle (VMware-ESXi-6.0.0-2494585-depot.zip) Link
    Sata-xahci Offline Bundle (Provided by v-front.de) Link
  3. Open VMware vSphere PowerCLI
  4. Enter the following commands:
    cd c:\esx\
    Add-EsxSoftwareDepot c:\esx\VMware-ESXi-6.0.0-2494585-depot.zip
    Add-EsxSoftwareDepot c:\esx\sata-xahci-1.28-1-offline_bundle.zip
    New-EsxImageProfile -CloneProfile "ESXi-6.0.0-2494585-standard" -name "ESXi-6.0.0-2494585-NUC" -Vendor "pembo.co.uk" -AcceptanceLevel "CommunitySupported"
    Add-EsxSoftwarePackage -ImageProfile "ESXi-6.0.0-2494585-NUC" -SoftwarePackage "sata-xahci"
    Export-ESXImageProfile -ImageProfile "ESXi-6.0.0-2494585-NUC" -ExportToISO -filepath ESXi-6.0.0-2494585-NUC.iso
    Export-ESXImageProfile -ImageProfile "ESXi-6.0.0-2494585-NUC" -ExportToBundle -filepath ESXi-6.0.0-2494585-NUC.zip
  5. Use the ISO/Zip created to install VMWare on the NUC, using rufus to create a bootable USB Drive.
  6. Install VMWare onto either the USB Drive you booted from, or in my case the 160GB SATA Drive
  7. At this point the M.2 drive does not show.  Of course, someone has had the issue before here, replicated again
  8. Adding the M.2 NVMe card.  No problem, we can fix that. First step is to determine the PCI ID:
    ~ # lspci -v | grep storage -A 1

    0000:00:1f.2 SATA controller Mass storage controller: Intel Corporation Wildcat Point-LP SATA Controller [AHCI Mode]
         Class 0106: <strong>8086:9c83</strong>
  9. The numbers we are looking for are where the example shows 8086:9c83. We have to add the value returned to the AHCI driver map (/etc/vmware/driver.map.d/ahci.map). Unfortunately we can’t edit this file while ESXi is running. The changes have to be made to the file that is loaded during ESXi startup (/bootbank/sata_ahc.v00). Convert the file with vmtar, extract it, change the driver map and rebuild it to /bootbank/. To do that…
  10. Enable SSH from the ESXi host screen
  11. SSH to the ESXi host
  12. Run the following commands:
    cd /tmp 
    mkdir ahci
    cd ahci
    vmtar -x /bootbank/sata_ahc.v00 -o sata_ahc.tar
    tar xvf sata_ahc.tar
    rm sata_ahc.tar
    echo "regtype=linux,bus=pci,id=8086:9c83 0000:0000,driver=ahci,class=storage" &gt;&gt; etc/vmware/driver.map.d/ahci.map
    tar cvf sata_ahc.tar etc usr
    vmtar -c sata_ahc.tar -o sata_ahc.vgz
    mv sata_ahc.vgz /bootbank/sata_ahc.v00

    Obviously substituting the 8086:9c83 with the value the previous command returned
  13. Reboot ESXi, and add the SSD storage

Next post in this series will be on my experiences/vms/usage/etc!

Thanks to virten.net and its contributors/authors for significant help in getting this going quickly!

E2Stream v6.3

E2Stream v6.3 is now available to download from here: E2stream (39637 downloads )

Change log:

v6.3 - 22/03/2015
* Added option in installer to download the app as a zip
&nbsp; for installation from other software

v6.2 - 22/03/2015
* Moved source to github and updated build processes to use github
  https://github.com/dpembo/e2stream
  https://github.com/dpembo/e2stream-installer
* Corrected positional issue of title text on the now/next
  detail infobar


Please note, the installation and setup requires you to enable a ‘develop’ account on your TV.
You also need Java v7 or v8 to run the installer.

Instructions to setup can be found here

For any bugs, please create a new issue here

If you do use E2Stream, please consider donating to support the continued development and hosting costs of this app! You can donate any amount you feel is applicable here:




Googlecode Demise

Having used googlecode for a long time now to host the source; I find myself disappointed (but I guess not surprised) to see google give up something else that’s free, community based and helps with the provision of open source software.

Single googlecode will disappear for good within the next few months, I’ve just migrated all the code over to github and updated the links on this site to github as below

LightwaveRF Control

Bootmii configuration Editor

Tetwiis

Thanks google.  Still forces me to start using GIT anyway 🙂

E2Stream v5.3

E2Stream v5.3 is now available to download from here: [download#26#nohits]

Change log:


v5.3 - 09/01/2015
* Moved transcode to settings screen
* Added 'multi-transcoder' settings to the advanced settings
  screen  for those receivers that use this.  Note:
  - On enabling multi-transcode it disables the default
    transcode mechanism as it's not relevant
  - Doesn't apply to recordings as this is a different e2 api
* Fixed(hopefully?) return button for H-Series TVs to enable
  the exit dialog, and return to exit from full screen player.
* Fixed advanced/parental settings to return to the settings
  screen rather than back to the main screen
* Made Rewind button delete a character on number entry in
  settings/advanced settings screen
* Following resolution of enter issue in v5.2, changed the help
  bar to reference the enter button now.
* Improved error handling on some network/stream communications

Please note, the installation and setup requires you to enable a ‘develop’ account on your TV.
You also need Java v7 or v8 to run the installer.

Instructions to setup can be found here

For any bugs, please create a new issue here

If you do use E2Stream, please consider donating to support the continued development and hosting costs of this app! You can donate any amount you feel is applicable here: