Архитектура хранения данных
Назначение
Сервер IVA Mail использует файловую архитектуру хранения данных, в которой программные компоненты, конфигурация сервера, данные доменов, почтовые объекты, журналы и очереди размещаются в отдельных директориях.
Раздел описывает:
-
структуру директорий сервера;
-
хранение доменов и объектов;
-
хранение почтовых данных;
-
хранение журналов;
-
хранение очередей;
-
структуру кластерных данных.
Общий принцип хранения
Архитектура хранения разделяется на:
-
директорию программного кода;
-
директорию пользовательских данных;
-
директорию журналов;
-
директорию очередей;
-
директории кластерных данных.
Основные пути:
| Путь | Назначение |
|---|---|
|
Директория с программным кодом. |
|
Директория пользовательских данных сервера. |
ProgramDirectory
ProgramDirectory содержит программный код IVA Mail и служебные файлы сервера.
По умолчанию используется путь: /opt/ivamail.
| Администратору не рекомендуется изменять содержимое ProgramDirectory вручную, так как файлы могут быть перезаписаны при обновлении сервера. |
Содержимое ProgramDirectory:
| Элемент | Назначение |
|---|---|
ivamail |
Исполняемый файл сервера. |
Settings |
Настройки сервера по умолчанию. |
TimeZone |
Описание часовых поясов для календарей. |
TrustedCACerts |
Директория с корневыми сертификатами доверенных центров сертификации. |
WebData |
Директория с кодом веб-интерфейсов. |
public_suffix_list.dat |
Список публичных DNS-суффиксов (https://publicsuffix.org/). |
root.crt |
Сертификат проверки внутренних данных сервера. |
DataDirectory
DataDirectory содержит рабочие данные сервера.
По умолчанию используется путь: var/ivamail.
Структура директории:
/var/ivamail
├──Cluster
│ ├── hb.json
│ └── Domains
├── Domains
│ ├── dom-<ИмяДомена>-<IDДомена>
│ ├── Config
│ ├── Index.json
│ └── Sequence
├── Exports
├── Logs
│ ├── <Дата>.log
│ ├── Auth
│ ├── Block
│ ├── Mailbox
│ ├── MailQueue
│ └── Settings
├── Schedule
├── Settings
├── WebData
└── WorkFiles
Кластерные данные
Директория /var/ivamail/Cluster cодержит данные кластерной конфигурации.
Содержимое:
| Элемент | Назначение |
|---|---|
hb.json |
heartbeat-данные кластера. |
Domains |
Данные кластерных доменов. |
| Структура кластерных доменов аналогична структуре локальных доменов. |
Хранение доменов
Локальные домены хранятся в директории: /var/ivamail/Domain.
Каждый домен располагается в отдельной директории:
dom-<ИмяДомена>-<IDДомена>
Структура домена:
dom-<ИмяДомена>-<IDДомена>
├──acc-<Имя>-
├──res-<Имя>-
├──Config
├──Index.json
└──Sequence
Содержимое:
| Элемент | Назначение |
|---|---|
acc-<Имя>- /(res-<Имя>-) |
Директория объекта домена (аккаунт/ресурсный аккаунт). |
Config |
Настройки домена. |
Index.json |
Индекс объектов домена. |
Sequence |
Файл со следующим ID объекта в домене. |
Хранение объектов домена
Объекты домена (аккаунты/ресурсные аккаунты) хранятся в отдельных директориях acc-<Имя>-/res-<Имя>-:
-
/var/ivamail/Domain/acc-<Имя>- -
/var/ivamail/Domain/res-<Имя>-
Структура объекта:
acc-<Имя>-
├──Config
├──Files
├──mbx-<Имя>-
└──mailboxes.log
Конфигурация объекта
Конфигурация объекта хранится в директории Config:
/var/ivamail/Domain/acc-<Имя>-/Config
Cодержание:
| Файл | Назначение |
|---|---|
metadata.json |
Метаданные объекта. |
Settings.json |
настройки объекта |
files.json |
Метаданные загруженных файлов объекта. |
Загруженные файлы объекта
Загруженные файлы объекта хранятся в директории Files:
/var/ivamail/Domain/acc-<Имя>-/Files
Имя каждого файла или директории имеет формат вида dat-<Имя>-.
Например:
-
dat-27-more -
dat-30-WinSCP.lnk
Хранение mailbox
Почтовые папки (mailbox) хранятся в отдельных директориях mbx-<Имя>-:
/var/ivamail/Domain/acc-<Имя>-/mbx-<Имя>-
Структура mailbox:
mbx-<Имя>-
├──data<X>.mbx
├──flags.mbx
├──fts.mbx
├──index.mbx
├──info.mbx
├──keywords.mbx
└──settings.mbx
Файлы mailbox:
| Файл | Назначение |
|---|---|
data<X>.mbx |
Письма, события календаря и данные mailbox. |
flags.mbx |
Флаги сообщений. |
fts.mbx |
Индексы поиска по тексту. |
index.mbx |
Индексы поиска сообщений. |
info.mbx |
Метаданные mailbox. |
keywords.mbx |
Ключевые слова в сообщениях. |
settings.mbx |
Настройки mailbox. |
Экспорт и импорт
Хранение данных операций экспорта и импорта хранятся в директории Exports:
/var/ivamail/Exports
Команды для CMD:
-
ObjectExport -
ObjectImport
Журналы сервера
Журналы сервера хранятся в директории Logs:
/var/ivamail/Logs
Структура журналов:
/var/ivamail/Logs
├──<Дата>.log
├──Auth
├──Block
├──Mailbox
├──MailQueue
└──Settings
Назначение журналов:
| Журнал | Назначение |
|---|---|
<Дата>.log |
Основные журналы сервера. |
Auth |
Аутентификация. |
Block |
Блокировки. |
Mailbox |
Операции mailbox. |
MailQueue |
Доставка сообщений. |
Settings |
Изменение настроек. |