The Moab Hosting Center Server allows sites to aggregate resources together and make these resources available to a customer as a complete package custom tailored to dynamic customer needs. With Virtual Private Clusters (VPCs), a site can package needed support resources such as network, data, and security objects together allowing a customer to simply request the primary resource actually needed, such as a compute node. With VPCs, Moab will, behind the scenes, dynamically provision all other aspects without burdening the customer with these details.
When requesting resources, a particular VPC profile can be specified using the -p argument of the mshow -a command.
20.1.2 Configuring Virtual Cluster Profiles
VPC Profiles are configured using VCPROFILE. They allow a site to specify resources that should be allocated together with explicitly requested resources and otherwise set defaults for how VPCs should be created.
List of zero or more comma
delimited <OTYPE>==<OID>[:<OID>] pairs where
<OTYPE> is one of the following: USER, GROUP, ACCT, CLASS, or QOS
DEFAULT
---
DETAILS
Specifies which
credentials can view this profile and can create VPCs using this profile.
EXAMPLE
Users steve and john and any member of the group
staff can use VPC resources.
NOTE: Inputting USER==steve,USER==john will only allow john to use the virtual cluster (as ==john overwrites ==steve). For both to use resources, input USER==steve,USER+=john.
ATTRIBUTE
DESCRIPTION
FORMAT
<STRING>
DEFAULT
---
DETAILS
Arbitrary human readable string describing VPC profile usage.
(NOTE: This string will be provided to end users via application and web portals to help them select the appropriate resources.)
EXAMPLE
End-users will see this description when specifying which VPC package to select.
Accounts associated with the creation of each data VPC will be charged for VPC utilization with the associated charge multiplier.
ATTRIBUTE
NODESETLIST
FORMAT
<FEATURE>[,<FEATURE>]...
DEFAULT
---
DETAILS
Nodeset constraints to be applied to explicitly specified reqs in format.
NOTE: The VC profile NODESETLIST attribute only supports blocking node feature based node sets with the ONEOF policy enforced.
EXAMPLE
Resources will either be allocated entirely from the fastio or the myrinet node set.
ATTRIBUTE
NODESETUPCOST
FORMAT
<DOUBLE>
DEFAULT
---
DETAILS
Per node cost in credits associated with provisioning resources and services to enable the associated VPC. See the Utility Computing Accounting or Allocation Management overviews for more information.
EXAMPLE
Accounts associated with the creation of a new VPC will be assessed a per-node charge for each node in a newly created VPC associated with the overhead of setting up the needed environment.
ATTRIBUTE
OPRSVPROFILE
FORMAT
<RSVPROFILEID>
DEFAULT
---
DETAILS
The default reservation profile for resource requirements that are explicitly specified by the user.
EXAMPLE
Resource requirements that are explicitly specified by the requestor and that do not have an explicit reservation profile will use the fastp reservation profile.
ATTRIBUTE
QUERYDATA
FORMAT
<RESOURCE_QUERY_STRING> (See mshow command usage.)
DEFAULT
---
DETAILS
List of requirements (reqs) to be co-allocated along with explicitly specified requirements.
EXAMPLE
One ionode will be allocated for the first 30 minutes of the VPC and one vlan generic resource will be allocated for the first hour.
ATTRIBUTE
REQENDPAD
FORMAT
[[[DD:]HH:]MM:]SS
DEFAULT
---
DETAILS
Amount of additional time required after each explicitly specified req.
EXAMPLE
Five minutes of additional walltime will be appended to the end of each explicitly specified requirement.
ATTRIBUTE
REQSETATTR
FORMAT
<RESOURCE_LIST>
DEFAULT
---
DETAILS
A list of comma-delimited resource requirements that are merged with the resource request requirements in the corresponding mshow -a command.
EXAMPLE
A request for four tasks and two generic resources named tape are appended to the user-specified resource request.
ATTRIBUTE
REQSTARTPAD
FORMAT
[[[DD:]HH:]MM:]SS
DEFAULT
---
DETAILS
Amount of additional time required before each explicitly specified req.
EXAMPLE
Fifteen minutes of additional walltime will be prepended to the start of each explicitly specified requirement.
The reservation profiles of the VPC set with the QUERYDATA or OPRSVPROFILE attributes can be used to manage provisioning of VPC resources. This provisioning is generally enabled via the use of triggers although it may also be enabled through a resource manager interface.
NOTE: If a QUERYDATA attribute has a nodefeature constraint of $common, the co-allocation query will import the nodefeature constraint
of the first explicitly specified req.
20.1.3 Creating VPCs
VPCs are created using the -c vpc argument of the mschedctl command as in the following example:
A VPC can be created with arbitrary variables imported into its environment using the variable attribute. For example, to create a VPC with the variables os and application set, the previously demonstrated mschedctl command could be changed to the following:
20.1.4 Listing VPCs
Listing VPCs is accomplished using the mschedctl -l vpc command.
20.1.5 Modifying VPCs
Modifying VPCs is accomplished using the "mschedctl -m vpc:<VPCID>" command.
20.1.6 Destroying VPCs
Dynamically destroying VPCs is accomplished using the mschedctl -d vpc:<VPCID> command.
20.1.7 Charging for VPCs
Charging within a VPC is flexible allowing charges for pre-execution provisioning overhead, for actual utilization of compute, license, network, and storage resources, and for use and manipulation of generic resources and services. In addition, charge rates can be adjusted based on the service level and resource type requested as well as the credentials of the requestor. See Utility Computing Accounting for more information.