Obtain and use a Virtual Machine with the NodeSoftware¶
About VirtualBox¶
VirtualBox is a software that allows you to run an operating system inside a “virtual machine” (VM). You need to download the software from http://www.virtualbox.org/ and install it on your computer which becomes the host for the VM.
The virtual harddisk¶
The file can be downloaded from http://vamdc.tmy.se/files/VAMDCnode.vdi.bz2 (600MB).
Unpack it (bunzip) and save it whereever it pleases you (unpacked size
is over 2GB). The default location on Linux hosts is
~/.VirtualBox/HardDisks/
.
Setting up the VM¶
After installing VirtualBox you start it and click “New” for setting up a new VM. Choose Linux/Debian as operating system and a memory size that comfortably fits into your RAM. When asked to create a virtual hard disk, chose the one you downloaded instead.
When you finished the setup, you can click “Start” to boot the VM. At
the end of the boot process, you will see a login prompt. Use vamdc
as
username and V@mdc
as password.
Once inside the VM¶
Passwords¶
The first thing to do is change the password by typing passwd
. The
user can execute commands with root-privileges by prepending sudo
.
Use sudo passwd
to change the root password (which is also V@mdc
from the start).
Network¶
Check that the VM has access to the network by trying to ssh to
another machine or by running sudo ifconfig
and checking that
interface eth0 has an IP-address assigned to it.
Note
After copying a VM, the operating system still remembers the old host’s
network card and will likely give a new name (eth1) to the current network
interface. You can fix this by removing the content of the file
/etc/udev/rules.d/70-persistent-net.rules
and reboot (type sudo reboot
);
alternatively by editing /etc/network/interfaces
and running
/etc/init.d/networking restart
.
Install system updates¶
Keep the system up to date with:
$ sudo apt-get update
$ sudo apt-get upgrade
The Node Software¶
You find the Node Software in the home directory of the user vamdc:
$ cd
$ cd NodeSoftware
$ # alternatively: cd $VAMDCROOT
$ # this environment variable is pre-set.
This is a version control repository and you can update the software by:
$ git pull upstream
For more information on how to use this, please read Collaborating with git and GitHub in
the previous section. (You can connect the existing repository to your
GitHub account with git add remote origin <YourGitHubRepoURL>
after
forking the main repository there.)
Now you should be all set to continue with the Step by step guide to a new VAMDC node.
Deployed node¶
In the VM, both nginx and gunicorn are installed, as described in
Deployment of your node. There is a symbolic link NodeSoftware/nodes/RunningNode
which points to the ExampleNode. Once you made your copy of the ExampleNode
(see Step by step guide to a new VAMDC node), point RunningNode
to your own instead since nginx
uses NodeSoftware/nodes/RunningNode/nginx.conf
for its config. Don’t forget to restart nginx with service nginx restart
.
In your node directory, you can now run gunicorn_django -c gunicorn.conf
to start the node workers and should have a running node. To access it from outside the VM, you must probably tweak the network setup between the VM and your host computer.
MySQL¶
MySQL server 5.1 is installed in the VM. You get a MySQL-prompt with:
$ mysql -u root -p
The password is once more V@mdc
. From this prompt you can create new
databases and set the access rights to match the ones from your node’s
settings.py
.
Typical commands would be:
mysql> CREATE DATABASE yourDBname CHARACTER SET utf8;
mysql> GRANT ALL PRIVILEGES ON yourDBname.* TO YourUser@localhost IDENTIFIED BY "reeH5ohm";
mysql> flush privileges;