Configuring Attributes for Intelligent Placement

This topic explains how to use placement attributes as a part of Intelligent Placement. By identifying the capabilities of each deployment destination and the requirements of a service, placement attributes help ensure that service requests are deployed to the best destination. For example, placement attributes can help vCommander decide whether to deploy to public or private cloud, or which datacenter or geographic region is best suited to a service.

You can configure two types of placement attribute:

  • Fixed Requirement: If a destination doesn't provide this capability, it's filtered out of the list of valid destinations.
  • Selectable Values: A prioritized list of capabilities. Destinations providing one or more of these capabilities are given a placement rating.

The vCommander REST API v2 enables you to create placement attributes and apply them to deployment destinations and published services. This can help with adding placement attributes to existing destinations and services, as well as easing the onboarding process. For examples, see the built-in help for the vCommander REST API v2 PowerShell client.

Examples

Example 1: Deploying a service using Intelligent Placement

To illustrate how service requirements and deployment destination capabilities affect Intelligent Placement, we'll do a simple walk-through. Our example service must be hosted in the UK, and while it can be deployed either on-premise or in a public cloud, an on-premise destination is preferred.

Three destinations are available to users requesting this service. The following diagram shows that the UK datacenter is the best destination, because it provides both data sovereignty and the preferred deployment environment.

Intelligent Placement Example

However, quota limits have been configured for the requester's organization. Because this service would cause the requester to exceed quota limits on the UK datacenter, the UK datacenter is no longer the best destination. The AWS - EU (London) destination is now chosen, because it satisfies the data sovereignty requirement, and the requester has sufficient quota.

Intelligent Placement Example - Over Quota

Configuring vCommander for this example involves three steps, plus an optional fourth step:

  1. Create two placement attributes:
    • Data Sovereignty, with the selectable values UK Hosting and Germany Hosting
    • Configuring a Placement Attribute for Data Sovereignty

    • Deployment Environment, with the selectable values Public Cloud and Private Cloud

    See Creating placement attributes.

  2. Assign appropriate values for these two placement attributes to your deployment destinations:
    • The UK Datacenter destination provides UK Hosting and Private Cloud.
    • The AWS-EU (London) destination provides UK Hosting and Public Cloud.
    • The AWS-EU (Frankfurt) destination provides Germany Hosting and Public Cloud.

    Adding placement attributes to a deployment destination

    See Assigning placement attributes to a deployment destination.

  3. Assign appropriate values for these two placement attributes to your published services.
  4. Our example service requires UK Hosting and prefers Private Cloud, but Public Cloud is allowed.

    Configuring Intelligent Placement Requirements for a Service

    See Assigning placement attributes to a published service.

  5. If you want requesters to be able to specify their preference for a public or private cloud destination, add the Deployment Environment placement attribute to the Service-level form in the Form Designer, using the Custom/Placement Attribute form element.
  6. Allowing Requesters to Specify Placement Requirements

    See Enabling requesters to select placement attribute values below.

    When a user requests this service, their choice of deployment environment affects the predicted destination and displayed service cost, as well as the form elements displayed on the component form. If the requester chooses public cloud, the Instance Type form element will be displayed, rather than the Memory and Storage form elements.

Example 2: All Oracle database instances must be deployed on a specific cluster that's licensed for Oracle

  1. Create a placement attribute called "Licensing". Specify that this attribute has selectable values, and add a single value, "Oracle".
  2. Assign the placement attribute value "Oracle" to the deployment destinations configured for the Oracle-licensed cluster. By doing this, you're indicating that these destinations provide Oracle licensing.
  3. Assign the placement attribute value "Oracle" to the Oracle instance in the service catalog. By doing this, you're indicating that this service requires Oracle licensing.

Later, if you have other licensing requirements, you can add more values for this placement attribute.

Example 3: Deploy all services requiring backup to a destination that supports backup

  1. Create a placement attribute called "Backup", as a Fixed Requirement. For a Fixed Requirement placement attribute, you don't need to provide any values.
  2. Assign the placement attribute "Backup" to the deployment destinations that provide backup capabilities.
  3. Assign the placement attribute "Backup" to the service catalog entries that require backup.

