Created 12-07-2016 11:08 PM
I am running Sandbox within a VirtualBox hosted in Windows 10. I noticed that when I execute
ls -l
within a VirtualBox console and within Shell Web Client (accessed via 127.0.0.1:4200) I see different file lists, even though they are within the same /root directory. Does it mean that there 2 different virtual machines are running when I run Sandbox within a VirtualBox?
Created 12-07-2016 11:10 PM
The 2.5 Sandbox runs within a docker container running within the VM.
When you are in the VirtualBox console you are in the VM, but when you are in the shell web client, you are in the Docker container running within the VM. SSH'ing to port 2122 would log you into the VM where as SSH'ing to port 2222 would log you into the Docker container.
Created 12-07-2016 11:10 PM
The 2.5 Sandbox runs within a docker container running within the VM.
When you are in the VirtualBox console you are in the VM, but when you are in the shell web client, you are in the Docker container running within the VM. SSH'ing to port 2122 would log you into the VM where as SSH'ing to port 2222 would log you into the Docker container.
Created 12-07-2016 11:18 PM
Yes, this makes sense.
I am wondering however why it was done so complex - docker within a virtual machine, so we now have 2 levels of virtuality. Why not to use virtual machine directly?
Created 12-08-2016 06:26 PM
The Sandbox team at Hortonworks made this decision for the following reasons:
1) Customers are asking for it. Rate of adoption is increasing 30% in past year
2) Saves development time in building one image vs. 3 different images
3) Better consistency amongst virtualbox, azure, vmware
Created 12-09-2016 09:55 PM
And again this makes sense. However in this case I think it should be explained in "LEARNING THE ROPES OF THE HORTONWORKS SANDBOX" article. I do not think the fact of 2 levels virtuality is explained there or at least that it is explained clear enough for somebody who is new with the product