Support Utilities (EE)¶
This feature is available only in OpenNebula Enterprise Edition.
OpenNebula provides customers with means to generate diagnostic bundles with all details necessary to handle the support cases. It covers:
- Gathering the configuration state of operating system and services on the Front-end and nodes.
- Inspecting OpenNebula configuration, the state and metadata of VMs, Hosts, Virtual Networks, etc.
- Dumping OpenNebula database.
- Scanning vCenter user permissions.
There are two specialized tools contained in the OpenNebula server package:
Generate Support Bundle¶
If there are no special requirements, the support diagnostic bundle can be generated just by running
onesupport on the Front-end without any extra parameters. The command must be running under privileged user (directly by
root or via
sudo). For example:
The command generates a diagnostic bundle archive and puts it into
/tmp/. The precise file location is shown at the end of the terminal output, e.g.:
Diagnostic archive: /tmp/onesupport.HNpsTCQSb.tar.xz
Please attach this file to the support ticket.
For most support issues it’s enough to provide just a limited support bundle with Front-end only specific information and without database dumps. The limited bundle can be generated by running:
sudo onesupport frontend nodb
The tool prints all actions, based on which you can decide if you want to provide such a bundle to the support team. Here’s an example of a full output:
$ sudo onesupport ___ _ __ ___ / _ \| '_ \ / _ \ | (_) | | | | __/ OpenNebula Support Tool \___/|_| |_|\___| ------------------------------------------------------ Group: all - with conf: true - with logs: true - with DB: true Get OS distribution Get current user Get user "oneadmin" Get installed packages Get kernel version Get security settings Get memory/swap Get Ruby version and Gems Get CPU information Get system services Get process list Get kernel runtime parameters (sysctl) Get mounts Detect web server Get OpenNebula version Get OpenNebula running processes Detect changes in OpenNebula packages Get OpenNebula database information Get OpenNebula hosts Get OpenNebula logs Get system logs Dump OpenNebula database Get OpenNebula configuration Get OpenNebula remotes Dump OpenNebula objects - hosts - vnets - datastores - clusters - images - templates - ACLs - VDCs - OneFlow templates Dump OpenNebula instance objects - VMs - OneFlow instances Get web server configuration Inspecting the OpenNebula hosts - KVM host localhost (oneadmin with oneadmin's key) [localhost] Get OS distribution [localhost] Get current user [localhost] Get user "oneadmin" [localhost] Get installed packages [localhost] Get kernel version [localhost] Get security settings [localhost] Get memory/swap [localhost] Get Ruby version and Gems [localhost] Get CPU information [localhost] Get system services [localhost] Get process list [localhost] Get kernel runtime parameters (sysctl) [localhost] Get mounts [localhost] Get IP/bridge runtime config. [localhost] Get firewall config [localhost] Get Open vSwitch runtime config. [localhost] Detect libvirt [localhost] Get libvirt domains list [localhost] Get libvirt domains XML and screenshots [localhost] Get libvirt configuration [localhost] Get system logs Diagnostic archive: /tmp/onesupport.HNpsTCQSb.tar.xz
The purpose of the
onesupport tool is to gather as much information as possible about the environment so that OpenNebula’s customer care can give more accurate and faster responses. The usage is very simple and there are only a few configuration options. There are brief descriptions of all of them available via argument
sudo onesupport --help onesupport [host types] [dump types] Host types: all ... start on frontend and inspect all hosts (default) frontend ... gather only frontend specific data host ... gather only KVM host specific data Dump types: nodb, db ... (don't) dump database (ONE) noconf, conf ... (don't) dump configuration (ONE, libvirt, Apache/NGINX) nologs, logs ... (don't) dump logs (ONE and system logs)
There are two types of arguments to specify:
- host type
- dump type
What data is gathered depends mainly on the type of host we are running the tool on. Each host type gets the same common data (operating system, hardware, memory, installed software packages, system services, mounts, logs etc.) and differs only in data specific to the type.
Available options are:
||OpenNebula Front-end services configuration and state, database dump, various entities (e.g., VMs).|
||Hypervisor services (libvirt, KVM) and network configuration.|
Simple run gathers all information (runs are equivalent):
sudo onesupport sudo onesupport all
Get only Front-end specific data (must run on Front-end):
sudo onesupport frontend
Get only host-specific data (must run on hypervizor Node):
sudo onesupport host
The level of detail contained in the gathered data can be adjusted by dump type parameters. The following types are supported:
||Enable/disable database dumps.|
||Enable/disable bundling of configuration files.|
||Enable/disable bundling of logs.|
All dump types are enabled by default (
db conf logs), but can be selectively disabled with negative options
If positive dump types (
logs) are used on the command line, only the specified types are gathered and no other ones.
If negative dump types (
nologs) are used, these types are excluded from the support bundle. All the remaining types are included.
A simple run gathers all information (these runs are equivalent):
sudo onesupport sudo onesupport db conf logs
Get support bundle without any database dumps and logs:
sudo onesupport nodb nologs
Get support bundle with database dump, but no logs and configurations:
sudo onesupport db
Dump types and host types parameters can be combined
sudo onesupport frontend nodb
Scan vCenter Permissions¶
When you are using OpenNebula cloud to manage vCenter infrastructure, it might also be necessary to know details about the permissions configuration inside vCenter. This is automatically retrieved during the support bundle preparation but can be scanned separately at any time (e.g., in case the automatic run fails).
The dedicated tool
onesupport_vcenter_privs is used to gather permissions configuration.
The tool connects directly to your vCenter instance and must be provided with connection parameters.
onesupport_vcenter_privs Usage: onesupport_vcenter_privs [arguments] Mandatory arguments: --host=name .... vCenter hostname --user=name .... vCenter login user name --password=text .... vCenter password --check-user=name .... vCenter user for OpenNebula to check
onesupport_vcenter_privs --host=vcenter.localdomain \ --firstname.lastname@example.org --password=TopSecretPassword \ --email@example.com
The result is printed on the terminal (standard output). It can be redirected to the file or just copied and pasted in the support ticket.