Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Introduction to PlanetLab Prepared By: Abhishek Agrawal.

Similar presentations

Presentation on theme: "An Introduction to PlanetLab Prepared By: Abhishek Agrawal."— Presentation transcript:

1 An Introduction to PlanetLab Prepared By: Abhishek Agrawal

2 Presentation Outline  Details about PlanetLab and Slice Management  PlanetLab Tools

3 Details about PlanetLab and Slice

4 What is PlanetLab??  PlanetLab is an overlay test bed designed to allow researchers to experiment with network applications and services that benefit from distribution across a wide geographic area.  PlanetLab Consortium is a collection of academic, industrial, and government institutions cooperating to support and enhance the PlanetLab overlay network  For more information visit

5 How to Join PlanetLab??  Need to donate two machines and host two PlanetLab nodes locally.  After approval, PI’s can create slices  A slice is a set of allocated resources distributed across PlanetLab  After being assigned a slice, a user can add nodes to it.

6 Getting Started with PlanetLab  Register for a PlanetLab account by visiting the Account Registration page. Account RegistrationAccount Registration  Contact PI for account to be activated

7 Create an SSH Key  Remote access to PlanetLab nodes is restricted to SSH login using RSA authentication  To generate an SSH key pair, use the ssh- keygen program on a secure UNIX system: ssh-keygen -t rsa -f ~/.ssh/identity ssh-keygen -t rsa -f ~/.ssh/identity  Ssh-keygen asks for a passphrase. It’s better to go for password-less access.  Upload the public key file to the PlanetLab website using the Manage My Keys page. Manage My KeysManage My Keys

8 Getting started with the slice  Initially slice is populated with a minimal Fedora Core 2 Linux installation Fedora Core 2Fedora Core 2  To login to a node with SSH, provide your slice name as the login name (e.g. ufl_ipop), the path to your private key file (e.g. ~/.ssh/identity), and the node to login to (e.g. ssh -l ufl_ipop -i ~/.ssh/identity ssh -l ufl_ipop -i ~/.ssh/identity  Initially logged in as a regular user with the same name as your slice name. May su to root, add new users, control services, install new packages, mount certain directories, and perform other actions that root is normally capable of.

9 Populating the Slice  Additional standard packages in the slice, can be installed using yum. For example, to install emacs: yum install emacs yum install emacs  To bring your slice up-to-date with the latest versions of all packages: yum update yum update

10 Building and Deploying the application  The most straightforward way of deploying your application to a single node is with scp: scp -l ufl_ipop -i ~/.ssh/identity -r test1 scp -l ufl_ipop -i ~/.ssh/identity -r test1  rsync may be used to copy just those files that do not exist or have changed since the last time they were copied: rsync -a -e "ssh -l ufl_ipop -i ~/.ssh/identity" test1 rsync -a -e "ssh -l ufl_ipop -i ~/.ssh/identity" test1

11 PlanetLab Tools

12  Parallel SSH Parallel SSH Parallel SSH  PlanetLab Slice Deploy Toolkit PlanetLab Slice Deploy Toolkit PlanetLab Slice Deploy Toolkit  vxargs vxargs  Nixes Tool Set Nixes Tool Set Nixes Tool Set  A complete list of contributed software may be found on the Contributed Software page on the PlanetLab Wiki. Contributed SoftwarePlanetLab WikiContributed SoftwarePlanetLab Wiki

13 PSSH  Developed at Intel Research, Berkeley  This package provides parallel versions of the openssh tools. Included in the distribution:  Parallel ssh (pssh)  Parallel scp (pscp)  Parallel rsync (prsync)  Parallel nuke (pnuke)  Parallel slurp (pslurp)

14 PSSH Demo   pssh -h ips.txt -l ufl_ipop -o /tmp/foo hostname   pscp -h hosts.txt -l ufl_ipop foo.txt /home/ufl_ipop/foo.txt   pnuke -h ips.txt -l ufl_ipop java

15 PlanetLab Slice Deploy Toolkit  The PlanetLab Slice Deploy Toolkit consists of three scripts used to manage slices:  plslice create and manage a slice plslice  pldeploy manage a collection of cogs deployed in a slice pldeploy  pladdnodes example of a script to push a cog to all nodes

16 vxargs  It provides the parallel versions of any arbitrary command, including ssh, rsync, scp, wget, curl, and whatever  The main features are:  parallelism: run many jobs at the same time  flexibility: arbitrary command with arbitrary options  visualization: monitor the total/per job progress in a curses- based UI  redirection: stdout and stderr of each individual job are redirected to files respectively for further analysis.

17 Nixes Tool Set  plsetup node-list: bootstraps the slice with yum and gzip  plinstallrpm “rpms” node-list: installs all the rpms on all the nodes  pldeploy node-list: deploys any file structure to the nodes  plcmd command node-list: executes any set of commands on all the nodes.

18 Additional Resources  For questions regarding application compilation, deployment, and execution, try the PlanetLab Users mailing list PlanetLab Users mailing listPlanetLab Users mailing list  For technical difficulty with a node, with the slice, with the account, or with the website, contact PlanetLab Support PlanetLab SupportPlanetLab Support

Download ppt "An Introduction to PlanetLab Prepared By: Abhishek Agrawal."

Similar presentations

Ads by Google