Красная шляпа

Как управлять многоуровневым локальным хранилищем с помощью Stratis на RHEL 8

Как управлять многоуровневым локальным хранилищем с помощью Stratis на RHEL 8
Stratis - это решение для хранения данных с локальным управлением от команды RedHat, представленное в RHEL 8, которое позволяет системным администраторам настраивать расширенные функции хранения, такие как:

  1. Управление на основе пула
  2. Тонкая подготовка
  3. Снимки файловой системы
  4. Мониторинг

Stratisd - это демон, стоящий за Stratis, который помогает в настройке компонентов хранилища в файловой системе XFS и подсистеме сопоставления устройств. На данный момент Stratis поддерживает Логические тома LVM, жесткие диски, SSD, NVMe, а также ISCI устройства хранения данных.

А теперь давайте окунемся в некоторые основные ключевые термины

  1. Blockdev: Это терминология, относящаяся к блочным устройствам.
  2. Бассейн: Пул может состоять как из одного, так и из нескольких блочных устройств. Размер стратис-пула будет эквивалентен сумме блочных устройств, составляющих пул.
  3. Файловая система: Файловая система - это тонко подготовленный уровень, размер которого увеличивается по мере добавления дополнительной информации или данных. Stratis автоматически увеличивает размер файловой системы по мере того, как объем данных увеличивается почти до размера виртуальной файловой системы.

Стратис состоит из:

  1. Демон Stratisd: Демон, который позволяет пользователю управлять блочными устройствами.
  2. Стратис-кли: Утилита командной строки, входящая в состав Stratis.

Установка Stratis на RHEL 8

Кратко представив Stratis, то, что он делает, и его компоненты, давайте теперь установим Stratis на RHEL 8

Чтобы установить Stratis на RHEL 8, войдите в систему как пользователь root и выполните команду:

# dnf install stratisd stratis-cli

При появлении запроса введите y, чтобы продолжить установку. Если все прошло хорошо, вы сможете получить приведенный ниже результат, подтверждающий, что все прошло хорошо.

Чтобы подтвердить установку пакетов stratis, выполните команду:

# rpm -q stratisd stratis-cli

Запуск службы Stratis на RHEL 8

Чтобы запустить сервис Stratis, выполните команду:

# systemctl enable --now stratisd

Затем проверьте статус Stratis, выполнив команду:

# systemctl status stratisd

Из выходных данных выше видно, что Stratis запущен и работает.

Создание пула Stratis

Прежде чем приступить к созданию пула Stratis, убедитесь, что на блочных устройствах в вашей системе не менее 1 ГБ. Кроме того, эти устройства необходимо размонтировать и простаивать. Кроме того, должен быть запущен демон stratisd. в нашей настройке, помимо основного раздела, есть 5 блочных устройств:

  1. / dev / xvdb
  2. / dev / xvdc
  3. / dev / xvdd
  4. / dev / xvde
  5. / dev / xvdf

Вы можете получить представление о существующих блочных устройствах, выполнив команду:

# lsblk

Кроме того, очень важно убедиться, что у блочных устройств нет существующей таблицы разделов.

Подтвердите это с помощью синтаксиса:

# blkid -p /

Например

# blkid -p / dev / xvdb

Отсутствие вывода означает, что на блочных устройствах нет таблицы разделов. Однако, если таблица разделов существует на одном из устройств, вы можете стереть раздел, используя команду:

# wipefs -a /

Создание пула Stratis из одного блочного устройства

Вы можете создать пул Stratis из одноблочного устройства, используя синтаксис:

# stratis pool create  

Например для создания пула бассейн_1 с блочного устройства  / dev / xvdb запустить:

# stratis pool create pool_1 / dev / xvdb

Чтобы вывести список созданного пула, запустите:

# список пула stratis

Из вышеприведенного вывода мы ясно видим, что новый пул, бассейн_1 был создан.

Создайте пул Stratis из нескольких блочных устройств

Чтобы создать пул из нескольких устройств, используйте приведенный ниже синтаксис, в котором перечислены все устройства в одной строке

# stratis pool create

Чтобы создать пул из / dev / xvdc а также  / dev / xvdd запустите команду:

# stratis pool create pool_2 / dev / xvdc / dev / xvdd /

Еще раз перечислите доступные пулы с помощью команды:

# список пула stratis

На данный момент у вас должно быть 2 пула:  бассейн_1 и бассейн_2

Из выходных данных выше мы можем ясно отметить, что размер pool_2 в два раза больше, чем pool_1, потому что он состоит из двух блочных устройств, каждое из которых имеет физический объем 10 ГБ.

Создание файловой системы из пула

