Plans & Pricing

Overview

Service Plans determine the amount of compute resources available to each Instance. When provisioning new Instances from Morpheus, a plan is selected which determines the number of CPU cores, amount of memory and the amount of storage available to the associated machines. Additionally, when converting discovered instances in integrated clouds to Morpheus-managed Instances, the user selects a plan which best fits the instance as it is currently configured. When Instances are reconfigured, a new plan may be selected which redefines the compute resources which should be available to the Instance.

Plans can be as specific or open-ended as the user would like, restricting the user to the resources defined in the plan or allowing the user to increase those amounts at provision time. Price sets are associated with plans, which is how Morpheus can compute cost values even for Instances running in private, on-prem Clouds.

The Plans & Pricing section is where Plans, Prices Sets and Prices are managed. These concepts are associated with each other in the following way: Prices are added to Prices Sets, and Price Sets are added to Plans. Plans include Service Plans, Load Balancer Price Plans, Virtual Image Prices Plans and Snapshot Price Plans. Price sets can be agnostic and available for any Plan, or specific to a Region Code, Cloud or even a specific Resource Pool. Prices are configured per Price Type and can be added to Price Set configurations that support the Price Type. Master Tenant Prices can apply to all Tenants or be assigned to a single Tenant.

A set of Service Plans are seeded by Morpheus for private cloud provision types as well as some public clouds. Additional Plans and Prices are synced in for other public clouds when the corresponding cloud types are added to an appliance. Users can create new Service Plans or edit the system-seeded Service Plans for Private Cloud types. Service Plans configurations cannot be created or edited for Public Cloud provision types.

Plans

Plans types include Service Plans and Price Plans. Service Plans determine the memory, storage and cores configuration during provisioning and reconfigure.

Service Plans

A set of Service Plans are seeded by Morpheus for private cloud provision types as well as some public clouds. Additional Plans and Prices are synced in for other public clouds when the corresponding cloud types are added to an appliance. Users can create new Service Plans or edit the system-seeded Service Plans for Private Cloud types. Service Plans configurations cannot be created or edited for Public Cloud provision types.

Service Plan Configuration

Note

Not all fields listed below are available for every provision type. After selecting the provision type, the correct fields for that type of Service Plan will be revealed. Not all fields are required to save a valid Service Plan

  • NAME: The name of the Service Plan in Morpheus

  • ACTIVE: Inactive Service Plans are not available for selection during provisioning or reconfigure. New discovered records cannot be associated with deactivated Plans when converting to managed resources. Any resources attached to a Plan will continue to be associated if the Plan is later deactivated

  • CODE: A unique identifier for use in Morpheus API and CLI

  • DISPLAY ORDER: Configures the order in which plans are displayed relative to other plans associated with the same provision type. Note that Plans will be displayed in low-to-high order based on the Display Order property. This is reversed from Layouts which are displayed in high-to-low order

  • PROVISION TYPE: Determines the resource Provision Type this Service Plan is available for when provisioning, reconfiguring and converting discovered resources to managed

  • REGION CODE: (Optional) Limits availability of the Service Plan to Clouds with the specified Region Code

  • STORAGE: The default storage size of the root volume (in MB or GB)

  • CUSTOMIZE ROOT VOLUME: Allows the root volume size to be customized during provisioning or reconfigure. Custom Range limits, if set, will apply

  • CUSTOMIZE EXTRA VOLUMES: Allows the extra volume sizes to be customized during provisioning or reconfigure. Custom Range limits, if set, will apply

  • ADD VOLUMES: Allows additional volumes to be added during provisioning or reconfigure

  • MEMORY: The amount of memory included with the plan (in MB or GB)

  • CUSTOM MEMORY: Allows the amount of memory to be customized during provisioning or reconfigure. Custom Range limits, if set, will apply

  • CORE COUNT: The number of virtual CPU cores included with the plan

  • CUSTOM CORES: Allows the number of virtual CPU cores to be customized during provisioning or reconfigure. Custom Range limits, if set, will apply

  • CORES PER SOCKET: Determines core distribution across sockets. CORES PER SOCKET cannot be larger than CORE COUNT, and CORE COUNT must be divisible by CORES PER SOCKET. For example four CORES with two CORES PER SOCKET means two sockets would have two cores each assigned. Four CORES with one CORE PER SOCKET would have four sockets with one core each assigned, and four CORES with four CORES PER SOCKET would have one socket with four cores assigned

  • TOTAL STORAGE: When custom storage is enabled for the plan, this sets a minimum and maximum total storage allowed (all disks combined)

  • PER DISK SIZE: When custom storage is enabled for the plan, this sets the minimum and maximum storage for each disk

  • CUSTOM MEMORY RANGE: The minimum and maximum allowed amount of memory for the Plan when CUSTOM MEMORY is enabled for the Plan

  • CUSTOM CORES RANGE: The minimum and maximum allowed amount of virtual CPU cores for the Plan when CUSTOM CORES is enabled for the Plan

  • SOCKETS: The minimum and maximum allowed sockets range for the Plan when CUSTOM CORES is enabled for the Plan

  • CORES PER SOCKET: The minimum and maximum allowed cores per socket for the Plan when CUSTOM CORES is enabled for the Plan

  • PRICE SETS: In the Price Sets tab, associate Price Sets with the Plan. See Add Price Set(s) to Plan

