VMmanager Cloud Documentation

Database structure


The article describes the MySQL database structure of VMmanager.

The default database name is "vmmgr". The id field in each table is the external key. Possible values for Boolean fields are "on" and "off".

Note

To apply settings after changing the database, restart the control panel with the command:

/usr/local/mgr5/sbin/mgrctl -m vmmgr exit

Users

user

User table.

See user description in ManagementUsers.

  • id — record ID;
  • name — login;
  • password — password hash;
  • enabled — status:
    • on — active user;
    • off — disabled user.
  • allowcreatevm — virtual machine creation option:
    • on — option enabled;
    • off — option disabled.
  • isolimitnum — limit on the number of ISO images. "0", unless specified;
  • isolimitsize — limit on the size of ISO images. "0", unless specified;
  • vm_limit — limit on the number of virtual machines.

totp

Data table for two-factor authentication.

Description of data see in SettingsUser settingsTwo-step authentication.

  • id — record ID;
  • user — user name;
  • login — user login;
  • secret — unique key for generating the temporary password.

Personal data management

core_gdpr_doc

Table of control panel conditions of use.

Description of conditions see in Personal data managementTerms of use.

  • id — record ID;
  • name — document name;
  • type — conditions type. Link to the core_gdpr_doc_type table:
    • 1 — confidentiality policy;
    • 2 — user agreement.
  • url — document link;
  • desc_conditions — description of the condition;
  • entry_date — date of entry in effect;
  • change_date — change date.
  • locale — localization:
    • ua — Ukrainian;
    • pt — Portuguese;
    • nl — Dutch;
    • en — English;
    • de — German;
    • ru — Russian.
  • need_agree — Required consent option:
    • on — option enabled;
    • off — option disabled.
  • show_after_auth — Show after authorization option:
    • on — option enabled;
    • off — option disabled.
  • show_in_warnings — Show in warnings option:
    • on — option enabled;
    • off — option disabled.
  • status — status:
    • 0 — Active;
    • 1 — Inactive.

    core_gdpr_doc_type

    Table of the types of conditions of use

    • id — record ID;
    • name — type of the conditions of use:
      • 1 — confidentiality policy;
      • 2 — user agreement.

      core_gdpr_journal

      Table of records in the log of agreements to the conditions of use.

      Description of records see in Personal data managementLog.

      • id — record ID.
      • action_object — action object. Link to the core_gdpr_doc table:
        • 1 — confidentiality policy;
        • 2 — user agreement.
      • username — user;
      • action_type — action. Link to the core_gdpr_doc table:
        • 0 — accept;
        • 1 — reject.
      • ip — the IP address from which the action was made;
      • action_date — action date.

      core_gdpr_processed_doc

      Table of the actual user's consents and rejections of the conditions of use.

      • id — record ID;
      • doc — document ID. Link to the core_gdpr_doc table;
      • username — user;
      • accepted — action:
        • on — accept;
        • off — reject.

        history_core_gdpr_doc

        Table of changes in the conditions of use

        Description of records see in Personal data managementTerms of useHistory button.

        • reference — ID of the conditions of use. Link to the core_gdpr_doc table;
        • username — user;
        • request_ip — IP address;
        • request_action — action which caused the change;
        • fromdate — time of the previous change;
        • changedate — time of change;
        • changedfields — list of changed fields;
        • name — previous document name;
        • name_new — document name;
        • type — previous type of the conditions of use;
        • type_new — type of the conditions of use;
        • url — previous document link;
        • url_new — document link;
        • desc_condition — previous description of the conditions of use;
        • desc_condition_new — description of the conditions of use;
        • entry_date — previous date of entry in effect;
        • entry_date_new — date of entry in effect;
        • change_date — previous change date;
        • change_date — change date;
        • locale — previous locale;
        • locale_new — locale;
        • need_agree — previous status of Required consent option;
        • need_agree_new — status of Required consent option;
        • show_after_auth — previous status of Show after authorization option;
        • show_after_auth_new — status of Show after authorization option;
        • show_in_warnings — previous status of Show in warnings option;
        • show_in_warnings_new — status of Show in warnings option;
        • status — previous status;
        • status_new — status.

        Virtual machines

        vm

        • id — record ID;
        • name — name;
        • name_idn — name in user's encoding;
        • hostnode — cluster node ID. Link to the hostnode table;
        • ip — main IPv4 address;
        • ip6 — main IPv6 address;
        • domain — domain;
        • domain_idn — domain in user's encoding;
        • mem — RAM;
        • vcpu — CPU count;
        • cputune — CPU weight;
        • vsize — main disk size;
        • user — virtual machine owner ID. Link to the user table;
        • vmi — operating system ID. Specified in the format "OS template repository + OS template name";
        • state — status:
          • running — running;
          • down — disabled.
        • osinstalled — OS installation flag:
          • on — OS installed;
          • off — OS not installed.
        • imported — virtual machine import flag:
          • on — the virtual machine has been imported;
          • off — the virtual machine has not been imported.
        • opkey — unique ID for service use;
        • crpassword — superuser password hash;
        • needrebootcount — needed reboots count;
        • needreboot — reboot needed flag:
          • on — reboot needed;
          • off — reboot no needed.
        • needrebootreason — reason to reboot:
          • admdown — disabled by the admin;
          • net_mac — MAC address of the virtual machine has been changed;
          • net_iface — changes in network interfaces must be applied;
        • vmnote — admin’s note;
        • vmnoteu — user's note;
        • tempipv4 — temporary IPv4 address;
        • migrate — virtual machine migration process flag;
          • on — virtual machine migration is in progress;
          • off — virtual machine migration is not in progress.
        • migrate_info — name of the target cluster for virtual machine migration. "NULL", if virtual machine migration is not in progress;
        • sshpubkey — public SSH keys;
        • installmem — minimum required RAM to install the selected OS. "NULL", unless specified;
        • domainxml — XML description of the virtual machine;
        • inbound — inbound traffic limit. Specified in KiB/sec;
        • outbound — outbound traffic limit. Specified in KiB/sec;
        • blocked — flag of virtual machine blocking from destructive activities:
          • on — the virtual machine is blocked;
          • off — the virtual machine is not blocked.
        • blkiotune — input/output subsystem weight (I/O);
        • allowspoof — antispoofing off flag:
        • on — antispoofing disabled;
        • off — antispoofing enabled.
        • knownboottime — last known system boot time;
        • reinstalltime — last OS reinstallation start time;
        • reboottime — last system reboot start time;
        • clock_offset — server clock synchronization method:
          • utc — Universal Time Coordinated (UTC);
          • localtime — synchronized with the node.
        • lastmigratestartdate — last migration start time;
        • installinforequested — flag of kickstart or preseed required for OS installation;
        • ip_history — last IP address assigned to the virtual machine;
        • osname — OS name;
        • recipe — name of executable recipe file;
        • recipe_run — recipe installation flag:
          • on — recipe installation is in progress;
          • off — recipe installation is not in progress.
          • snapshot_limit — snapshot number limit;
          • down_reason — virtual machine down reason:
            • admdown — down by the admin.
          • cpu_mode — CPU emulation mode:
            • NULL — by default;
            • host-model;
            • host-passthrough;
            • custom — user mode.
          • custom_cpu — CPU model;
          • custom_cpu_features — list of CPU features;

          interface

          Table of virtual machine network interfaces

          See description in ManagementVirtual machinesInterfaces button.

          • id — record ID;
          • vm — virtual machine ID. Link to the vm table;
          • network — connected network ID. Link to the network table;
          • mac — MAC address;
          • model — network device model.

          device

          Table of devices (disks and ISO images) connected to virtual machines.

          • id — record ID;
          • vm — virtual machine ID. Link to the vm table;
          • type — device type:
            • 0 — HDD;
            • 1 — CD-ROM.
          • controller — bus:
            • ide;
            • virtio.
          • info — service information;
          • targetdev — virtual device;
          • filepath — ISO image path. "NULL", if HDD.

          volume

          Table of virtual disks.

          See description of virtual disks in ManagementVirtual machinesDisks.

          • id — record ID;
          • name — name;
          • hostnode — cluster node ID. Link to the hostnode table;
          • user — user ID. Link to the user table;
          • pool — disk storage name;
          • size — disk size;
          • voltype — disk type:
            • 0 — virtio;
            • 1 — ide;
            • 2 — ISO image.
          • vm — virtual machine ID. Link to the vm table. "NULL", if not connected;
          • bus — bus. "NULL", if not connected;
          • dev — device. "NULL", if not connected;
          • device — device ID. Link to the device table. "NULL", if not connected;
          • filepath — directory to which ISO image is mounted. "NULL", if disk type is not ISO image;
          • bootorder — boot order. "0", if not connected;
          • format — disk format:
            • NULL — ISO image;
            • raw;
            • qcow2.
          • status — status.

          statday

          Table with virtual machines load by days

          See description of data in ManagementVirtual machinesLoad.

          • begin — starting time of the day. Specified in UNIX format;
          • vm — virtual machine name;
          • rx — inbound traffic. Specified in bytes;
          • tx — outbound traffic. Specified in bytes;
          • prx — inbound traffic packets count;
          • ptx — outbound traffic packets count;
          • cpu — CPU time. Specified in msec;

          stathr

          Table with virtual machines load by hours

          See description of data in ManagementVirtual machinesLoad.

          • begin — starting time of the hour. Specified in UNIX format;
          • vm — virtual machine name;
          • rx — inbound traffic. Specified in bytes;
          • tx — outbound traffic. Specified in bytes;
          • prx — inbound traffic packets count;
          • ptx — outbound traffic packets count;
          • cpu — CPU time. Specified in msec;

          bandwidthusage

          Table of bandwidth usage by virtual machines by days.

          See the transmission speed in ManagementVirtual machinesBandwidth usage.

          • id — record ID;
          • vm — virtual machine ID;
          • in_ch — inbound traffic speed. Specified in Kbit/sec;
          • out_ch — outbound traffic speed. Specified in Kbit/sec;
          • date — starting time of the day. Specified in UNIX format.

          vmportfilter

          Table of TCP port filters

          See description of filters in ManagementVirtual machinesFilter.

          • id — filter ID;
          • vm — virtual machine ID. Link to the vm table;
          • portfirst — start of the ports range to which the filter applies;
          • portlast — end of the ports range to which the filter applies. If "NULL", the filter is applied to the same port that is specified in portfirst;
          • start — filter effect start time;
          • end — filter effect end time;
          • direction — filter type:
            • 0 — inbound;
            • 1 — outbound.

            eventlog

            Tables of changes in virtual machines

            See description of events in ManagementVirtual machinesHistory.

            • id — record ID;
            • table_name — ID of event-related table;
            • reference_id — ID of entry in the event-related table. Link to the event-related table;
            • owner_name — ID of the user, who owns the virtual machine. Link to the user table;
            • user_level — user permissions level;
            • event_time — time;
            • event_name — event name;
            • username — user that initiated the event;
            • request_ip — IP address of the user or name of the service that initiated the event;
            • request_action — the function corresponding to the event;
            • params — function parameters;
            • email_sent — flag of notification sent by email:
              • on — the notification has been sent;
              • off — the notification has not been sent.

              eventlog_msg

              Tables of localized descriptions of changes in virtual machines

              See description of events in ManagementVirtual machinesHistory.

              • id — record ID;
              • eventlog — event ID. Link to the eventlog table;
              • lang — localization:
                • ua — Ukrainian;
                • pt — Portuguese;
                • nl — Dutch;
                • en — English;
                • de — German;
                • ru — Russian.
              • msg — localized description of event;
              • request_action_msg — localized description of function.

              snapshot

              Table of virtual machines snapshots

              See description of snapshops in ManagementVirtual machinesSnapshots.

              • id — record ID;
              • date — snapshot time;
              • vm — virtual machine ID. Link to the vm table;
              • description — description;
              • name — name;
              • status — status;
              • usersnapshot — user snapshot flag:
                • on — the snapshot was made by the user;
                • off — the snapshot was made by the admin.
              • stype — type:
                • libvirt — internal (qcow2);
                • lvm — external (LVM).

                unknownvm

                Table of virtual machines not found in the database.

                See description in ManagementUnknown VMs.

                • id — record ID;
                • name — name;
                • hostnode — cluster node;
                • status — status.

                Cluster nodes

                hostnode

                Table of cluster nodes.

                Description see in Cluster settingsCluster nodes.

                • id — record ID;
                • name — name;
                • ip — IP address;
                • status — status:
                  • 0 — automatic deployment of VMs is permitted;
                  • 1 — automatic deployment of VMs is prohibited for new VMs;
                  • 2 — automatic deployment of VMs is prohibited for all VMs.
                • configuration — comment;
                • uid — UID libvirt of the server. Used to prevent adding one cluster node twice;
                • cloudstate — status of the Enable cloud functions option:
                  • on — cloud functions are enabled;
                  • off — cloud functions are disabled.
                • vci — libvirt version. The first output string vish -V;
                • on — the node is a master node;
                • off — the node is not a master node.
                • ismaster — flag defining whether the node is a master node. For VMmanager KVM — always off:
                • maxvmcount — maximum VM count
                • cpucore — CPU core count;
                • priority — node priority in the queue to start the control panel in case the current master node fails;
                • corosync_status — corosync status;
                • port — ihttpd port;
                • online — cluster node availability flag:
                  • on — available;
                  • off — unavailable;
                • version_libvirt — libvirt version;
                • version_qemu — QEMU version.

                role_on_node

                Table of cluster node roles.

                Description see in Cluster settingsCluster nodesRoles.

                • id — record ID.
                • role — cluster node role:
                  • dbreplication — mysql replication.
                • hostnode — cluster node ID. Link to the hostnode table.
                • params — parameters.

                Cluster

                allocationrule

                Table of virtual machine deployment rules

                See the description of rules in Cluster settingsDeployment rules.

                • id — record ID;
                • priority — rule priority;
                • hostnode — cluster node. "NULL", if all are cluster nodes. Otherwise, cluster node ID;
                • ruletype — rule type:
                  • 0 — OS template;
                  • 1 — VM template.
                • operand — operand:
                  • 0 — contained;
                  • 1 — not contained.
                • value — value;
                • action — action:
                  • 0 — Add the node to the list;
                  • 1 — Delete the node from the list.
                • stop — Stop processing option:
                  • on — option enabled;
                  • off — option disabled.

                  sshpubkey

                  Table of public SSH keys.

                  Description see in Cluster settingsCluster nodes.

                  • id — record ID;
                  • name — key name;
                  • pubkey — key;
                  • owner — user ID. Link to the user table.

                  iso

                  Table of ISO images

                  See the description of images in ManagementISO images.

                  • id — record ID;
                  • filename — path to ISO image;
                  • name — image name;
                  • user — user owner ID. Link to the user table;
                  • size — size. Specified in bytes;
                  • deletetime — time of deletion;
                  • shared — status of Shared option:
                    • on — option enabled;
                    • off — option disabled.
                  • status — status:
                    • 0 — image ready;
                    • 1 — image loading in progress.
                  • description — description.

                  preset

                  Table of VM templates

                  See the description of templates in Cluster settingsVM templates.

                  • id — record ID;
                  • name — template name;
                  • mem — RAM size. Specified in MiB;
                  • vcpu — CPU count;
                  • cputune — CPU weight;
                  • inbound — inbound traffic limit. Specified in KiB/sec;
                  • outbound — outbound traffic limit. Specified in KiB/sec;
                  • blkiotune — input/output subsystem weight (I/O);
                  • snapshot_limit — snapshot number limit;
                  • cpu_mode — CPU emulation mode:
                    • NULL — by default;
                    • host-model;
                    • host-passthrough;
                    • custom — user mode.
                  • custom_cpu — CPU model. "NULL", if CPU emulation mode is not custom;
                  • custom_cpu_features — list of CPU features. "NULL", if CPU emulation mode is not custom.

                  presetresource

                  Table of VM template resources

                  See the description of templates in Cluster settingsVM templatesResources.

                  • id — record ID;
                  • preset — VM template ID. Link to the preset table;
                  • type — resources type:
                    • 0 — network;
                    • 1 — storage.
                  • metapool — storage ID. Link to the metapool table. "NULL", if the resource type is “Network”;
                  • network — network ID. Link to the network table ; "NULL", if the resource type is “Storage”;
                  • vsize — disk size. Specified in MiB. "NULL", if the resource type is “Network”;
                  • model — map model. "NULL", if the resource type is “Storage"

                  Storages

                  metapool

                  Table of template storages.

                  See the description of templates in Cluster settingsStorages templates.

                  • id — record ID;
                  • name — name;
                  • type — type:
                    • dir — file system;
                    • logical — LVM;
                    • nlvm — network LVM;
                    • iscsi — iSCSI;
                    • rbd — RBD;
                    • gluster — GlusterFS;
                    • netfs — NFS.
                    • srcdirpath — network storage directory. Specified only for the storage of “GlusterFS” type. For others — "NULL";
                    • srchostname — network storage IP address or HOSTNAME;
                    • srcvolume — remote server volume name. Specified only for the storage of “GlusterFS” or “NFS” type. For others — "NULL";
                    • tgtpath — cluster node directory.
                    • format — format:
                      • raw;
                      • qcow2.
                    • cache_mode — caching mode:
                      • NULL — by default;
                      • none;
                      • writethrough;
                      • writeback;
                      • directsync;
                      • unsafe.
                    • qemu_aio — AIO mode:
                      • NULL — by default;
                      • threads.
                    • reserved — storage volume reserved;
                    • reserved_unit — units of measurement of the storage volume reserved:
                      • 0 — percent;
                      • 1 — MiB;
                      • 2 — GiB.
                    • description — description.

                    iscsilun

                    Table of iSCSI LUNs

                    • id — record ID;
                    • name — LUN name;
                    • iscsitarget — ID of the target in which LUNs are created. Link to the iscsitarget table;
                    • lunid — LUN ID.

                    iscsitarget

                    Table of iSCSI targets

                    • id — record ID;
                    • serverip — IP address of the server with target;
                    • name — target name;
                    • targetid — target ID;
                    • targetdate — target creation date;
                    • rhn — domain name of the server with target.

                    rbdmonitor

                    Table of Ceph RBD monitors.

                    • id — record ID;
                    • metapool — storage ID. Link to the metapool table;
                    • hostname — server IP address or domain name;
                    • port — server connection port.

                    rbdsecret

                    Table of ceph users secrets data

                    • id — record ID;
                    • metapool — storage ID. Link to the metapool table;
                    • username — user login;
                    • type — storage type:
                      • ceph.
                    • uuid — unique secret ID.

                    Import

                    remotenode

                    Table of servers and clusters for VM import.

                    See the description of servers and clusters in ImportVM import.

                    • id — record ID;
                    • ip — IP address;
                    • type — connected server type:
                      • 0 — import from another VMmanager KVM;
                      • 1 — import from libvirt.
                    • login — ssh user name;
                    • port — ssh port;
                    • mgrpath — path to VMmanager. "NULL", if the type is import from libvirt.

                    remotevm

                    Table of virtual machines on servers and clusters for VM import.

                    See the description of servers and clusters in ImportVM import → List of VMs.

                    • id — record ID;
                    • remoteid — ID of the virtual machine on the remote server;
                    • hostip — cluster node IP address;
                    • hostname — cluster node name;
                    • externalip — external IP of the virtual machine;
                    • name — virtual machine name;
                    • name_idn — virtual machine name in user's encoding;
                    • istatus — status:
                      • fail — import of virtual machine failed.
                    • remotenode — cluster node ID. Link to the remotenode table;
                    • mem — RAM. Specified in MiB;
                    • vsize — disks size;
                    • ip — IP address of the virtual machine.

                    vds

                    Table of virtual machines found on servers with VDSmanager for import.

                    See the description of virtual machines in ImportVDS import → List of VDSs.

                    • id — record ID;
                    • name — name;
                    • ip — IP address;
                    • vdsmgr — ID of the server with vdsmgr. Link to the vdsmgr table;

                    vdsmgr

                    Table of servers with VDSmanager for import

                    See the description of servers in ImportVDS import.

                    • id — record ID;
                    • name — name;
                    • ip — IP address.

                    Statistics

                    diskday

                    Table with statistics of disk operations by days.

                    • begin — starting time of the day. Specified in UNIX format;
                    • vm — virtual machine name;
                    • device — the device from which data were obtained;
                    • rd — inbound traffic;
                    • wr — outbound traffic.

                    diskhr

                    Table with statistics of disk operations by hours.

                    • begin — starting time of the hour. Specified in UNIX format;
                    • vm — virtual machine name;
                    • device — the device from which data were obtained.

                    Networks

                    network

                    • id — record ID;
                    • name — network name;
                    • type — network type:
                      • bridge — bridge;
                      • nat — NAT.
                    • bridge — network bridge name. "NULL" for NAT-type network;
                    • ipaddr — IP address (gateway). "NULL" for bridge network type;
                    • netmask — net mask. "NULL" for bridge network type;
                    • fdev — external interface. Auto value corresponds to auto-select;
                    • main — obsolete. Not used.

                    ip

                    Table of IP addresses assigned to virtual machines.

                    • id — record ID;
                    • ip — IP address;
                    • owner — virtual machine ID. Link to the vm table;
                    • domain — domain name;
                    • gateway — gateway address;
                    • netmask — net mask.

                    mac

                    Table of MAC address and IP address pairs

                    See the description of pairs in Cluster settingsNetworksMAC addresses.

                    • id — record ID;
                    • mac — MAC address;
                    • network — network ID;
                    • type — pairing type:
                      • 0 — VM name;
                      • 1 — IP address.
                    • value — value;
                    • netseq — obsolete, not used.

                    Notifications

                    problem

                    Obsolete, not used.

                    problems

                    Table of notifications.

                    See the description of notifications in System statusNotifications.

                    • id — record ID;
                    • name — notification type;
                    • owner — user;
                    • date_init — initial date;
                    • date_lastsolve — date of the last solving attempt;
                    • problem_id — notification ID;
                    • description — description and extra information;
                    • level — level:
                      • 1 — error;
                      • 2 — critical problem.
                    • solved — problem solve flag:
                      • on — the problem has been solved;
                      • off — the problem has not been solved.
                    • autosolve — problem autosolve tag:
                      • on — autosolve enabled;
                      • off — autosolve disabled.
                    • autosolve_period — autosolve retry period. Specified in minutes;
                    • autosolve_count — autosolve count.

                    problems_desc

                    • lang — localization;
                    • problems — notification ID. Link to the problems table;
                    • locale_desc — localized description;
                    • title — localized notification type.

                    problems_log

                    Table of problem detection logs.

                    See the description of logs in System statusNotificationsLog.

                    • id — record ID;
                    • id_problem — problem ID. Link to the problems table;
                    • date — initial date;
                    • owner — user;
                    • duration — duration.

                    Service tables

                    mgrval

                    COREmanager tables

                    core_funcs

                    core_members

                    core_restorepasswd

                    core_session

                    core_session_ext

                    core_users

                    core_usrparam

                    socialrequest

                    global_index

                    Table of data for global search.

                    • table_name — table name;
                    • table_field — table field name;
                    • record_id — table record ID;
                    • field_value — field value.