VMmanager OVZ: Database structure

From ISPWiki
Jump to: navigation, search

Database structure

The VMmanager OVZ database structure is shown on the picture. It contains 10 tables that can be divided into two logical blocks:

  • the main database - the tables hostnode, users, preset, vm, snapshot, ip, sshpubkey
  • database for importing vps from VDSmanager - the tablesvdsmgr, vds, vdsip

Types of databases are conventional, as for the bool type char(3) with possible values "on"/"off" is actually used.

Database structure

Main database

vm

The vm table is used for keeping information about containers.

List of fields:

  • id - primary key, used as a container's identifier; the minimum value is 101
  • name - container name
  • hostnode - external key, identifier of the cluster node where the container is located внешний ключ, идентификатор узла кластера, на котором размещен данный контейнер
  • user_id - external key, identifier if the user who owns the container внешний ключ, идентификатор пользователя-владельца контейнера
  • ip - primary IP address
  • domain - domain name
  • ostemplate - operating system template
  • state - container status: installing - os installation in progress, stopped, running, error
  • admdown - the container is suspended by administrator
  • hdd - disk size, MB
  • mem - RAM, MB
  • swapratio - swap to RAM ratio, %
  • cpu - number of CPU
  • cpufreq - CPU frequency, MHz
  • cpulimit - cpu limit, %
  • numproc - the maximum number of processes that are running simultaneously within container
  • numfile - the maximum number of file descriptor that are open simultaneously with container
  • migrate - migration into another cluster node in progress
  • importing - import from vps in progress
  • converting - convertion into ploop in progress
  • migrate_hostnode_id - identifier of the cluster node to which the container is being migrated
  • vmnote - notes specified by administrator
  • vmnoteu - notes specified by the user who owns this container
  • synctime - date and time when parameters were synchronized
  • blocked - this container is blocked against destructive actions
  • fstype - type of the file system (simfs/ploop)
  • firstrun - this container is started for the first time (used for resolv.conf)
  • chratein - incoming traffic limit, kbit/sec
  • chrateout - outgoing traffic limit, kbit/sec
  • iolimit - ограничение на максимальную скорость обмена данными с дисковым устройством, Мб/сек
  • iopslimit - ограничение на максимальное количество операций ввода-вывода в секунду (IOPS)
  • sshpubkey - публичный ssh-ключ, который записывается в /root/.ssh/authorized_keys при создании/переустановке контейнера

hostnode

Таблица hostnode предназначена для хранения информации об узлах кластера.

Список полей:

  • id - первичный ключ, уникальный идентификатор узла кластера
  • name - наименование
  • ip - IP-адрес
  • status - признак блокировки автоматического размещения на узле кластера новых контейнеров
  • configuration - комментарии к узлу кластера
  • password -
  • port - номер порта ihttpd
  • maxvmcount - ограничение на максимальное количество контейнеров (учитывается только при автоматическом выборе узла кластера)
  • vzkernel_version - текущая версия ядра OpenVz на данном узле кластера
  • vzctl_version - текущая версия утилиты vzctl на данном узле кластера

Таблица users

Таблица users предназначена для хранения информации о пользователях системы.

Список полей:

  • id - первичный ключ, уникальный идентификатор пользователя
  • name - имя пользователя
  • password - хеш пароля
  • level - уровень доступа (16 - пользователь, 29 - администратор)
  • enabled - признак "вкл/выкл"

preset

Таблица preset предназначена для хранения информации о шаблонах контейнеров.

Список полей:

  • id - первичный ключ, уникальный идентификатор шаблона
  • name - имя шаблона
  • hdd - размер диска, Мб
  • mem - объем памяти, Мб
  • swapratio - соотношение объема swap к объему памяти, %
  • cpu - количество процессоров
  • cpufreq - частота процессора, МГц
  • cpulimit - лимит на использование cpu, %
  • numproc - максимально количество одновременно открытых процессов внутри контейнера
  • numfile - максимально количество одновременно открытых дескрипторов файлов внутри контейнера
  • chratein - ограничение входящей скорости, Кбит/сек
  • chrateout - ограничение исходящей скорости, Кбит/сек
  • iolimit - ограничение на максимальную скорость обмена данными с дисковым устройством, Мб/сек
  • iopslimit - ограничение на максимальное количество операций ввода-вывода в секунду (IOPS)

Таблица snapshot

Таблица snapshot предназначена для хранения информации о снимках контейнеров

Список полей:

  • id - первичный ключ, уникальный идентификатор
  • vm - внешний ключ, идентификатор контейнера, к которому относится данный снимок
  • guid - глобальный идентификатор (GUID) снимка, задается системой OpenVz
  • guid_parent - глобальный идентификатор (GUID) родительского снимка, задается системой OpenVz
  • name - наименование снимка
  • description - произвольное текстовое описание снимка
  • date - дата создания снимка
  • usersnapshot - признак того, что снимок сделан пользователем, а не администратором
  • memdump - признак наличия дампа памяти в снимке

Таблица ip

Таблица ip предназначена для хранения списка IP-адресов контейнеров

Список полей:

  • id - первичный ключ, уникальный идентификатор
  • owner - внешний ключ, идентификатор контейнера, к которому относится данный IP-адрес* ip - IP-адрес контейнера* domain - ассоциированное с адресом доменное имя

Таблица sshpubkey

Таблица sshpubkey предназначена для хранения списка публичных ssh-ключей, автоматически размещаемых на контейнере при его создании/переустановке

Список полей:

  • id - первичный ключ, уникальный идентификатор
  • owner - внешний ключ, идентификатор контейнера, к которому относится данный ssh-ключ
  • name - наименование ключа*pubkey - публичный ssh-ключ

База данных импорта vds

Таблица vdsmgr

Таблица vdsmgr предназначена для хранения информации о списке серверов с VDSmanager 4.

Список полей:

  • id - первичный ключ, уникальный идентификатор
  • name - имя сервера
  • ip - IP-адрес сервера
  • ipmgr - признак активности интеграции с IPmanager
  • local - признак того, что сервер является локальным по отношению к VEmanager
  • vzprivate_dir - путь к "private"-директории

Таблица vds

Таблица vds предназначена для хранения информации о списке vds конкретного сервера VDSmanager 4.

Список полей:

  • id - первичный ключ, уникальный идентификатор
  • name - имя vds
  • vdsmgr - внешний ключ, идентификатор сервера VDSmanager
  • newname - новое имя, используется только если необходимо импортировать vds с новым именем
  • ip - основной IP-адрес vds
  • ctid - идентификатор vds (контейнера) на стороне сервера VDSmanager
  • vectid - идентификатор контейнера на стороне сервера VMmanager OVZ
  • status - состояние vds
  • ostemplate - шаблон ОС
  • disk - размер диска
  • mem - объем памяти
  • cpu - количество cpu
  • cpufreq - частота cpu
  • numproc - максимально количество одновременно открытых процессов внутри vds
  • numfile - максимально количество одновременно открытых дескрипторов файлов внутри vds
  • blocked - признак того, что vds заблокирован от деструктивных действий
  • note - примечания
  • disabled - признак "вкл/выкл"
  • swapratio - соотношение swap/ram
  • cpulimit - лимит на использование cpu, %
  • chrate - скорость канала

Таблица vdsip

Таблица vdsip предназначена для хранения списка дополнительных IP-адресов vds.

Список полей:

  • id - первичный ключ, уникальный идентификатор
  • vds - внешний ключ, идентификатор vds
  • ip - IP-адрес
  • domain - доменное имя