Tip

Custom Range storage and memory values units (GB/MB) are inherited from the :STORAGE:: and :MEMORY:: GB/MB settings in the same Plan. For example, if :STORAGE: is configured for for 40 GB, a custom range for Storage would also be in GB.

Create Service Plan

Morpheus offers a few distinct types of service plans, each with different data fields to track and valid Price Set types which can be associated. For more on Service Plan configuration, see the preceding section.

Price Sets can be added to the Plan at creation time so often it makes sense to create the Prices and associate them with Price Sets before creating the Plan. Additional instructions for creating Prices and Price Sets are in the next section. With the Price Sets ready, continue with the instructions below to create Price Plans of various types.

  1. Navigate to Administration > Plans & Pricing (/admin/service-plans)

  2. Click the + ADD dropdown and select the appropriate Plan type

  3. Configure details for the Plan on the General tab, the configuration options will depend on the Plan type. See the section above for a detailed description of each configuration option available for Service Plans

  4. On the Price Sets tab, associate all relevant Price Sets with the Plan. The desired Price Sets must already exist. If needed, you may save the Plan at this point and come back to associate Price Sets later

  5. Click SAVE CHANGES

Add Price Set(s) to Plan

  1. Select a Price Unit to list available Price Sets which have the selected Price Unit. Available Price Sets are filtered to show only those which are relevant for the Plan type you’ve selected

  2. Select a Price Set from the list and click + ADD

  3. Add additional Price Sets if desired (multiple Price Sets can be associated with a Plan)

  4. Added Price sets can be removed from a Plan by clicking the 🗑 icon

  5. Once all Price Sets have been added, select SAVE CHANGES

Tip

The +ADD button must be clicked after selecting a Price Set or it will not be added to a Plan.

Service Plan Permissions

Group and Tenant Access permissions determine availability of a Service Plan.

  • Group Access determines what Groups the Service Plan will be available in for Provisioning and Reconfigure.

  • Group Access settings only apply to the Tenant they are configured in, as Groups are not multi-tenant.

  • For multi-tenant environments, the Master Tenant can set Tenant Permissions to determine if the Service Plan is available to all Tenants (public visibility) or assign the Service Plan to one or multiple Tenants.

Removing Plans

Plans can be removed by navigating to the Service Plans list page (Administration > Plans & Pricing > Plans), opening the ACTIONS menu for a Plan, and then selecting “Remove”. Removing a Plan makes it no longer visible, however, it does not hard delete the Plan as the record must remain for any existing associations’ usage and price tracking. Synced Plans should be deactivated rather than removed.


Load Balancer Price Plans

Load Balancer Price Plans configure pricing for Load Balancers and Load Balancer Virtual Servers.

Load Balancer Price Plan Configuration:

  • NAME: The name of the Load Balancer Price Plan in Morpheus

  • ACTIVE: When Active, Prices in Price Sets added to the Price Plan will apply to associated resources as configured

  • CODE: A unique identifier for use in Morpheus API and CLI

  • LOAD BALANCER TYPE: Select the load balancer type the Price Plan should be associated with

  • PRICE SETS: In the Price Sets tab, associate Price Sets with the Plan. Load Balancer Price Sets may be associated with Load Balancer-type and Load Balancer Virtual Server-type Prices. Fore more, see Add Price Set(s) to Plan

Virtual Image Price Plans

Virtual Image Price Plans configure pricing for Virtual Images. Pricing is associated per Price and Price Set configurations, but in general applies to Images with location records in the Price Plans specified Cloud type. Virtual Image Price Plans are for setting pricing for Virtual Image storage, not for adding pricing to resources that use Virtual Images associated with Virtual Image Price Plans. Virtual Image Price Plans do not apply to uploaded Virtual Images that have not been copied to a location in the specified Cloud type yet.

Virtual Image Price Plan Configuration:

  • NAME: The name of the Virtual Image Price Plan in Morpheus

  • ACTIVE: When Active, Prices in Price Sets added to the Price Plan will apply to associated resources as configured

  • CODE: A unique identifier for use in Morpheus API and CLI

  • CLOUD TYPE: Virtual Image Pricing applies to Virtual Images with location records in the specified Cloud type

  • PRICE SETS: In the Price Sets tab, associate Price Sets with the Plan. Virtual Image Price Sets may be associated with Storage-type Prices. Fore more, see Add Price Set(s) to Plan

Snapshot Price Plans

Snapshot Price Plan Configuration:

  • NAME: The name of the Snapshot Price Plan in Morpheus

  • ACTIVE: When Active, Prices in Price Sets added to the Price Plan will apply to associated resources as configured

  • CODE: A unique identifier for use in Morpheus API and CLI

  • CLOUD TYPE: Snapshot Pricing applies to Snapshots with location records in the specified Cloud type

  • PRICE SETS: In the Price Sets tab, associate Price Sets with the Plan. Snapshot Price Sets must have at least one Storage-type Price but may also have Datastore-type Prices. Fore more, see Add Price Set(s) to Plan