Из одного из ранее созданных пулов Stratis вы можете создать файловую систему, используя синтаксис ниже:

# stratis fs create  

Например, чтобы создать файловую систему fs_1 из бассейн_1 выполнить команду:

# stratis fs создать pool_1 fs_1

Также вы можете создать более 1 файловой системы из одного пула. Во втором пуле мы создадим 2 файловые системы: 

fs_2 
& fs_3
# stratis fs создать pool_2 fs_2
# stratis fs создать pool_2 fs_3

Теперь, чтобы отобразить новые файловые системы, выполните:

# stratis fs list

Чтобы перечислить файловые системы в данном пуле, используйте синтаксис

# stratis fs list

Например, чтобы просмотреть файловые системы, существующие в pool_1, выполните команду:

# stratis fs list pool_1

Для pool_2 запустите:

# stratis fs list pool_2

Как и ожидалось, у нас есть 2 файловые системы во втором пуле.

На этом этапе запускается  lsblk команда выдаст результат, аналогичный приведенному ниже:

Как смонтировать файловую систему Stratis

Чтобы получить доступ к файловым системам, нам нужно, прежде всего, смонтировать их. Первым шагом будет создание точек монтирования для каждой файловой системы. Это кратко изложено в таблице ниже

Файловая система Точка монтирования
fs_1 /место хранения
fs_2 /база данных
fs_3 /резервное копирование

Итак, создайте первую точку монтирования для файловой системы в бассейн_1

# mkdir / хранилище

Далее монтируем файловую систему

# mount / Stratis / pool_1 / fs_1 / storage

Чтобы смонтировать вторую файловую систему, выполните ту же процедуру:

# mkdir / database

Смонтируйте файловую систему:

# mount / stratis / pool_2 / fs_2 / database

И, наконец, последняя файловая система:

# mkdir / backup

Смонтируйте файловую систему:

# mount / stratis / pool_2 / fs_3 / backup

Подтвердить существование точек монтирования можно с помощью команды:

# df -Th | grep stratis

Сделайте файловые системы stratis постоянными

Файловые системы, которые мы только что создали, не выдержат перезагрузки. Чтобы сделать их постоянными, нам нужно добавить их в / etc / fstab файл.

Во-первых, давайте получим UUID файловых систем, как показано

# blkid -p / stratis / pool_1 / fs_1
# blkid -p / stratis / pool_2 / fs_2
# blkid -p / stratis / pool_2 / fs_3

# echo "UUID = 9161da55-6c4b-4761-9da9-1b3999945964 / хранилище
xfs по умолчанию 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = ddfa4252-a9d6-4c10-8981-e7dbd56450ee / database
xfs по умолчанию 0 0 "| sudo tee -a / etc / fstab
# echo "UUID = 512bc0b7-182e-46ed-9fbd-d5be4d055fcf / backup
xfs по умолчанию 0 0 "| sudo tee -a / etc / fstab

Вы можете подтвердить добавление файловых систем в / etc / fstab как показано:

Чтобы изменения вступили в силу в системе, выполните команду:

# systemctl daemon-reload

Затем смонтируйте все файловые системы

# mount -a

Добавление блочного устройства в пул Stratis

Чтобы добавить блочное устройство в существующий пул Stratis, выполните команду:

# дополнительные данные пула stratis

Например, чтобы добавить объем блока  / dev / xvde к  бассейн_1 запустите команду:

# stratis pool add-data pool_1 / dev / xvde

Теперь проверьте размер  бассейн_1

# список пула stratis

Как было замечено, размер бассейн_1 увеличился вдвое в результате добавления блочного устройства.

Создание снимка Stratis

Файловая система Stratis - это точная копия или реплика другой файловой системы Stratis. Содержит то же содержимое, что и исходная файловая система. Однако моментальный снимок позже может быть изменен, и после этого будут существовать различия между моментальным снимком и исходной файловой системой.

Вот несколько вещей, которые вам также следует знать:

  1. Снимок файловой системы - это просто еще одна реплика файловой системы.
  2. Вам не нужно монтировать файловую систему, чтобы создать из нее моментальный снимок.
  3. Моментальная файловая система может пережить исходную файловую систему, из которой она была создана

Чтобы создать снимок, используйте синтаксис:

# stratis fs снимок

Например, чтобы создать снимок с именем снимок_1 в бассейн_1 запустите команду

# stratis fs snapshot pool_1 fs_1 snapshot_1

Это займет около 30 секунд.

Чтобы подтвердить создание снимка, выполните:

# список файловых систем stratis

В этом случае команда будет такой:

# stratis filesystem list pool_1

