On this page:
The Cloud  Lab Manual
2016-11-08 (b72d2a9)

The CloudLab Manual

The CloudLab Team

CloudLab is a "meta-cloud"—that is, it is not a cloud itself; rather, it is a facility for building clouds. It provides bare-metal access and control over a substantial set of computing, storage, and networking resources; on top of this platform, users can install standard cloud software stacks, modify them, or create entirely new ones.

The initial CloudLab deployment will consist of approximately 15,000 cores distributed across three sites at the University of Wisconsin, Clemson University, and the University of Utah. CloudLab interoperates with existing testbeds including GENI and Emulab, to take advantage of hardware at dozens of sites around the world.

The control software for CloudLab is open source, and is built on the foundation established for Emulab, GENI, and Apt. Pointers to the details of this control system can be found on CloudLab’s technology page.

Take a look at the status notes, and then get started!

    1 CloudLab Status Notes

    2 Getting Started

      2.1 Next Steps

    3 CloudLab Users

      3.1 Registered Users

      3.2 GENI Users

      3.3 Register for an Account

        3.3.1 Join an existing project

        3.3.2 Create a new project

    4 CloudLab and Repeatable Research

    5 Creating Profiles

      5.1 Creating a profile from an existing one

        5.1.1 Preparation and precautions

        5.1.2 Creating the Profile

        5.1.3 Updating a profile

      5.2 Creating a profile with a GUI

      5.3 Creating a profile from scratch

      5.4 Sharing Profiles

    6 Basic Concepts

      6.1 Profiles

        6.1.1 On-demand Profiles

        6.1.2 Persistent Profiles

      6.2 Experiments

        6.2.1 Extending Experiments

      6.3 Projects

      6.4 Virtual Machines

      6.5 Physical Machines

    7 Describing a profile with python and geni-lib

      7.1 A single XEN VM node

      7.2 A single physical host

      7.3 Two XenVM nodes with a LAN between them

      7.4 Two ARM64 servers in a LAN

      7.5 A VM with a custom size

      7.6 Set a specific IP address on each node

      7.7 Specify an operating system and set install and execute scripts

      7.8 Profiles with user-specified parameters

      7.9 Add temporary local disk space to a node

      7.10 Creating a reusable dataset

      7.11 Debugging geni-lib profile scripts

    8 Advanced Topics

      8.1 Disk Images

      8.2 RSpecs

      8.3 Public IP Access

        8.3.1 Dynamic Public IP Addresses

      8.4 Markdown

      8.5 Tours

      8.6 Introspection

        8.6.1 Client ID

        8.6.2 Control MAC

        8.6.3 Manifest

        8.6.4 Private key

        8.6.5 Profile parameters

    9 Hardware

      9.1 CloudLab Utah

      9.2 CloudLab Wisconsin

      9.3 CloudLab Clemson

      9.4 Apt Cluster

      9.5 IG-DDC Cluster

    10 Planned Features

      10.1 Versioned Profiles

      10.2 Persistent Storage

      10.3 Easier From-Scratch Profile Creation

      10.4 “Quick” Profiles

      10.5 Improved Physical Resource Descriptions

      10.6 Bare-metal Access to Switches

      10.7 OpenFlow Support

      10.8 Switch Monitoring

      10.9 Power Monitoring

    11 CloudLab OpenStack Tutorial

      11.1 Objectives

      11.2 Prerequisites

      12.4 Logging In

        12.4.1 Using a CloudLab Account

        12.4.2 Using a GENI Account

      11.4 Building Your Own OpenStack Cloud

      11.5 Exploring Your Experiment

        11.5.1 Experiment Status

        11.5.2 Profile Instructions

        11.5.3 Topology View

        11.5.4 List View

        11.5.5 Manifest View

        11.5.6 Graphs View

        11.5.7 Actions

        11.5.8 Web-based Shell

        11.5.9 Serial Console

      11.6 Bringing up Instances in OpenStack

      11.7 Administering OpenStack

        11.7.1 Log Into The Control Nodes

        11.7.2 Reboot the Compute Node

      11.8 Terminating the Experiment

      11.9 Taking Next Steps

    12 CloudLab Chef Tutorial

      12.1 Objectives

      12.2 Motivation

      12.3 Prerequisites

      12.4 Logging In

        12.4.1 Using a CloudLab Account

        12.4.2 Using a GENI Account

      12.5 Launching Chef Experiments

      12.6 Exploring Your Experiment

        12.6.1 Experiment Status

        12.6.2 Profile Instructions

        12.6.3 Topology View

        12.6.4 List View

        12.6.5 Manifest View

        12.6.6 Actions

      12.7 Brief Introduction to Chef

      12.8 Logging in to the Chef Web Console

        12.8.1 Web-based Shell

        12.8.2 Chef Web Console

      12.9 Configuring NFS

        12.9.1 Exploring The Structure

      12.10 Apache Web Server and ApacheBench Benchmarking tool

        12.10.1 Understanding the Internals

      12.11 Final Remarks about Chef on CloudLab

      12.12 Terminating Your Experiment

      12.13 Future Steps

    13 Getting Help