Virtual Network Self-Provisioning¶
End-users can create their own virtual networks in two different ways:
making a reservation
instantiating a Virtual Network Template.
Reservations¶
Reservations allows users to create their own networks consisting on portions of an existing Virtual Network. Each portion is called a Reservation. To implement this you need to:
Define a VNET, with the desired ARs and configuration attributes. These attributes will be inherited by any Reservation, so the final users do not need to deal with low-level networking details.
Setting up access. In order to make a Reservation, users needs
USE
rights on the Virtual Network, just as if they would use it to directly provision IPs from it.Make Reservations. Users can easily request specific addresses or just a number of addresses from a network. Reservations are placed in a new Virtual Network for the user.
Use Reservations. Reservations are Virtual Networks and offer the same interface, so simply point any Virtual Machine to them. The number of addresses and usage stats are shown also in the same way.
Make and delete Reservations¶
To make a reservations just choose the source Virtual Network, the number of addresses and the name of the reservation. For example to reserve 10 addresses from Private
and place it on MyVNET
just:
$ onevnet reserve Private -n MyVNET -s 10
Reservation VNET ID: 7
As a result a new VNET has been created:
$ onevnet list
ID USER GROUP NAME CLUSTER BRIDGE STATE LEASES
0 admin oneadmin Private - vbr1 rdy 10
7 helen users MyVNET - vbr1 rdy 0
Note that Private shows 10 address leases in use, those reserved by MyVNET
. Also note that both networks share the same configuration, e.g. BRIDGE
.
Reservations can include advanced options such as:
The AR where you want to make the reservation from in the source Virtual Network
The starting IP or MAC to make the reservation from
A reservation can be removed just as a regular Virtual Network:
$ onevnet delete MyVNET
Using Reservations¶
To use a reservation you can use it as any other Virtual Network; as they expose the same interface. For example, to attach a virtual machine to the previous Reservation:
NIC = [ NETWORK = "MyVNET"]
Updating Reservations¶
A Reservation can be also extended with new addresses. This is, you can add a new reservation to an existing one. This way a user can refer to its own network with a controlled and deterministic address space.
Note
Reservation increase leases counters on the user and group, and they can be limited through a quota.
Note
The reservation interface is exposed by Sunstone in a very convenient way.
Virtual Network Templates¶
Virtual Network Templates allow end users to create their own Virtual Networks without knowledge of the underlying infrastructure. Virtual Network Templates, unlike Reservations, allows end user to set the logic attributes, like address ranges, dns server or gateway of the network. See the Virtual Network Templates guide for more information.