Virtual Machine Blueprint Reference

Virtual Machine Blueprint Reference

Overview


Virtual Machine Blueprints are a collection of predefined resources that can be published as a service catalog item (App Store) and consumed by entitled users to provision Virtual Machines in a repeatable and IT approved process. These Blueprints can provision to any Public or Private cloud that has a resource pool defined via a supported cloud provider. Blueprints can be created by selecting New from the Services > VMs tab or by using the Automated provisioning wizard.

Create a Machine Compose Blueprint


Prerequisites: Create Encrypted Account Credentials to be used by HCP Portal for Provisioning

HyperCloud™ Platform (HCP) utilizes accounts with administrative privileges during the provisioning process. Accounts such as root, admin, administrator or specific service accounts used for administering the VMS. These credentials are defined in the YML code for each blueprint. HCP provides a secure way to use these credentials by encrypting them and storing them in the credential store. These credentials can be called out using an ID assigned by HCP. See [HCP] Credential Store Management for more information on using the HCP Portal Credential Store.

To create a new Virtual Machine Blueprint:

  1. Login to your HCP account.

  2. Navigate to the Service Orchestration menu and select App Store

  3. Click on the New button and select Machine Compose.

Name:  A unique name for your Blueprint

Description: A detailed description of the Blueprint.  The text here will be displayed as a "mouse over" in the App Store.

Blueprint Type:  Make sure VM is selected. The supported Blueprint Types are VM & Kubernetes.

YAML:  This is the actual machine blueprint allowing administrators to manage “infrastructure as code.”

 

The supported parameters for the Machine Compose blueprint YAML:

Property Name

Description

Property Name

Description

description

Description of the blueprint/template (Optional)

region

Public Cloud Region or On-Prem Virtual Datacenter

instanceType

Cloud provider specific value defining the resources for the VM

group

Prefix used for generating the VM hostname

securityGroup

Public Cloud Provider security group to be assigned to the VM after deployment

resourceGroup

Azure Resource Group (Azure Only)

keypair

A keypair defined in the Credential Store

storageAccount

Cloud Provider storage account or on-prem datastore to deploy the VM to.

image

Cloud Provider /  Customer defined image name or on-prem template to be used for provisioning a new VM

username

This the username used to connect to the VM to install the HCP Agent

password

References a private key stored in the HCP Credentials store. 
    Format: “{{credentials | 2c91802a520736224015209a6393098322}}”

network

Networkto deploy VM to

subnet 

IP Subnet of above Network

dataCenter

vSphere Datacenter (vSphere Only)

affinity

this is a Boolean value to enable High Availability option in Azure and Hyper-V(e.g. true or false)

openPorts

(comma separated) Ports to open to the VM

assign floating IP

(true or false) Assigns a public IP

publicIPSku

(basic or standard)

skipAgentInstall

this is a Boolean value to indicate whether or not an agent should be installed as part of the VM provisioning workflow

count

Total no of VM’s, defaults to 1

terminationProtection

“ENABLED”/"DISABLED" This defines whether or not an approval process is required to terminate a VM.  If enabled, a VM cannot be destroyed without proper approval.

timeZone

in the format of tz database: America/Los_Angeles

YAML definition of a CentOS VM for Microsoft Azure


  • Resource Pool — Entitled HCP Resource Pool to provision the VM(s) to.

  • Customizable Parameters — these are the parameters that can be exposed by the blueprint author allowing entitled blueprint consumers to override these parameters at provisioning (e.g. instance type or image).

  • Cost Profiles — these are the cost profiles that you can create under Services > Cost Profiles. You can define cost per resource on an hourly/weekly/monthly basis. You can attach multiple cost profiles to a single template — e.g. different cost profiles for the instance type, EBS storage used, etc.

  • Entitled Users — these are the users who are allowed to use this template to provision Virtual Machines. The entitled users do not have permission to manage or delete this template and will only be able to consume it.


Additionally, advanced configurations allow blueprint authors to manage blueprint visibility, license model and the image that best depicts this service in the App Store.

  • Version - The Version of the Blueprint.

  • External Link - Link to any additional documentation.

  • Image — this is the image that best depicts the service in the App Store (e.g. Microsoft SQL Server or Red Hat Enterprise Linux).

  • License Model — the two available options are “license included” and “bring your own license”. With license included, it is expected from the blueprint provider (or owner) to include the license in the VM blueprint published. With bring your own license, the blueprint consumer would need to provide the valid license key post-provision.

  • YAML Visibility – the blueprint author can indicate whether or not users entitled to this blueprint should have read-only access or no visibility at all.

© 2020 CloudSphere