Running Tachyon on Oracle VirtualBox
Deploy Tachyon Cluster on VirtualBox via Vagrant
Vagrant can spawn Tachyon cluster in the on VirtualBox.
A set of pre-configured Vagrant recipe and shell scripts can be found at tachyon/deploy/vagrant
directory:
vagrant ├── conf │ ├── ec2-config.yml │ ├── init.yml.aws │ ├── init.yml.glusterfs │ ├── init.yml.hdfs1 │ ├── init.yml.hdfs2 │ ├── init.yml.os │ ├── init.yml.docker │ └── openstack-config.yml ├── init.yml -> conf/init.yml.hdfs2 ├── README.md └── ...
Command vagrant up
allows you to launch a Tachyon on VirtualBox VMs. It reads Tachyon cluster configuration from tachyon/deploy/vagrant/init.yml
, then the script automatically creates the cluster, sets up under filesystem, and starts Tachyon master and workers on the cluster for you.
Prerequisite
-
Install Vagrant. You can download and install Vagrant. Version 1.6.5 and higher is required
-
Install VirtualBox.
Configure
Provide your desired Tachyon cluster configuration. A sample configuration can be found in tachyon/deploy/vagrant/conf/init.yml.[hdfs2|hdfs1|glusterfs]
. Link or copy it to tachyon/deploy/vagrant/init.yml
.
The parameters in tachyon/deploy/vagrant/init.yml
are explained as the following.
Parameter | Description | Values |
---|---|---|
Ufs | Tachyon Underfilesystem | glusterfs|hadoop2|hadoop1 |
Provider | Vagrant Providers | vb|aws|openstack|docker |
Memory | Memory (in MB) to allocate for Virtualbox image | at least 1024 |
Total | Number of images to start | at least 1 |
Addresses | Internal IPs given to each VM. The last one is designated as Tachyon master. For VirtualBox, the addresses can be arbitrary. For AWS, the addresses should be within the same availability zone. For OpenStack, since the compute node instances use DHCP, these addresses are not used. For Docker provider, containers use DHCP, these addresses are not used. | IPv4 address string |
Launch Cluster
Run command to launch your Tachyon cluster
$ vagrant up
A successful deployment will end up with messages showing Tachyon master and workers are launched.
Access Cluster
You can access your cluster nodes by vagrant ssh
command. vagrant ssh TachyonMaster
connects you to the node that acts as the TachyonMaster. If you have multiple worker nodes, vagrant ssh TachyonWorker1
connects to node TachyonWorker1.
Destroy Cluster
Run command to destroy the cluster
$ vagrant destroy [-f]