Price Sets

Price Sets combine Prices and then attach to Plans. Prices must be created prior to creating Price Sets, but it is recommended to review the Price Set Type options prior to creating Prices.

Price Unit

Select the Price Unit to use for the Price Set.

  • Minute

  • Hour

  • Day

  • Month

  • Year

  • Two Year

  • Three Year

  • Four Year

  • Five Year

Note

Only Prices configured with matching Price Units can be used in a Price Set. “Month” is equivalent to 30 days by default. For AWS, month is 30.5 days. For Azure, month is 30.4 days.

Type

Price Set types determine which Prices are available to make up the set. This selection will filter the values returned in the Prices field at the bottom of the modal.

Note

It’s helpful to make note of the Prices options below before creating Price Sets.

  • Everything: ‘Everything’ price sets require one or more ‘Everything’ price types and may include ‘Platform’ or ‘Software’ price types

  • Compute + Storage: ‘Compute + Storage’ price sets require at least one of each ‘Memory’, CPU’, and ‘Disk Only’ price types and may include ‘Platform’ or ‘Software’ price types

  • Component: ‘Component’ price sets require at least one of each ‘Memory’, ‘Cores’, ‘CPU’, and ‘Storage’ price types and may include ‘Platform’ or ‘Software’ price types

  • Load Balancer: ‘Load Balancer’ price sets require at least one ‘Load Balancer’ price type and may include ‘Load Balancer Virtual Server’ price types. Load Balancer price sets are the only type which can be associated with Load Balancer Price Plans

  • Virtual Image: ‘Virtual Image’ price sets require at least one ‘Storage’ price type. Virtual Image price sets are the only type which can be associated with Virtual Image Price plans

  • Snapshot: ‘Snapshot’ price sets require at least one ‘Storage’ price type and may also include ‘Datastore’ price types. Snapshot price sets are the only type which can be associated with Snapshot Price plans

  • Software/Service: ‘Software/Service’ Price Sets require at least one ‘Software/Service’ Price type

Apply Price Changes to Usage

If marked, when saving a Price Set (new Price Set or saving changes to an existing one), usage records will be restarted for servers affected by the pricing change.

Prices

Search for and select Prices to be added to the Price Set. One of each Price Type required for the Price Set Type selected must be added for the Price Set to save.

Prices

Details on various price configurations are given here. When creating prices, it’s also necessary to understand how they will be applied. Specifically, this relates to the INCUR CHARGES configuration. Charges can be incurred “While Running”, “While Stopped”, or “Always”. It typically makes the most sense to have running and stopped prices for a given type (Cores, for example) OR to have an “Always” price (but not both). This is because the prices do not stack and the higher of a competing “Always” or running/stopped price will take precedence. This can lead to confusion over which price was applied and how a final cost total was computed. You should decide in advance for a given price type for a price set whether you wish to charge an “Always” rate or charge separately for running/stopped states.

Price Types
  • Everything: One price for all resources Storage, CPU, Memory, and Disks

  • Memory + CPU

  • Memory Only (per MB)

  • Cores Only (per core)

  • Disk Only (per GB)

  • Platform: Select from Windows, Linux (generic), or one of several specific Linux distributions

  • Software/Service: Add prices for software licenses which may be included with your price sets

  • Datastore (per GB)

  • Load Balancer

  • Load Balancer Virtual Server

Price Units
  • Minute

  • Hour

  • Day

  • Month

  • Year

  • Two Year

  • Three Year

  • Four Year

  • Five Year

Currency
  • AED

  • ARS

  • AUD

  • BRL

  • BWP

  • CAD

  • CHF

  • CLF

  • CLP

  • DKK

  • EUR

  • GBP

  • IDR

  • ILS

  • JOD

  • JPY

  • KRW

  • MAD

  • MNT

  • MYR

  • MXN

  • NOK

  • NZD

  • PLN

  • ROL

  • RUB

  • SAR

  • SEK

  • SGD

  • THB

  • TRL

  • USD

  • USN

  • VND

  • XAF

  • XCD

  • XOF

  • XPF

  • ZAR (South African Rand)

Cost

The base cost of the resource(s). The Price will match the Cost unless a Price Adjustment is added.

Price Adjustment
  • None: Default, no markup added and Price will match Cost

  • Fixed Markup: A fixed amount added to the Cost. Price will equal Cost + Markup.

  • Percentage Markup: Adds a percentage markup to Cost. Price equals Cost + (Cost x Markup %)

  • Custom Price: Sets a Price independent from the Cost. If the Cost changes, a Custom Price will not.

Price

A computed value of the final price including the cost plus any applicable markup.

Apply Price Changes to Usage

If marked, when saving a Price Set (new Price Set or saving changes to an existing one), usage records will be restarted for servers affected by the pricing change.