Thursday, November 21, 2024

youtube

   
Text Size

Tutorial on using NITOS

Creating a User Account

The first step you need to do before you can use NITOS is to create your NITlab account. This process is simple and can be accomplished on the NITlab website (online tutorial). Underneath the login boxes, click the “Create an account” link. Fill in the required information. Once you click the “Register” button, a confirmation mail will come to you and when you confirm it, your request will be sent to the administrator for approval. When the administrator approves the creation of your account, you will receive a confirmation email. At this time, you may continue with the tutorial.

Getting a Slice and Reserving Resources

All access to NITOS resources occurs through the “slice” abstraction.

The NITlab Administrator is in charge of managing your slice. You will need to contact him directly and ask him/her to either create a new slice for you, or add your user account to an existing slice. (This tutorial will assume that you have been given a new, empty slice.) Once your account has been associated to a slice, you will be able to view the Reservation page and the "Your ssh-keys" page, at the User Menu on the right of the page. In order for you to receive important announcements regarding the NITOS testbed, we advice you to register to the googlegroup "NITOS users", which can be found here.

You can then go to the Reservation page and reserve nodes and frequencies for a given interval. online tutorial

Slice names typically coincide with your NITlab site's account username. This tutorial will assume that your slice is named username. You should replace this value with your slice’s actual name whenever you encounter it in this tutorial.

Connecting to NITOS Server

You will need ssh public-key authentication to connect to the Server in the NITOS testbed. If you do not already have a ssh keypair, or would like to create a new one specifically for NITOS, perform the following commands. This tutorial will assume that ~/.ssh/id_rsa is the private key that you will use for NITOS authentication.

$ ssh-keygen -t rsa -f ~/.ssh/id_rsa
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

Once you have created your ssh keypair, you will need to upload your public key to the NITlab database. You can do this easily through the NITlab website. Go to the NITlab home-page and log in using your newly created account. In the User Menu on the right, click “Your ssh-keys”. Choose the slice to which you want to associate this public key, click "Submit" and after that, click “Browse” and navigate to your public key file (i.e. ~/.ssh/id_rsa.pub). Click “Upload.” You should see your key appearing in the list.

You do not need a password if you have uploaded your rsa public key in the server. You can log into the server at anytime you want to. However, you can only access the nodes you booked through the Reservation page.

Depending on the resources you are going to use, you should connect to the corresponding server. For example:

NODE001 - NODE040 (NITOS Outdoor Testbed)

Open a secure shell to "nitlab.inf.uth.gr" using your slice name as username.

$ ssh This email address is being protected from spambots. You need JavaScript enabled to view it.
 
NODE041 - NODE049 (NITOS Office TestBed)

Open a secure shell to "nitlab2.inf.uth.gr"  using your slice name as username.

$ ssh This email address is being protected from spambots. You need JavaScript enabled to view it.
 
NODE050 - NODE085 (NITOS Indoor RF Isolated Testbed)

Open a secure shell to "nitlab3.inf.uth.gr"  using your slice name as username.

$ ssh This email address is being protected from spambots. You need JavaScript enabled to view it.
 

For Windows, have a look at this article explaining the respective procedure using Putty. 

 

In order to use WiMAX-enabled nodes, please follow this tutorial.

Loading an OMF-compatible image on your resource

Ubuntu distributions, stored at the NITOS server as binary .ndz files, can be loaded on the resources overwriting any existing data on the disks of these resources.

Beginners can load a "baseline" distribution on their resources and later modify it according to their needs. There are two types of nodes supporting hard drive images at NITOS, the older Orbit-like nodes (the 'yellow' nodes) and the newer Commell nodes (the 'grid' nodes). For Orbit-like nodes the user should load the"baseline_orbit.ndz" image. For the grid nodes, the user should  use"baseline.ndz".

At any time you can look at MyReservations, to see all of your scheduled reservations, or at Node Status to see the status of your reserved nodes as well as to turn them on/off.

You can then load a "baseline" image for nodes you have reserved using the omf load command. For example, to load the baseline.ndz image to node 16 of NITOS, issue in a terminal where you are connected to the NITOS Server:

$ omf load -i baseline.ndz -t omf.nitos.node016

You can load an image to many nodes simultaneously using a comma separated list, for example:

$ omf load -i baseline.ndz -t omf.nitos.node016,omf.nitos.node017

Once the loading process of one of the 'baseline' images is succesfully completed, you should turn on the nodes with the omf tell command (please refer to the section at the end of this tutorial).

After waiting around 1 min in order for the nodes to boot, you can ssh into these nodes as root with no password. In a terminal where you are connected to the NITOS console server, issue

$ ssh root@node016

You can configure the image as you wish, since you have root privileges. One modification that you have to make is edit the file /etc/omf-resctl-5.4/omf-resctl.yaml, change the :slice section by putting your slice_name instead of the entry default_slice and finally restart the OMF RC with: service omf-resctl-5.4 restart

Another modification that you could make in order to ensure no other user has access to your resource during your reservation is to add a root password to the image (using the passwd command). Note that you only need to do these changes once for each of the two types of nodes, since you can then save your modified image, so that you can load your "own" image each of the subsequent times you use some resources. This process of saving images is described in the next section.

Using your slice to run OMF experiments

There are two ways to use your slice in order to run OMF experiments during your reservation. The first way is to install the OMF Experiment Controller locally at your PC and configure it appropriately and the second way is to issue OMF commands when logged in the server giving your slice as an option. We strongly recommend the second option, since every necessary compoment is in place in our Server, so we describe just the second method below.

Running OMF Experiment Controller from the server

You can run OMF experiments while logged in the NITOS console server with your account. All you have to do is use the --slice username option when running the omf exec command (replacing username with your actual username). online tutorial

Controlling the status of the nodes

In order to control the status of a node you can use the omf tell command. For example for rebooting the node 16:

$ omf tell -a reboot -t omf.nitos.node016

or for turning on node 16:

$ omf tell -a on -t omf.nitos.node016

You can also use the custom made command t_reboot for checking your reserved nodes:

$ t_reboot who

or for rebooting all of them:

$ t_reboot all hd

or for rebooting all of them in pxe mode:

$ t_reboot all pxe

Saving an OMF image from the resources to the server

You can save your modified image, in order to maintain the changes you've made and be able to use it again issuing the omf save command. For example, issuing

$ omf save -n omf.nitos.node005

will save the current image of node 5 to the server. The image is saved as an .ndz file in the directory /var/lib/omf-images-5.4 of the NITOS server with a name containing the date and time of the `omf save` command. You can then load this image to your resources using the omf load command and the name of the image. You can also rename the image, so that its name is more meaningful to you.

Who's Online

We have 25 guests and no members online

VIDEO DEMONSTRATIONS