8/15/2016

Hortonworks Sandbox Setup


Last week I decided to get a Hortonworks Sandbox setup.

There are a lot of options, VMware, VirtualBox, Azure Cloud, Amazon cloud, docker...

I chose to go with VirtualBox for a couple of reasons:
  1. It's first in the list on the hortonworks site
  2. I've never used VirtualBox, and I'd like to give it a spin
  3. VirtualBox comes from Oracle, Java comes from Oracle, and Hadoop seems to be pretty wired up with Java.  (might as well get on the train).
The VirtualBox Install Guide is pretty straight forward:
  1. Download and install VirtualBox
  2. Download the virtualbox OVA file (this is the compressed file that contains the vmdk and the ovf)
  3. Configure VirtualBox and import the image
Getting VirtualBox downloaded and installed was simple enough.  However my immediate attempt to download and import the OVA file was beset with issues.

Click download image from the website






Wait 25 minutes...



Run the VirtualBox import, or so I thought.

Maybe I can extract the files and just try importing the vmdk directly?
Fail!

Did you catch what's going on?  My download is supposed to be 8.5 GB, but I only got 1.3 of that.  Googling for my issue didn't provide much help, other than several other people searching for a solution to the same issue.

I did find some interesting things when googling how to resume a chrome download.  Most of it points to using wget, so here's how to do that:
  1. Download wget
  2. Extract the file (no install required)
  3. Run the command, here's mine:
wget --tries=10 --show-progress "https://d1zjfrpe8p9yc0.cloudfront.net/hdp-2.4/HDP_2.4_virtualbox_v3.ova" -O "D:\Hadoop\HDP_2.4_virtualbox_v3.ova"

(this was helpful for putting the command together)

--tries tells wget to keep retrying / resuming the download.
--show-progress is self explanatory
The URL to download, I pulled from the Hortonworks website:
-O is the output location.

This got me a happy file.  You'll see multiple disconnects and resumes while (w)getting it:

I was now able to import the VirtualBox:
And start it up without issue?, nope:

Basically VirtualBox doesn't like running a VM on a VM.

So lets try running it locally?, nope:

Enable VT-x in the BIOS.
Set VTx to Enabled, F10.

Ahh, there we go (finally!)

Lessons learned:

Use wget for downloads that repeatedly drop the connection.
Don't try to run VirtualBox inside a VM.
Enable VTx in the BIOS to run VirtualBox.

P.S. I also tried to be clever with VirtualBox inside a VM, but none of the following worked:

Turn off the hardware marriage?
..\VirtualBox>VBoxManage modifyvm "Hortonworks Sandbox with HDP 2.4" --hwvirtex off
C:\Program Files\Oracle\VirtualBox>VBoxManage modifyvm "Hortonworks Sandbox with HDP 2.4" --vtxvpid off

..\VirtualBox>VBoxManage startvm "Hortonworks Sandbox with HDP 2.4"
Waiting for VM "Hortonworks Sandbox with HDP 2.4" to power on...
VM "Hortonworks Sandbox with HDP 2.4" has been successfully started.

Except, not:
Effective Paravirt. Provider: None
"Your 64-bit guest will fail to detect a 64-bit cpu and will not be able to boot"

The VirtualBox forums were very helpful.