wiki:GENIExperimenter/Tutorials/GENI-SAVI

Version 2 (modified by rick@mcgeer.com, 9 years ago) (diff)

--

Get to Know the GENI and SAVI

Overview:

SAVI (Smart Applications on Virtual Infrastructure) is a network of OpenStack Clouds running at a number of sites across Canada. One important subset of GENI's capability is as a distributed cloud; used together, gENI and SAVI form a distributed Cloud across over 60 sites in North America. In this tutorial, the student will learn to create a slice spanning the GENI and SAVI testbeds, and orchestrate the actions of the VM across the entire joint testbed"


The goal of the tutorial is, on each node, to run an HTTP query of the form:

http://www.lively-web.org/nodejs/GEETutorial/helloWorld?slice=<slice name>&name=<container name>&ip=<IP of host>&lat=<latitude of host>&lng=<longitude of container>

This page will log each of your queries, and you can check that all your nodes were successfully able to run the query.


To meet this objective, participants will use Ansible to install software and run commands on GEE slicelets spanning 20 InstaGENI racks.

Prerequisites:

Familiarity with Linux.

Tools:

  • During the tutorial we will use the GEE Portal to allocate slicelets to participants. You may instead allocate your slicelet in advance if you'd like.
  • We will be using Ansible to install software in and manage GEE slicelets. Though it's not required to complete the tutorial, you may want to install Ansible on your laptop following these instructions. Ansible does not run directly on Windows; Windows users who want to install Ansible locally can use Vagrant to install an Ubuntu VM on their machine, and then install Ansible in that VM.

How to get help:

During the tutorial, please raise your hand and one of the tutorial leaders will help you.

Resources:

Tutorial Instructions

Design/Setup
  • Part I: Design/Setup
    1. Get a GEE slicelet and download GEE helper files
    2. Learn about GEE networking
    3. Configure the Ansible controller for your slicelet
    4. Learn basic concepts of Ansible
Execute
  • Part II: Execute
    1. Create and run an Ansible playbook to install the software you'll need
    2. Create an Ansible playbook to download a parameterized URL from each node
    3. Run the playbook
    4. Verify that the playbook worked as expected
Finish