Skip to main content

OpenNebula

Visualize your OpenNebula infrastructure in JupiterOne — accounts, clusters, physical hypervisor hosts, and virtual machines — map hosts to the workloads they run, and monitor changes through queries and alerts.

Installation

This integration connects to an OpenNebula deployment through its XML-RPC API and ingests clusters, hosts (physical hypervisor nodes), and virtual machines. It is a collector-based integration. Every method is sent as an XML-RPC request to the single /RPC2 path on the OpenNebula endpoint (default port 2633), over either http:// or https://.

Configuration in OpenNebula

Before configuring the integration in JupiterOne, prepare the following in OpenNebula:

  • The XML-RPC endpoint URL of your OpenNebula deployment, reachable from the JupiterOne collector (for example, http://opennebula:2633/RPC2). The /RPC2 suffix is optional and may be omitted.

  • A user for the integration to authenticate as. OpenNebula authenticates XML-RPC calls with a session string of the form username:password, the same format used by the ONE_AUTH file, so no API key or token is required.

  • Read access for that user to the resources you want ingested:

    • one.clusterpool.info requires CLUSTER:USE (* CLUSTER:USE #*).
    • one.hostpool.info requires HOST:USE (* HOST:USE #*).
    • one.vmpool.infoextended requires admin, or a VM:USE ACL over all VMs (* VM:USE #*).

    The simplest setup is a dedicated read-only service user in the oneadmin group.

  • If the endpoint presents a self-signed or internal-CA TLS certificate over HTTPS, obtain the CA certificate (in PEM format) so the collector can verify the connection.

Once you have obtained the information above, proceed to JupiterOne to finalize the integration.

Configuration in JupiterOne

To install the OpenNebula integration in JupiterOne, navigate to the Integrations tab in JupiterOne and select OpenNebula. Click New Instance to begin configuring your integration.

Creating an instance requires the following:

  • The Account Name used to identify the OpenNebula account in JupiterOne. Ingested entities will have this value stored in tag.AccountName when the AccountName toggle is enabled.

  • Description to assist in identifying the integration instance, if desired.

  • Polling Interval that you feel is sufficient for your monitoring needs. You may leave this as DISABLED and manually execute the integration.

  • Your OpenNebula Endpoint URL, Username, and Password.

  • Optionally, enable Include Stopped VMs to also ingest virtual machines in the stopped, suspended, done, poweroff, and undeployed states. This is disabled by default.

  • Optionally, a CA Certificate to trust a self-signed or internal-CA certificate, or enable Disable TLS Verification to skip certificate validation (not recommended).

Click Create once all values are provided to finalize the integration.

Next steps

Now that your integration instance has been configured, it will begin running on the polling interval you provided, populating data within JupiterOne. Continue on to our Instance management guide to learn more about working with and editing integration instances.