Глава 7. Файловая система
Файловая система XFS является оптимальным решением для организации больших файлов и файловых систем на одном компьютере. Основные достоинства XFS включают интегрированные возможности резервирования и восстановления, прямой ввод и вывод, а также изменение размера работающей файловой системы.
В XFS значительно улучшена обработка больших объемов метаданных. В качестве примера можно рассмотреть сценарий обращения к тысячам файлов в одном каталоге. Раньше обработка метаданных значительно замедляла работу. Теперь журналирование метаданных выполняется с задержкой, поэтому скорость работы XFS становится сравнима с ext4. Параметры подключения файловой системы откорректированы в соответствии с этими изменениями.
pNFS (Parallel NFS) является частью стандарта NFS v4.1 и обеспечивает параллельное обращение к данным, что повышает производительность серверов NFS.
pNFS поддерживает три схемы — на основе файлов, объектов или блоков. Клиент NFS в Red Hat Enterprise Linux 6.2 работает со схемой файлов.
Чтобы автоматически включить pNFS, следует создать файл /etc/modprobe.d/dist-nfsv41.conf с содержимым:
alias nfs-layouttype4-1 nfs_layout_nfsv41_files
Если указан дополнительный параметр -o minorversion=1 , и на сервере уже включены возможности pNFS, код клиента pNFS будет запущен автоматически.
pNFS предоставляется в качестве предварительного выпуска. Дальнейшую информацию можно найти на http://www.pnfs.com/.
Протокол CIFS обеспечивает унифицированный доступ к файлам в удаленных файловых системах. Раньше клиент CIFS допускал только синхронную запись, то есть управление не возвращалось процессам клиентов до тех пор, пока все операции записи не были завершены. Это отрицательно влияло на производительность. Теперь клиент CIFS осуществляет запись данных параллельно и не ожидает завершения последующих операций записи, что значительно повышает скорость работы — в некоторых случаях до 200%.
В CIFS добавлена поддержка аутентификации NTLMSSP. Помимо этого, CIFS теперь использует Crypto API.
Модуль autofs4 обновлен до версии 2.6.38.
В ext3 и jbd теперь можно использовать фиксированные точки отслеживания.
ext4 и утилиты tune2fs , debugfs , libext2fs теперь поддерживают параметр подключения -o nobarrier
4.11. Файловые системы и хранилище (машинный перевод)
Файловая система XFS поддерживает функцию экстента общих данных копирования при записи. Эта функция позволяет двум или более файлам совместно использовать общий набор блоков данных. При изменении любого из файлов, совместно использующих общие блоки, XFS разрывает ссылку на общие блоки и создает новый файл. Это похоже на функциональность копирования при записи (COW) в других файловых системах.
Общие экстенты данных для копирования при записи:
Быстро Создание общих копий не использует дисковый ввод-вывод. Пространственно-эффективный Общие блоки не занимают дополнительного дискового пространства. прозрачный Общие файлы, разделяющие блоки, действуют как обычные файлы.
Пользовательские утилиты могут использовать общие экстенты данных для копирования при записи для:
Эта функциональность также используется подсистемами ядра, такими как Overlayfs и NFS, для более эффективной работы.
Общие экстенты данных для копирования при записи теперь включены по умолчанию при создании файловой системы XFS, начиная с xfsprogs версия пакета 4.17.0-2.el8
Обратите внимание, что устройства прямого доступа (DAX) в настоящее время не поддерживают XFS с общими экстентами копирования при записи. Чтобы создать файловую систему XFS без этой функции, используйте следующую команду:
# mkfs.xfs -m reflink=0 block-device
Red Hat Enterprise Linux 7 может монтировать файловые системы XFS с общими экстентами копирования при записи только в режиме только для чтения.
Максимальный размер файловой системы XFS составляет 1024 ТиБ
Максимальный поддерживаемый размер файловой системы XFS был увеличен с 500 ТиБ до 1024 ТиБ.
Файловые системы размером более 500 ТиБ требуют, чтобы:
- функция CRC метаданных и функция бесплатного inode btree включены в формате файловой системы, и
- размер группы размещения составляет не менее 512 ГиБ.
В RHEL 8 mkfs.xfs Утилита создает файловые системы, отвечающие этим требованиям по умолчанию.
Увеличение файловой системы меньшего размера, не соответствующей этим требованиям, до нового размера, превышающего 500 ТиБ, не поддерживается.
VDO теперь поддерживает все архитектуры
Виртуальный оптимизатор данных (VDO) теперь доступен на всех архитектурах, поддерживаемых RHEL 8.
Менеджер загрузки BOOM упрощает процесс создания загрузочных записей
BOOM — это менеджер загрузки для систем Linux, которые используют загрузчики, поддерживающие спецификацию BootLoader для конфигурации начальной загрузки. Это позволяет гибко настраивать загрузку и упрощает создание новых или измененных загрузочных записей: например, для загрузки снимков системы, созданных с использованием LVM.
BOOM не изменяет существующую конфигурацию загрузчика, а только добавляет дополнительные записи. Существующая конфигурация сохраняется, и любая интеграция с дистрибутивом, такая как сценарии установки и обновления ядра, продолжает функционировать, как и раньше.
BOOM имеет упрощенный интерфейс командной строки (CLI) и API, которые облегчают задачу создания загрузочных записей.
LUKS2 теперь формат по умолчанию для шифрования томов
В RHEL 8 формат LUKS версии 2 (LUKS2) заменяет устаревший формат LUKS (LUKS1). dm-crypt подсистема и тому cryptsetup Инструмент теперь использует LUKS2 в качестве формата по умолчанию для зашифрованных томов. LUKS2 предоставляет зашифрованные тома с избыточностью метаданных и автоматическим восстановлением в случае частичного повреждения метаданных.
Благодаря внутренней гибкой компоновке LUKS2 также обеспечивает возможности будущих функций. Он поддерживает автоматическую разблокировку с помощью встроенного токена ядра-связки ключей. libcryptsetup которые позволяют пользователям разблокировать тома LUKS2 с помощью ключевой фразы, хранящейся в службе хранения ключей ядра.
Другие заметные улучшения включают в себя:
- Настройка защищенного ключа с использованием схемы шифрования с завернутым ключом.
- Более простая интеграция с расшифровкой на основе политик (Clevis).
- До 32 ключевых слотов — LUKS1 предоставляет только 8 ключевых слотов.
Для получения более подробной информации см. cryptsetup(8) а также cryptsetup-reencrypt(8) справочные страницы.
NVMe / FC полностью поддерживается на адаптерах Broadcom Emulex Fibre Channel
Транспортный тип NVMe по Fibre Channel (NVMe / FC) теперь полностью поддерживается в режиме инициатора при использовании с адаптерами Broadcom Emulex Fibre Channel 32 Гбит.
NVMe через Fibre Channel является дополнительным типом транспортного протокола для протокола энергонезависимой памяти (NVMe) в дополнение к протоколу удаленного прямого доступа к памяти (RDMA), который ранее был представлен в Red Hat Enterprise Linux.
Чтобы включить NVMe / FC в lpfc драйвер, отредактируйте /etc/modprobe.d/lpfc.conf файл и добавьте следующую опцию:
Драйверы, кроме lpfc по-прежнему остаются в технологии предварительного просмотра.
- Multipath не поддерживается с NVMe / FC.
- Кластеризация NVMe не поддерживается с NVMe / FC.
- В настоящее время Red Hat Enterprise Linux не поддерживает одновременное использование NVMe / FC и SCSI / FC на порте инициатора.
- ядро-альт Пакет не поддерживает NVMe / FC.
- kdump не поддерживается с NVMe / FC.
- Загрузка из сети хранения данных (SAN) NVMe / FC не поддерживается.
новый overrides раздел файла конфигурации DM Multipath
/etc/multipath.conf Теперь файл содержит overrides раздел, который позволяет вам установить значение конфигурации для всех ваших устройств. Эти атрибуты используются DM Multipath для всех устройств, если они не перезаписаны атрибутами, указанными в multipaths раздел /etc/multipath.conf файл для путей, которые содержат устройство. Эта функциональность заменяет all_devs параметр devices раздел файла конфигурации, который больше не поддерживается.
Теперь поддерживается установка и загрузка с устройств NVDIMM
До этого обновления установщик игнорировал устройства с энергонезависимым двойным встроенным модулем памяти (NVDIMM) в любом режиме.
В этом обновлении улучшения ядра для поддержки устройств NVDIMM обеспечивают улучшенные возможности производительности системы и расширенный доступ к файловой системе для приложений с интенсивной записью, таких как базы данных или аналитические рабочие нагрузки, а также снижают нагрузку на процессор.
Это обновление представляет поддержку для:
- Использование устройств NVDIMM для установки с использованием nvdimm Команда Kickstart и графический интерфейс пользователя, позволяющие устанавливать и загружаться с устройств NVDIMM в секторном режиме, а также переконфигурировать устройства NVDIMM в секторный режим во время установки.
- Расширение Kickstart сценарии для анаконда с командами для работы с устройствами NVDIMM.
- Способность grub2 , efibootmgr , а также efivar компоненты системы для обработки и загрузки с устройств NVDIMM.
Обнаружение маргинальных путей в DM Multipath улучшено
multipathd Сервис теперь поддерживает улучшенное обнаружение маргинальных путей. Это помогает многолучевым устройствам избегать путей, которые могут неоднократно выходить из строя, и повышает производительность. Маргинальные пути — это пути с постоянными, но периодически возникающими ошибками ввода / вывода.
Следующие опции в /etc/multipath.conf Поведение маргинальных путей управления файлами:
- marginal_path_double_failed_time ,
- marginal_path_err_sample_time ,
- marginal_path_err_rate_threshold , а также
- marginal_path_err_recheck_gap_time .
DM Multipath отключает путь и проверяет его с повторным вводом / выводом в течение настроенного времени выборки, если:
- перечисленные multipath.conf варианты установлены,
- путь не проходит дважды в установленное время, и
- другие пути доступны.
Если во время этого тестирования путь превышает заданную частоту ошибок, DM Multipath игнорирует его в течение настроенного промежутка времени, а затем повторно проверяет его, чтобы убедиться, что он работает достаточно хорошо, чтобы его можно было восстановить.
Для получения дополнительной информации см. multipath.conf справочная страница.
Поведение по умолчанию для нескольких очередей
Блочные устройства теперь используют планирование нескольких очередей в Red Hat Enterprise Linux 8. Это позволяет масштабировать производительность на уровне блоков с быстрыми твердотельными накопителями (SSD) и многоядерными системами.
SCSI Multiqueue ( scsi-mq ) драйвер теперь включен по умолчанию, и ядро загружается с scsi_mod.use_blk_mq=Y вариант. Это изменение согласуется с вышестоящим ядром Linux.
Device Mapper Multipath (DM Multipath) требует scsi-mq Водитель должен быть активным.
Stratis теперь доступен
Stratis — это новый менеджер локального хранилища. Он предоставляет управляемые файловые системы поверх пулов хранения с дополнительными функциями для пользователя.
Stratis позволяет вам легче выполнять задачи хранения, такие как:
- Управление снимками и тонкой подготовкой
- Автоматически увеличивать размеры файловой системы по мере необходимости
- Поддерживать файловые системы
Для управления хранилищем Stratis используйте stratis утилита, которая связывается с stratisd Фоновая служба.
Для получения дополнительной информации см. Документацию Stratis: Managing layered local storage with Stratis