Support Utilities (EE)

OpenNebula provides customers with means to generate diagnostic bundles with all details necessary to handle the support cases. There are two specialized tools contained in the OpenNebula server package for this purpose:

  • OneGather: Generates an archive bundle with information about the OpenNebula instance, like configuration, database and hosts state.

  • OneSupport: Only for vCenter deployments, on top of bundles, it also allows to scan permissions used to interact with the vCenter cluster.

Important

This feature is available only in OpenNebula Enterprise Edition.

Generate Support Bundle

If there are no special requirements, the support diagnostic bundle can be generated just by running onegather on the frontend without any extra parameters. The command must be running under privileged user (directly by root or via sudo). For example:

Important

If you have a vCenter infra, in order to gather more information about vCenter, you need to use onesupport instead of onegather, for more information please check onesupport --help.

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 onegather

Important

If you are running your Front-end in a federation, OneGather will prompt you in the result section to run it on all other nodes.

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. If the support team asks you for a database dump, you can add it to the bundle archive with the --db flag:

sudo onegather --db

You can also provide a bundle with every piece of information with the --all flag:

$ sudo onegather --all
Getting: OS distribution.
Getting: OS logs.
Getting: OS journalctl log files.
Getting: Kernel version.
Getting: List of kernel modules.
Getting: Installed packages.
Getting: Security settings.
Getting: SELinux configuration.
Getting: AppArmor configuration.
Getting: System services.
Getting: CPU information.
Getting: Memory and Swap
Getting: Disk space for FE and nodes.
Getting: OS ENV vars.
Getting: List of open ports.
Getting: Current user.
Getting: Processes list.
Getting: Kernel runtime parameters.
Getting: List of mounts.
Getting: List of block devices.
Getting: Physical Volumes list.
Getting: Volume Group list.
Getting: Logical Volumes list
Getting: Federation configuration.
Getting: user "oneadmin"
Getting: Ruby version and Gems.
Detecting web server.
Getting: OpenNebula version.
Getting: OpenNebula logs.
Getting: Dump of OpenNebula database.
Getting: OpenNebula configuration.
Getting: OpenNebula remotes.
Getting: OneProvision GUI logs.
Error: source directory /var/lib/one/fireedge/provision does not exist
Getting: VM Templates.
Getting: VMS folder.
Getting: Dump of OpenNebula objects.
Inspecting OpenNebula hosts:
<-- Pinging host and gathering facts.
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.071 ms

--- localhost ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.071/0.071/0.071/0.000 ms
Getting: OS distribution.
Getting: OS logs.
Getting: OS journalctl log files.
Getting: Kernel version.
Getting: List of kernel modules.
Getting: Installed packages.
Getting: Security settings.
Getting: SELinux configuration.
Getting: AppArmor configuration.
Getting: System services.
Getting: CPU information.
Getting: Memory and Swap
Getting: Disk space for FE and nodes.
Getting: OS ENV vars.
Getting: List of open ports.
Getting: Current user.
Getting: Processes list.
Getting: Kernel runtime parameters.
Getting: List of mounts.
Getting: List of block devices.
Getting: Physical Volumes list.
Getting: Volume Group list.
Getting: Logical Volumes list
Getting: Federation configuration.
Getting: user "oneadmin"
Getting: Ruby version and Gems.
Getting: IP/bridge runtime config.
Getting: Firewall configuration.
Inspecting: libvirt.
Getting: libvirt configuration.
-> NOTICE: Fact gathering complete. Generating TAR bundle:

** Results **
-> Bundle: /tmp/d20230926-2610-1j3xs6i
-> Bundle TAR: /tmp/d20230926-2610-1j3xs6i.tar.xz
-> Bundle size is:
-> NOTICE: Bundle can be safely uploaded to Zendesk.
-> NOTICE: Front-end is in STANDALONE mode.

Note that with more information required for the bundle it will take longer to generate, and the size will be bigger. The database dump is especially time consuming and big. You can take a look at every option available with onegather --help.

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.

Important

The tool connects directly to your vCenter instance and must be provided with connection parameters.

Syntax:

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

Example run:

onesupport_vcenter_privs --host=vcenter.localdomain \
    --user=administrator@vsphere.local --password=TopSecretPassword \
    --check-user=oneadmin@vsphere.local

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.