Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

Use case

Administrator wants to be able to assign Vlan to the Isolated network with the Source Nat Service enabled. 

Architecture and Design description

1) Network offerings changes

Have to remove the restriction when specifyVlan=true is allowed for Shared Network Offerings only. Should allow it for Isolated Network Offerings as well.  When the parameter is set to true, it means that the Admin has to specify the Vlan when he creates the network.

2) Network changes

Allow admins to specify a VLAN ID while defining a Tier of a VPC. This will be admin only operation.

VLAN should be in the valid range and free (not allocated)

VLAN should not be in the reserved range of any other account - Vlan ranges are not defined per account basis, it's defined per physical network and allocated on the fly when the new network gets created. To support the feature, following needs to be done:

There is a flag on the network offering (specifyVlan, boolean). If set to true, then vlanid is required when creating a new network using this offering. So far this attribute was set to true only for Shared offerings. Need to remove the restriction.

Only ROOT admin is aware of the Vlans in the system. So only he can create the tier with the vlan defined, on behalf of the regular user. UI should handle it and don't display network offerings with "specifyVlan=true" when create a new tier from the VPC view.

DB changes

No DB changes

UI changes

  • When create tier inside the VPC, show offerings with specifyVlan=true only on Root admin UI
  • When offering with specifyVlan=true is selected from the drop down list, display the Vlan field on create network dialog.

Question: should vlan come from the range defined on the Physical network? If so, we might need a set of APIs to display free vs allocated vlans. Or should it be the Vlan outside of the range defined on the physical network (just the way we do for Shared networks)?