Example 4: Requester selects the service level, which affects where the service can be deployed

  1. Change the existing custom attribute "SLA", with the values Gold, Silver and Bronze, into a placement attribute.
  2. See Changing a custom attribute into a placement attribute.

  3. Assign the proper placement attribute values for "SLA" to your deployment destinations, according to the service levels they fulfill.
  4. Assign the proper placement attribute values for "SLA" to your service catalog entries, according to the service levels they require.
  5. Add the placement attribute to the service request form in the Form Designer, using the Custom/Placement Attribute form element.
  6. See Enabling requesters to specify placement requirements for new services.

Creating placement attributes

Access through:

Configuration menu > Service Request Configuration > Intelligent Placement tab

Available to:

vCommander Role of Superuser and Enterprise Admin

To create a placement attribute:

  1. On the Intelligent Placement tab, click Add.
  2. In the Configure Placement Attribute dialog, enter a name (128 character limit) for the new attribute.
  3. In the Description field, enter descriptive text for the attribute.

    This description is optional. However, if you use this field, the details that you enter here are displayed when a user selects an attribute.

  4. Select the attribute type.
    • List allows you to define values that users can select from a drop-down menu. If you select this type, skip to Step 7.
    • Sublist allows you to define allowed values for each value of another custom attribute. See also Creating relationships between custom attributes for complete information on sublist attributes.

      Unlike custom attributes, placement attributes don't support the Text type.

  5. If you selected Sublist in the previous step, the Sublist Of drop-down menu appears. Select the placement attribute that will act as the parent attribute. See also Creating relationships between custom attributes.
  6. If you selected List in Step 5, from the Applies To menu, keep the default selection, All Types, which allows you to:
    • apply values to service catalog entries and destinations
    • add the placement attribute to request forms through the Custom/Placement Attribute form element. In this case, selected values are applied to deployed services.
  7. To allow a Service Portal user to change the value of the attribute, enable Edit in Service Portal.

    Service Portal users can change the value only if their Service Portal role has the required permission.

  8. On the Configure Attribute page, choose one of:
    1. Fixed Requirement to create a placement attribute that's either required or not required. Backup and PCI compliance are good examples of fixed requirement capabilities.
    2. Selectable Values to create a placement attribute with one or more values that you specify. For example, you can create a placement attribute called Licensing with a single value, Oracle. Or, you can create a placement attribute called Deployment Environment, with values Private Cloud and Public Cloud.
  9. If you chose Selectable Values in the previous step, configure the allowed values.

    List Type

    Sublist Type

    1. Enter a comma-separated list of allowed values for the attribute and click Add. The maximum number of characters for each value is 100.
    2. or

      Enter each value separately and click Add.

    3. Use the Move Up and Move Down buttons to arrange the allowed values.
    4. Click Finish.
    1. For each value of the parent attribute, enter a comma-separated list of allowed values for the sublist attribute.
    2. Click a value in the list and enter values in the text field, then click Add.
    3. Click another value in the list and enter values for it, and click Add.

      You can also use the Move Up and Move Down buttons to arrange the allowed values in the tree.

    4. Click Finish.

What's next? Add placement attribute values to deployment destinations and published services, as described in the following sections.

Placement attributes can be managed from two locations:

  • Configuration menu > Service Request Configuration > Intelligent Placement tab. This view also shows the number of destinations and services referencing each placement attribute.
  • Configuration menu > Custom Attributes page. A value of Yes in the Placement column indicates a placement attribute.

Identifying the placement capabilities of a deployment destination

Access through:

Configuration menu > Service Request Configuration > Provisioning Configuration tab > Automatic Deployment Placement pane

Available to:

vCommander Role of Superuser and Enterprise Admin

Administrator and All Operator Levels of Access Rights

When you assign a placement attribute value to a deployment destination, you're identifying the capabilities of that destination, to help ensure that services are deployed to the best destination.

