What Is Lab-as-a-Service?

Lab as a Service is a project to serve the OPNFV and LFN communities by hosting resources for development and testing of LFN projects. Many of the LFN projects require much more hardware to run than what is available on a developer's laptop.

To solve this problem, Lab as a Service allows users to request access to hardware resources (i.e. powerful servers). We host a web dashboard at https://labs.lfnetworking.org for users to interact with. On the backend, we listen to the dashboard and provision the requested resources and provide access to them. The whole process is automated and does not require any manual intervention. This means that users can get access to hardware much faster and the lab that hosts the hardware does not have to waste labor to manually configure hardware.

It is important to note the separation between the "front-end" dashboard and the "back-end" hardware provisioning system. Multiple labs may host hardware and use the lab provisioning software to connect to the one shared dashboard.


Project page: Lab as a Service

New Features

The new release of Lab as a Service (LaaS) offers some big new features:

Multiple Servers

Now you can reserve and use multiple servers together in one booking.

Custom Networking

Users can define how they want their multiple machines to be networked. We provide a fully configurable Layer 2 network between machines in a booking.

Improved Collaboration

If you want to share a booking with team members, the dashboard will handle sharing access and creating multiple accounts for you.

Multiple Labs

The new dashboard makes it possible for multiple labs to participate and host servers for LaaS.

Snapshots

We will allow users to take a snapshot of one of their currently booked machines. This snapshot can be applied to another machine in a new booking to save time setting up a development / testing environment, etc.

Virtual Deployments

We have automated virtual deployments of OPNFV so that users can be delivered an already deployed and running OPNFV environment.


Description

LaaS 2.0 moves away from the old "book a single server" model and allows users to define and book a "POD". A user's pod can contain multiple servers, and the user can define how the machines will be networked together. This opens up the possibility of running OPNFV/ONAP on a baremetal environment provided on demand by Lab as a Service.



How to Book a Resource:

Note: Reserving multiple servers at once is only available to Project Team Leaders (PTLs) of approved projects.

If you do not need a multi-server resource, there is an easy one-page form for requesting access to a single server with an optional OPNFV virtual deployment.


There are 3 steps in booking a multi-server resource with LaaS:

  1. Define your resource / pod
  2. Configure your resource / pod
  3. Create a booking using your resource / pod


Defining Your Resource

Choosing Hosts

When defining what your resource will be,  you first must select which lab you want your booking to be at. This will determine what resources are available to you. Each lab will host different kinds of machines with different capabilities. You can mix and match different machines to satisfy your requirements.


Defining Networking

Finally, you can define the networking for your pod. Every pod automatically comes with a public network that allows you to access the machines in your pod and allows your machines to reach the internet. Beyond that, you may add private networks to your pod which will utilize different vlans. Please note that if you do not connect a machine to any networks, you will not be able to reach it (because it is not connected to any network!).


Configuring Your Resource

Once you have a template for a hardware pod, you need to tell your lab how to configure it. You can select which operating system to have installed on each of your machines. This is also where you will configure your OPNFV deployment when that feature becomes publicly available.


Create Your Booking

To create a booking, you simply need to select which of your pods and pod configurations you want. You can select the length of your booking, up to a maximum of 3 weeks. You can also add "collaborators" to your booking. They will receive their own vpn + ssh access information to make it easy to share resources with the people you work with.



How To Access a Booked Resource

Once you have created a booking on the dashboard, you can access information about the booking at Account > My Bookings > Details. This page will display to you messages sent from the lab that is providing your booked resource.

Notes on using resources at the UNH-IOL:



Acceptable Usage Policy 

The Lab as a Service (LaaS) Acceptable Usage Policy (AUP) defines what is acceptable and not acceptable in the LaaS community labs. These lab environments are sponsored by the Linux Foundation, hosted by the UNH-IOL (https://www.iol.unh.edu) and made available to LFN community members for purposes of developing features, testing deployments and delivering releases for LFN projects.

Resource Usage


VPN Access


Network Bandwidth


Remote Console Access


Support


Any violation of this Acceptable Usage Policy may result in loss of VPN access and  usage of the LaaS resources.

Developer Resources

Source code for the LaaS 2.0 dashboard: https://git.opnfv.org/laas/

Source code for the reference backend implementation: https://git.opnfv.org/laas-reflab/