Pluggable modules

Configure and use OneFuse Pluggable Modules with the OneFuse XUI

To learn more about this OneFuse feature, refer to Pluggable modules.

Prerequisites

  1. Configure OneFuse Property Set(s) and OneFuse Module Policies.
  2. Install OneFuse XUI per CloudBolt CMP.
  3. Review an overview on OneFuse Modules with CloudBolt CMP.
  4. Create a new Blueprint (if none exist) or determine which existing Blueprint(s) will utilize this OneFuse Module. Resource: Blueprints.

Configure the Blueprint

  1. Know the name of the OneFuse Connection Info created via OneFuse XUI initial setup.
  2. Determine which OneFuse Pluggable Module Policies to run for this Blueprint.
  3. Determine when to run each OneFuse Pluggable Module Policy for the deployment provisioning lifecycle with CMP’s Trigger Points.
  4. Update the Blueprint to add in necessary parameters to invoke OneFuse Pluggable Module Policies.
  5. Deploy the Blueprint to provision a deployment and run provisioning scenarios for the Pluggable Module Policy.
  6. Destroy the Deployment to run deprovision scenarios for the Pluggable Module Policy, if any.

Update the Blueprint

  1. Log in to CloudBolt CMP.
  2. If not already on the Catalog page, select Catalog from the main menu.
  3. Search and find the desired CloudBolt Blueprint.
  4. Edit the Blueprint by selecting the cog icon on the bottom-right of the Catalog Item.

Add in necessary Parameters

The following Parameters need to exist on the Blueprint.

Learn more about CloudBolt Parameters for: Blueprints, Environments, and Groups.

Call a Pluggable Module Policy:

Parameter Name Format Parameter Value Format
OneFuse_PluggableModulePolicy_<ExecutionString>_<CustomID> <OneFuse Connection Info Name>:<Pluggable Module Policy Name>

Where:

  • Replace <ExecutionString> with an appropriate Trigger Point state
  • Replace <CustomID> with a unique, user-defined friendly label

Example Parameter:

# Example CustomID

Apache
BackupClient
WebApp
Pluggable Module Trigger Point States

ExecutionString refers to a specific Trigger Point for the OneFuse Module’s policy to execute on.

Replace the <ExecutionString> variable with one of the following values in the Trigger Point Execution String column:

Job / Process Trigger Point Name Trigger Point Execution String Run Sequence Plugin Action Name
Provision Server Generated Hostname Overwrite HostnameOverwrite 1015 OneFuse - Provision Pluggable Module
Provision Server Pre-Create Resource PreCreateResource 1015 OneFuse - Provision Pluggable Module
Provision Server Pre-Application Installation PreApplication 1015 OneFuse - Provision Pluggable Module
Provision Server Post-Provision PostProvision 1015 OneFuse - Provision Pluggable Module
Delete Server Post-Delete - 20 OneFuse - De-Provision Pluggable Module
CustomID

CustomID refers to a user specified text string to identify and can set an order of precedence for execution when calling multiple Policies for the OneFuse Module in the same Trigger Point.

Replace the <CustomID> variable with a unique custom identifier:

  • Format is alphanumeric characters only A-Z, a-z, 0-9. No spaces, underscores, hyphens, nor special characters.
  • Must be unique across all Trigger Point Execution Strings for the OneFuse Module on the specific resource for the Blueprint.
  • Is reusable either between different VM components of the same Blueprint or between different Blueprints.
# Example CustomID

Apache
BackupClient
WebApp

Specify sorting with CustomID:

When executing multiple different OneFuse Module’s Policies in the same Trigger Point, prefix the <CustomID> with a numeric value (for example, 001, 002, etc.).

The <CustomID> is sorted prior to executing the OneFuse module’s policies.

# Example CustomID with sorting

001Apache
002WebApp
003BackupClient
Additional helpful properties passed to OneFuse Module

Purpose: Relate OneFuse Policy executions from different OneFuse Modules together with a Tracking ID.

Property and Parameter Value Format
OneFuse_Tracking_Id A GUID (globally unique identifier) that links OneFuse Policy Executions and the resulting Managed Objects together for a given resource on a deployment. The first OneFuse Module Policy execution will populate this Parameter and it will be passed into other OneFuse Modules automatically. Learn more about OneFuse Tracking ID.

Purpose: Reference a specific NIC’s values to get hostname, IP Address, etc.

Property Format Example
OneFuse_VmNic<#>.<value> See examples below

Replace <#> with a number from 0 to 9, one for each NIC.

Replace <value> with an appropriate key: assignment, dnsServers, dnsSuffix, fqdn, gateway, hostname, ipAddress, label, mac, network, nicLabel, target

Examples:

  • OneFuse_VmNic0.dnsSuffix
  • OneFuse_VmNic0.fqdn
  • OneFuse_VmNic0.hostname
  • OneFuse_VmNic0.ipAddress
  • OneFuse_VmNic0.target: when DNS Suffix is provided, will be the FQDN; otherwise, will be the hostname (without domain).

Purpose: Reference VM hardware information: cpu, memory, etc.

Property Format Example
OneFuse_VmHardware.<value> See examples below

Replace <value> with an appropriate key: cpuCount, memoryGB, memoryMB, platformUuid, powerState, totalStorageGB

Examples:

  • OneFuse_VmHardware.cpuCount
  • OneFuse_VmHardware.memoryGB
  • OneFuse_VmHardware.platformUuid
  • OneFuse_VmHardware.powerState
  • OneFuse_VmHardware.totalStorageGB

Provision

Deploy a Blueprint with OneFuse Pluggable Module module configured. Pluggable Module’s provisioning scenarios will run.

Outputs

The following parameter will have the generated OneFuse Pluggable Module Managed Object as a JSON string on the resource.

Parameter Name Parameter Value Format
OneFuse_PluggableModule_<CustomID> JSON string of OneFuse Pluggable Module Managed Object

Deprovision

Destroy an existing resource with OneFuse Pluggable Module Policy configured. The Pluggable Module Policy’s deprovisioning scenarios (if any) will run.

Trigger Points

Job / Process Trigger Point Name Trigger Point Execution String Run Sequence Plugin Action Name
Provision Server Generated Hostname Overwrite HostnameOverwrite 1015 OneFuse - Provision Pluggable Module
Provision Server Pre-Create Resource PreCreateResource 1015 OneFuse - Provision Pluggable Module
Provision Server Pre-Application Installation PreApplication 1015 OneFuse - Provision Pluggable Module
Provision Server Post-Provision PostProvision 1015 OneFuse - Provision Pluggable Module
Delete Server Post-Delete - 20 OneFuse - De-Provision Pluggable Module