ServiceNow CMDB
5 minute read
To learn more about this OneFuse module, refer to ServiceNow CMDB.
Prerequisites
- Configure OneFuse Property Set(s) and OneFuse Module Policies.
- Run OneFuse Configuration per Cloud Assembly Organization.
- Review an overview on OneFuse Modules with Aria Automation 8.1+/Cloud.
- Create a new Cloud Template (if none exist) or determine which existing Cloud Template(s) will utilize this OneFuse Module.
Steps
- Know the name of the OneFuse Endpoint created via OneFuse Configuration.
- Determine which OneFuse ServiceNow CMDB Policies to run for this Cloud Template.
- Update the Cloud Template to add in necessary vRA Properties and/or add in the Custom Resource to invoke OneFuse ServiceNow CMDB Policies.
- Deploy the Cloud Template to provision a vRA Deployment and create ServiceNow CMDB Configuration Item(s) and run the Provision IRE Template.
- Performing specific Day2 actions on the vRA Deployment will update the ServiceNow CMDB CI(s) accordingly and run the Update IRE Template.
- Destroy the vRA Deployment to update the ServiceNow CMDB CI(s) with the specified deprovision status and IRE Template.
Update the Cloud Template
- Log in to vRA > Cloud Assembly
- Select the Design tab from the top menu bar
- Select the Cloud Templates tab from the left menu
- Edit the Cloud Template and perform the below:
Option 1: add in necessary vRA properties
The following vRA Properties need to be added to the Cloud Template’s Code section under the Resource(s) of interest.
| Property Name Format | Property Value Format |
|---|---|
| Call a ServiceNow CMDB Policy | |
OneFuse_ServiceNowCmdbPolicy (Required vRA Property for ServiceNow CMDB) |
'<OneFuse Endpoint Name>:<ServiceNow CMDB Policy Name>' |
| Optionally, call additional ServiceNow CMDB Policies | |
OneFuse_ServiceNowCmdbPolicy_<CustomID>: Replace <CustomID> with a unique, user-defined friendly label. |
'<OneFuse Endpoint Name>:<ServiceNow CMDB Policy Name>' |
Example YAML:
# -- Property Name
# <CustomID> is replaced with 001Apache
# -- Property Value
# <OneFuse Endpoint Name> is onefuse
# <ServiceNow CMDB Policy Name> is prod and linux_Apache
name: Simple Example
resources:
Cloud_Machine_1:
type: Cloud.Machine
properties:
image: CentOS7
flavor: small
count: 1
OneFuse_ServiceNowCmdbPolicy: 'onefuse:prod'
OneFuse_ServiceNowCmdbPolicy_001Apache: 'onefuse:linux_Apache'
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 vRA EBS State.
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 EBS Execution Strings for the OneFuse Module on the specific VM for the Blueprint/Cloud Template.
- Is reusable either between different VM components of the Blueprint/Cloud Template canvas or between different Blueprints/Cloud Templates.
# -- Property Name
# <CustomID> is replaced with 001Apache
# -- Property Value
# <OneFuse Endpoint Name> is onefuse
# <ServiceNow CMDB Policy Name> is prod and linux_Apache
name: Simple Example
resources:
Cloud_Machine_1:
type: Cloud.Machine
properties:
image: CentOS7
flavor: small
count: 1
OneFuse_ServiceNowCmdbPolicy: 'onefuse:prod'
OneFuse_ServiceNowCmdbPolicy_001Apache: 'onefuse:linux_Apache'
Specify sorting with CustomID:
When executing multiple different OneFuse Module’s Policies in the same EBS State, prefix the <CustomID> with a numeric value (for example, 001, 002, etc).
The <CustomID> is sorted prior to executing the OneFuse module’s policies.
# -- Property Value
# <OneFuse Endpoint Name> is onefuse
# <ServiceNow CMDB Policy Name> is prod
# <Name> is the Hostname
formatVersion: 1
inputs: {}
resources:
Custom_onefuse_servicenowcmdb:
type: Custom.onefuse.servicenowcmdb
properties:
name: {{ OneFuse_VmNic0.hostname }}
policyName: 'prod'
endpointName: 'onefuse'
Option 2: Add in Custom Resource for OneFuse ServiceNow CMDB
Review OneFuse custom resources before using this method.
- From the Resource Types navigation, expand Custom Resources
- Drag-and-drop
OneFuse:ServiceNowCMDB_v1to the canvas - In the Code tab, provide values for the following properties:
| Parameter Name | Required? | Notes |
|---|---|---|
endpointName |
Required | OneFuse Endpoint Name in vRA. Refer to Managing endpoints. |
policyName |
Required | OneFuse Module Policy Name (string). |
templateProperties |
Optional | Additional properties that are referenced within the Policy. JSON format. |
trackingId |
Optional | Tracking ID (string) to link multiple OneFuse Policy Executions and resulting OneFuse Managed Objects together. If none is passed, one gets generated by OneFuse for that specific Policy Execution. |
Provision
Deploy a Cloud Template with OneFuse ServiceNow CMDB Policy configured. ServiceNow CMDB CI(s) will be created in ServiceNow.
Outputs
The following vRA Property will have the generated OneFuse ServiceNow CMDB Managed Object as a JSON string on the Deployment.
| Property Name | Property Value Format |
|---|---|
OneFuse_ServiceNowCmdb |
JSON string of OneFuse ServiceNow CMDB Managed Object |
OneFuse_ServiceNowCmdb_<CustomID> (if additional ServiceNow CMDB Policies) |
JSON string of OneFuse ServiceNow CMDB Managed Object |
Deprovision
Destroy an existing deployment with OneFuse ServiceNow CMDB Policy configured. ServiceNow CMDB CI(s) will be updated with the specified deprovision status in ServiceNow.
vRA EBS
| EBS Execution | Subscription State | EBS Priority | EBS Name |
|---|---|---|---|
| Provision | |||
| ComputeProvisionPost | Early | 1600 | OneFuse_Provision_ServiceNow_CMDB |
| Day2 | |||
| DeploymentResourceActionPost | - | 1100 | OneFuse_Update_ServiceNow_CMDB |
| Deprovision | |||
| ComputePostRemoval | - | 1100 | OneFuse_De-Provision_ServiceNow_CMDB |
Troubleshooting
Troubleshoot in vRealize Orchestrator.
- Log in to vRealize Orchestrator.
- Turn on Verbose Logging and try again to see additional log messages in vRO Workflows:
- Select Library > Workflows from the left menu
- Go to: OneFuse > ServiceNow CMDB > vRA8 to find corresponding workflow runs and view logs
- Optionally, run the workflows in the Manual folder to manually test
- Optionally, configure timeouts for EBS and/or Configure timeouts for OneFuse modules.
Additional resources:
- Review Troubleshooting in OneFuse
- Review VMware troubleshooting resources