Резервирование места для брокера сообщений

Невозможно достоверно спрогнозировать, какой из ресурсов будет исчерпан ранее: основное дисковое пространство или зарезервированный объем для брокеров. Поэтому данное решение не рекомендуется к применению и реализовано только для возможности функционирования Системы при критической нехватке ресурсов.

Лучшим решением будет выделение отдельных виртуальных дисков в директории:

/home/multicheck/mp-pack/data/mp_broker1 /home/multicheck/mp-pack/data/mp_broker2 /home/multicheck/mp-pack/data/mp_broker3

Функция setup_broker() в скрипте инсталляции предоставляет возможность создать зарезервированное дисковое пространство для компонента mp-broker.

Брокер сообщений при нехватке дискового пространства начитает удалять данные для освобождения места благодарю включению механизма экстренной остановки, в ходе которой намеренно удаляются RAFT метаданные кластера.

Резервирование выделенного пространства не гарантирует наличие у брокера сообщений достаточного объема диска для корректной работы.

Более того, возможна обратная ситуация: ограничение, введенное через виртуальный образ фиксированного размера, может искусственно спровоцировать нежелательное поведение Системы.

Для того чтобы зарезервировать место необходимо:

  1. В файле install.conf закомментировать или поменять значение для следующей переменной:

# Резервировать место для брокера: "true" - резервировать, "false" - не резервировать

# Внимание: если false, убедитесь, что брокер имеет выделенное хранилище

RESERVE_BROKER="true"
  1. Запустить скрипт инсталляции и ответить на вопросы:

Multicheck installation -> setup broker
#########################################################
Do you want to reserve a space for mp-broker? (y/n): y
Size reserve space for broker, in G (number only): 10
### Размер файлов в Gb, для однонода умножать на 3, выделяется место для каждого из трёх брокеров.
#########################################################
mke2fs 1.47.0 (5-Feb-2023)
Discarding device blocks: done
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: e018a77f-a76a-4683-8c1a-8fabc51514ec
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
#########################################################
### Запись в fstab:
/home/multicheck/mp-pack/data/mp_broker1_reserve.img /home/multicheck/mp-pack/data/broker_1/ ext4 loop 0 2
#########################################################
mke2fs 1.47.0 (5-Feb-2023)
Discarding device blocks: done
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: 453cd57f-6228-4121-aa1a-362930ca61d1
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
#########################################################
### Запись в fstab:
/home/multicheck/mp-pack/data/mp_broker2_reserve.img /home/multicheck/mp-pack/data/broker_2/ ext4 loop 0 2
#########################################################
mke2fs 1.47.0 (5-Feb-2023)
Discarding device blocks: done
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: b2cfab9d-671d-4bc7-a6fb-c22aab3f4d71
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
#########################################################
### Запись в fstab:
/home/multicheck/mp-pack/data/mp_broker3_reserve.img /home/multicheck/mp-pack/data/broker_3/ ext4 loop 0 2
#########################################################

Важно: при удалении или переустановке Системы с попыткой избавиться от резервирования необходимо проверить /etc/fstab и убедиться в отсутствии удаленных записей и наличии доступов к образам дисков. В противном случае ОС не запустится в штатном режиме.