The Zero-Touch Onboarding capability in the OpsRamp NextGen Gateway is designed to significantly simplify and accelerate the onboarding process for IT environments. This feature reduces the need for manual configurations and allows for rapid integration of customer infrastructure into the OpsRamp platform with minimal intervention.
Key Benefits:
- Automated Setup: Automatically creates necessary app credentials, discovery profiles, and third-party integrations upon deployment.
- YAML-Driven Configuration: Customers provide a single YAML configuration file, which the system uses to define onboarding behavior.
- Immediate Discovery & Monitoring: Once the Gateway is registered using Zero-Touch, OpsRamp begins discovering infrastructure components and initiating monitoring workflows instantly based on the YAML configuration and settings
- Consistency Across Environments: Ideal for both small-scale and enterprise-level environments, ensuring consistent configuration and faster time to value.
How It Works:
- Customers create a YAML file with parameters such as App configurations, credentials, scheduling settings, and discovery rules.
- The YAML file is passed to the
opsramp-collector-starttool during Gateway registration. - Upon successful execution:
- The Gateway is registered with OpsRamp SaaS.
- Discovery profiles and credentials are auto-generated.
- Infrastructure discovery begins immediately.
- Monitored resources are added to the appropriate collector profile.
For step-by-step installation and registration instructions, including how to use the Zero-Touch feature, refer to the Install Gateway Using OpsRamp Bootstrap Tool.
Note
Zero-Touch Onboarding is optional but highly recommended for customers seeking streamlined deployments, especially in large-scale or frequently changing environments.YAML Discovery Configuration
Before registering the Gateway to the OpsRamp Cloud, you must prepare a YAML configuration file that defines the onboarding parameters.
The following is a sample YAML file that illustrates the structure and key values required for Zero-Touch Onboarding:
discovery-config.yamlInfo/Recommendation
The Version 01 (V1) YAML configuration is deprecated and no longer supported. Users must use Version 02 for all new Gateway registrations and onboarding tasks.Sample YAML Definition File (Version 02)
The Version 02 (V2) YAML format is the latest configuration schema used for Gateway registration and onboarding. This version supports both Classic Applications and SDK 2.0-based Applications, offering enhanced capabilities for Zero-Touch Onboarding.
Key Enhancements in V2:
- Direct JSON Payload Support: Users can now include the full API JSON payload (as documented in the [OpsRamp Public API Documentation]) directly in the YAML file. There’s no need to manually convert JSON structures to YAML format.
- Improved Validation & Feedback: The onboarding tool provides clear error messages when issues are found in the discovery configuration, simplifying troubleshooting.
- Automation for SDK 2.0 Apps: V2 enables automatic installation and configuration of SDK 2.0 apps, streamlining the deployment process.
---
apiVersion: v2
discovery:
- classicApp:
- app: VMWare
config:
{
"credential":
{
"credentialType": "VMWARE",
"description": "VMWare Device Credentials",
"name": "VMWare Credentials",
"timeoutMs": 15000,
"secure": true,
"port": 443,
"userName": "test",
"password": "Pass@1234",
},
"tags":
{
"billing_id":"billing_metering"
},
"integration":
{
"displayName": "172.25.0.16",
"ipAddress": "172.25.0.16",
"credentialSet": "VMWare Credentials",
"discoveryProfiles": [
{
"name": "VMWare 172.25.0.16 Profile",
"scanNow": true,
"schedule": {
"patternType": "HOURLY",
"pattern": "1",
"startTime": "1:00:00"
},
"policy": {
"actions": [
{
"action": "MANAGE DEVICE"
}
],
"entityType": "any",
"matchType": "ANY",
"rules": [
{
"resourceType": []
},
],
},
}
],
},
}
- app: SNMP
config:
{
"credential":
{
"credentialType": "SNMP",
"name": "SNMP Credentials",
"description": "SNMP Device Credentials",
"transportType": "HTTP",
"timeoutMs": 15000,
"spSecure": false,
"port": 161,
"snmpVersion": "V2",
"community": "public",
},
"discoveryProfile":
{
"name": "TEST-SNMP-16-18-19",
"schedule": {
"patternType": "HOURLY",
"pattern": "1",
"startTime": "1:00:00"
},
"config": {
"deviceType": "SNMP Network Device",
"networkDepth": "1",
"discoveryType": "Iprange",
"credentials": [
"dfvTjvaZEkuxavqEmeZuxVz6"
],
"ipRange": "172.26.1.18, 172.26.1.19",
"snmpEnabledDevice": true,
"cdp": true,
"ospf": true,
"bgp": true,
"bridge": true,
"loadBalancer": false,
"revDnsLookUp": false,
"discoverVoipPhones": false,
"advOpt": false,
"tcpPort": "443",
"nmapResult": true,
"policy": {
"action": "MANAGE DEVICE"
}
},
"scheduleNone": false
}
}
- sdkApp:
- app: vmware-nsx-t
version: 10.0.0
configs:
- config: {
"credential":
{
"credentialType": "APPLICATION",
"userName": "test",
"password": "Pass@1234",
"name": "test-nsx-t",
"description": "test",
},
"name": "vmware_nsx_t_config1",
"schedule":
{
"patternType": "MINUTES",
"pattern": "20",
"startTime": "00:20:00",
},
"config": {
"port": "9092",
"isSecure": false,
"apiTimeOuts": false,
"alertSeverity": "[\"CRITICAL\",\"HIGH\",\"MEDIUM\",\"LOW\"]",
"socketTimeout": 10,
"connectionTimeout": 60,
"alertClearedStatus": "[\"ACKNOWLEDGED\",\"SUPPRESSED\",\"RESOLVED\"]",
"alertConfiguration": false,
"notificationAlerts": false,
"alertOnRootResource": true,
"alertSeverityMapping": "{\"CRITICAL\":\"Critical\",\"HIGH\":\"Warning\",\"MEDIUM\":\"Warning\",\"LOW\":\"Info\"}",
"connectionRequestTimeout": 10,
"ipAddress": "172.25.252.63",
"credential": "test-nsx-t",
},
"allResources": true,
}
- app: hpe-3par
version: 4.0.1
configs:
- config: {
"credential":
{
"credentialType": "APPLICATION",
"userName": "test",
"password": "Pass@1234",
"name": "hpe-3par",
"description": "test",
},
"name": "HPE 3PAR",
"schedule": {
"patternType": "HOURLY",
"pattern": "1",
"startTime": "1:00:00"
},
"config": {
"category": "[\"1\",\"2\"]",
"isSecure": false,
"alertSeverity": "[\"FATAL\",\"CRITICAL\",\"MAJOR\",\"MINOR\"]",
"notificationAlert": true,
"alertConfiguration": false,
"alertSeverityMapping": "{\"FATAL\":\"Critical\",\"CRITICAL\":\"Critical\",\"MAJOR\":\"Warning\",\"MINOR\":\"Warning\",\"DEGRADED\":\"Warning\",\"INFORMATIONAL\":\"Info\",\"DEBUG\":\"Info\",\"UNKNOWN\":\"Info\"}",
"IP Address": "172.25.252.63",
"Port": "9097",
"sshPort": "443",
"Credential": "hpe-3par"
},
"allResources": true
}How to Specify Discovery Configuration for Zero-Touch Onboarding
The OpsRamp Collector Bootstrap Tool is essential for performing Zero-Touch Onboarding of the NextGen Gateway. This tool simplifies the registration process by allowing you to pass pre-defined discovery configurations via a YAML file.
- Step 1: Download and install the OpsRamp Collector Bootstrap Tool by following the instructions in the Install Gateway Using OpsRamp Bootstrap Tool.
- Step 2: Prepare your discovery configuration YAML file according to your environment needs.
- Step 3: Use the Bootstrap Tool to register the Gateway with the OpsRamp cloud by specifying the YAML configuration file using the
--configflag.
Registration Syntax & Examples
- Register via Direct Connection (No Proxy)
opsramp-collector-start install --environment {Environment} --url {OpsRamp Server URL} --key {Gateway Authentication Token} --config {Path to YAML Config File} - Register through a Proxy without Authentication
opsramp-collector-start install --environment {Environment} --url {OpsRamp Server URL} --key {Gateway Authentication Token} --proxy-protocol {http|https} --proxy-ip {Proxy IP Address} --proxy-port {Proxy Port} --config {Path to YAML Config File} - Register through a Proxy with Authentication
Example Command:opsramp-collector-start install --environment {Environment} --url {OpsRamp Server URL} --key {Gateway Authentication Token} --proxy-protocol {http|https} --proxy-ip {Proxy IP Address} --proxy-port {Proxy Port} --proxy-username {Username} --proxy-password {Password} --config {Path to YAML Config File}opsramp-collector-start install --environment k8s --url gatewaytest.api.opsramp.net --key 06d49ab5-a589-44f2-a68b-ee35405d5701 --config discovery-config.yml