Дополнительно вы можете добавить атрибут даты (-$ (дата +% Y-% m-% d) чтобы легко определить, когда был создан снимок. Создадим еще один снимок, используя второй пул.

# stratis fs snapshot pool_2 fs_2 snapshot_2 - $ (дата +% Y-% m-% d)

Чтобы отобразить только что созданный снимок Stratis, введите команду:

# stratis filesystem list pool_2

Из вывода выше мы видим снимок, созданный в бассейн_2 с меткой даты.

Как вернуться к предыдущему снимку с помощью файловой системы

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

# umount / stratis //файловая система

Например, в  бассейн_2  вернуться к снимок_2 размонтировать файловую систему fs_2

# umount / stratis / pool_2 / fs_2

Затем создайте копию снимка из исходной файловой системы

# снимок файловой системы stratis
моментальный снимок fs-mountpoint

Команда будет такой:

# stratis file system snapshot pool_2 snapshot_2-2019-11-15 база данных

Наконец, смонтируйте снимок, используя точку монтирования файловой системы

# mount / stratis / pool_2 / fs_2 / database

Удаление снимка Stratis

Чтобы удалить снимок Stratis, прежде всего, размонтируйте снимок.

# umount / snapshot_mountpoint

Чтобы удалить снимок, созданный в бассейн_2, размонтируйте точку монтирования, как показано

# umount / база данных

Затем продолжаем и уничтожаем снимок:

# уничтожение файловой системы stratis

Команда будет такой:

# stratis filesystem destroy pool_2 snapshot_2-2019-11-15

Теперь попробуйте перечислить файловые системы в pool_2. Вы заметите, что снимок исчез.

# stratis filesystem list pool_2

Удаление файловой системы Stratis

Чтобы избавиться от файловой системы, сначала отключите файловую систему, используя синтаксис ниже:

# umount / stratis / пул / файловая система

Например, чтобы удалить файловую систему fs_1 в бассейн_1, сначала размонтируйте его, как показано:

# umount / stratis / pool_1 / fs_1

Затем уничтожьте файловую систему, используя синтаксис ниже:

# stratis файловая система уничтожает пул fs

В нашем сценарии команда будет такой:

# stratis filesystem destroy pool_1 fs_1

Чтобы убедиться, что файловая система была успешно удалена, выполните команду:

# stratis filesystem list pool_1

Как видите, файловая система больше не существует.

Удаление пула Stratis

Наконец, давайте посмотрим, как удалить пул Stratis.

Чтобы удалить пул stratis, вам необходимо размонтировать и уничтожить все файловые системы и моментальные снимки в пуле, как мы видели в предыдущих подразделах.

Поскольку в pool_1 остается снимок, мы сначала удалим его, сначала удалив точку монтирования, связанную со снимком

# umount / хранилище

Далее уничтожаем файловую систему.

# stratis filesystem destroy pool_1 snapshot_1

Теперь, когда снимок удален, удалите pool_1 с помощью команды

# stratis pool destroy pool_1

Теперь перечислите доступные пулы:

# список пула stratis

Удалять бассейн_2 , давайте сначала перечислим файловые системы

# stratis filesystem list pool_2

Размонтируйте и уничтожьте файловые системы, как показано

# umount / stratis / pool_2 / fs_3
# stratis filesystem destroy pool_2 fs_3
# stratis файловая система уничтожает базу данных pool_2

Затем уничтожьте пул и перечислите пулы

# stratis pool destroy pool_2
# список пула stratis

Идеально ! все бассейны исчезли. Мы вернулись туда, откуда начали ! Вы можете подтвердить еще раз, перечислив устройства блокировки с помощью команды:

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

Рекомендации:

  • https: // доступ.Красная шляпа.com / documentation / en-us / red_hat_enterprise_linux / 8 / html / manage_file_systems / management-Layered-local-storage-with-stratis_managing-file-systems
  • https: // www.Tecmint.com / install-stratis-to-manage-Layered-local-storage-on-rhel /
Курсор прыгает или перемещается случайным образом при наборе текста в Windows 10
Если вы обнаружите, что ваш курсор мыши прыгает или перемещается сам по себе, автоматически, случайным образом при вводе текста на ноутбуке или компью...
Как изменить направление прокрутки мыши и сенсорной панели в Windows 10
Мышь а также Сенсорная панельs не только упрощают вычисления, но и делают их более эффективными и требуют меньше времени. Мы не можем представить себе...
Как изменить указатель мыши и размер курсора, цвет и схему в Windows 10
Указатель мыши и курсор в Windows 10 - очень важные аспекты операционной системы. То же самое можно сказать и о других операционных системах, так что,...