To assign placement attribute values to a deployment destination:

  1. Select a destination in the Destinations tree and click Edit.
  2. On the Intelligent Placement page of the wizard, click Edit Placement Attributes.
  3. In the Edit Placement Attributes dialog, in the Not Provided pane, select an attribute value that's provided by this destination and click Add to move it to the Provided pane.
  4. Click OK to close the Edit Placement Attributes dialog.
  5. Click Next and then Finish to apply your changes.

Identifying the placement requirements for a published service

Access through:

Configuration menu > Service Request Configuration > Service Catalog tab

Available to:

vCommander Role of Superuser and Enterprise Admin

When you assign a placement attribute value to a published service, you're identifying the requirements of that published service, to help ensure that services are deployed to the best destination.

To assign placement attribute values to a published service:

  1. Locate a service in the service catalog and click Edit.
  2. On the Intelligent Placement page, click Edit Placement Attributes.
  3. In the Edit Placement Attributes dialog, in the Not Required pane, select an attribute value that's provided by this destination and click Add to move it to the Required pane.
  4. Click OK to close the Edit Placement Attributes dialog.
  5. For a placement attribute with selectable values, use the Up and Down arrow buttons to order the attribute values by preference.
  6. For example, if you prefer to deploy a service in a private cloud but you're willing to deploy the service in a public cloud if the requester has insufficient quota in a private cloud, make sure Private Cloud appears first in the list.

  7. Click Finish to apply your changes.

Enabling requesters to specify placement requirements for new services

Access through:

Configuration menu > Service Request Configuration > Form Designer tab

Available to:

vCommander Role of Superuser and Enterprise Admin

If your users require input in placement decisions, you can enable users to select values for placement attributes when requesting a service.

Notes:

  • You can also enable users to select a destination by adding the Destination form element to the request form.
  • Placement attributes are service-level attributes and must be added to service-level forms. Placement attributes can't be added to blueprint forms. Because service-level forms are assigned to users, adding a placement attribute to a form means that it is displayed whenever a user requests any service.

To add a placement attribute to a service request form:

  1. In the Form Designer, select a form in the Service Forms list.
  2. The form's elements appear in the center pane.

  3. In the Toolbox, click Custom/Placement Attribute.
  4. The Custom/Placement Attribute form element is added to the form.

  5. Select a placement attribute from the Custom/Placement Attribute drop-down list.
  6. The (Placement) suffix is used to distinguish placement attributes from custom attributes.

  7. If you want this to be a mandatory selection, enable Required.
  8. Click OK.

Deleting placement attributes

Access through:

Configuration menu > Service Request Configuration > Intelligent Placement tab

Available to:

vCommander Role of Superuser and Enterprise Admin

Before you delete a placement attribute, it's a good idea to check what services and destinations refer to it. Select a placement attribute to view its details on the right; all services and destinations that refer to it are listed in the Details pane.

To delete a placement attribute:

  1. On the Intelligent Placement tab, select a placement attribute in the list and click Delete.
  2. Click OK to confirm the deletion.
  3. If values for this placement attribute were added to a published service or a deployment destination, these references are removed when you delete the placement attribute.

Changing a custom attribute into a placement attribute

Access through:

Configuration menu > Custom Attributes

Available to:

vCommander Role of Superuser and Enterprise Admin

You can change any list-type custom attribute into a placement attribute, so that it can be used for Intelligent Placement. All of the attribute's sublist attributes are also changed into placement attributes.

To change a custom attribute into a placement attribute:

  1. On the Custom Attributes page, locate the custom attribute.
  2. If an attribute isn't currently used for placement, the value in the Placement column is No.

  3. Select the attribute and click Edit.
  4. On the Define Attribute page, enable the Placement Attribute option.
  5. Click Next and Finish.

Changing a placement attribute into a regular custom attribute

Access through:

Configuration menu > Service Request Configuration > Intelligent Placement tab

Available to:

vCommander Role of Superuser and Enterprise Admin

If you no longer want to use a placement attribute for Intelligent Placement, but you want to keep it as a custom attribute, you can edit it.  All of the attribute's sublist attributes are also changed into custom attributes.

To change a placement attribute into a custom attribute:

  1. On the Intelligent Placement page, select the attribute and click Edit.
  2. On the Define Attribute page, disable the Placement Attribute option.
  3. Click Next and Finish.