fstrim
освоение космосаНе слишком запутывайтесь в настоящем и не беспокойтесь слишком сильно о будущем. Когда вы что-то испытываете, пейзаж перед вами уже не тот, что раньше. —— Харуки Мураками
Система Red Hat RHEL8 Файловая система по умолчанию для запуска: XFS
,но Ext4
Это по-прежнему решение для файловой системы, которое можно использовать.
ext4 (Четвертое расширение файловая система)
: ext4 Это одна из наиболее часто используемых файловых систем в Linux, являющаяся усовершенствованием файловой системы ext3. Он поддерживает большие файлы и разделы большой емкости и обеспечивает лучшую производительность и надежность.
XFS
: XFS是一个高производительностьизбревнофайловая система
,Первоначально разработан и спроектирован SGI для поддержки больших файловых систем массового хранения данных.,широко используетсяБольшой сервер и высокая производительность вычислений
среда。Он также поддерживает большую емкостьфайловая системный файл с высокой производительностью и масштабируемостью. относительно EXt4, Поддерживает большую емкость.
XFS
поддерживать1PB
изфайловая система,Размер отдельного файла ограничен8EB
。Ext4
поддерживать50TB
изфайловая система,Размер отдельного файла ограничен16TB
。Рекомендуемые сценарии файловой системы:
Сценарии, применимые к XFS:
ext4 применимые сценарии:
Когда система просит жесткий диск записать 3G
данныечас,Жесткий диск фактически скопирует данные,Но удалите данные,тогда просто дайФайл помечен тегом
(Итак, скопируйтеданныеочень медленно,Удаление данных чрезвычайно быстрое).
твердотельный накопитель
Нужно стереть староеданныенаписать новыйданные,Новый SSD,Есть много свободного места,данные Скорость записи относительно высокая,Но по мере увеличения количества использования,Многие пользователи данных удалили его.,Но для контроллеров хранения,Эти данные все еще там,Когда вам нужно записать новые данные,сначала нужно стереть старую
。
использоватьfstrim
Можетпереработка
ужеустанавливатьизфайловая система Все вышеперечисленноеиспользоватьизкусок,XFSиext4
Всеподдерживатьfstrim
,fstrimЗаказ обычно необходимо запускать с правами суперпользователя (root).
RHEL поддерживает несколько методов переработки:
Batch discard
:Вручную выполнить по мере необходимости fstrim
Заказ fstrim /mountoint
Scheduled batch discard
: использовать fstrim.timer Черновое выполнение запланированных задач fstrim Заказ, выполняемый во всех точках монтирования каждую неделю, должен запустить запланированный план. systemctl enable --now fstrim.timer
Online discard
: mount
устанавливатьфайловая система определяется, когда discard
свойство,файловая системаонлайн реальныйчасзапускаться автоматическипереработкаmount -o discard /dev/device /mountpoint
fstab
Конфигурация в dev/device /mountpoint xfs defaults,discard 0 0
Второй способ, /usr/sbin/fstrim -av
Используется для одновременного освобождения пространства во всех смонтированных файловых системах. fstrim
Заказ.
┌──[root@liruilongs.github.io]-[/var/lib/libvirt/images]
└─$systemctl enable --now fstrim.timer
Created symlink /etc/systemd/system/timers.target.wants/fstrim.timer → /usr/lib/systemd/system/fstrim.timer.
┌──[root@liruilongs.github.io]-[/var/lib/libvirt/images]
└─$systemctl cat fstrim.timer
# /usr/lib/systemd/system/fstrim.timer
[Unit]
Description=Discard unused blocks once a week
Documentation=man:fstrim
[Timer]
OnCalendar=weekly
AccuracySec=1h
Persistent=true
[Install]
WantedBy=timers.target
┌──[root@liruilongs.github.io]-[/var/lib/libvirt/images]
└─$systemctl cat fstrim.service
# /usr/lib/systemd/system/fstrim.service
[Unit]
Description=Discard unused blocks
[Service]
Type=oneshot
ExecStart=/usr/sbin/fstrim -av
┌──[root@liruilongs.github.io]-[/var/lib/libvirt/images]
└─$
Red Hat рекомендует использовать запланированное задание для еженедельной переработки или выполнять операции по переработке вручную по мере необходимости.
inode size
: Если вам нужно использовать Расширенные атрибуты XFS
,Рекомендуется изменить индексный дескриптор 256 Байты по умолчанию. Изменить размер на 512 байт.
mkfs.xfs -i size=512 /dev/mydevice
block size
: block size Значение по умолчанию: 4096
байт,увеличьте это значение Можетуменьшать I/O раз для улучшения производительности
mkfs.xfs -n size=8192 /dev/mydevice
RAID Alignment
d возможность указать файлы системаизразмер блока данных и ширина полосы данных блока
。
mkfs.xfs -d su=512k,sw=2 /dev/myraid
inode size
: в случаенебольшие файлы
Случаи применения,и не требует использования расширенных атрибутов,но Можетуменьшатьinode значение размера, измените значение по умолчанию 256 байт
mkfs.ext4 -I 128 /dev/mydevice //заглавная буква я
extra_isize
Включить расширение metadata,Он включен по умолчанию,еслиразмер инода меньше 256байт
,Расширение не требуется,используйте заказ ниже, чтобы отключить эту функцию
mkfs.ext4 -O ^extra_size /dev/mydeivce
large_dir
Включение этой опции может увеличить количество файлов в каждом каталоге. По умолчанию эта опция не включена.
mkfs.ext4 -O large_dir /dev/mydevice
huge_file
Поддерживает файлы размером более 2 ТБ. Этот атрибут включен по умолчанию. Для сценариев приложений с небольшими файлами эту функцию можно отключить с помощью следующей команды.
mkfs.ext4 -O ^huge_file /dev/mydevice
RAID Alignment
mkfs.ext4 -E stride=128,stripe-width=256 /dev/mydevice
Общие свойства монтирования
atime
:Разрешить доступ к файлу обновления ядрачасмеждуrelatime
:если Файл или каталог был изменен,Затем обновите время доступа к файлу,в противном случае,Система обновляет время доступа один раз в сутки,вместо обновлений в реальном времени,Эта опция используется по умолчанию в XFS и ext4файловая. система включена.noatime
:Доступ к файлу не обновленчасмеждуnodiratime
:Не обновлять каталогиздоступчасмеждуXFS
Варианты крепления
По умолчанию некоторые параметры монтажа предопределены в RHEL, но есть еще некоторые параметры, которые необходимо включить в зависимости от конкретных сценариев применения.
inode64
: Размещайте индексные дескрипторы рядом с данными, чтобы сократить время поиска на диске.logbsize=32K
:log buffer size,Значение по умолчанию:32KB,Может быть изменено на 64K, 128K, 256K.,logbsize=64Kext4 Варианты крепления:
i_version
:включать64Кусочекinodeподдерживать Функция,Полезно для расширения атрибутов данных элемента.,по умолчанию Долженсвойствоотключениз。journal_ioprio=
: Определить журнал Приоритет ввода-вывода, диапазон 0–7, 0 имеет наивысший приоритет.
Файловая система журналов может повысить эффективность восстановления данных. Каждый раз, когда в файловой системе происходят изменения данных, журналы записываются, а записи журнала удаляются после завершения операции ввода-вывода.
Поэтому, когда компьютер внезапно теряет питание и необходимо выполнить восстановление данных, нам нужно проверить только журнал (при необходимости журнал можно использовать для восстановления данных) и часть файловой системы, на которую влияет журнал, не проверяя всю файловая система.
XFS
файловая системапредоставилnorecovery
Варианты крепления,При сипользовании этой опции монтируется файловая система.,бревно будет забанен
,устанавливатьXFSфайловая Отключите автоматический процесс восстановления, когда system. Если файловая данные системы не чисты (не cleanly),Будут проблемы с согласованностью данных.,Некоторые файлы или каталоги могут быть недоступны。использоватьnorecovery
Параметрыустанавливатьфайловая систему можно монтировать только для чтения.
mount -o norecovery,ro /dev/<device> <mountpoint>
Ext3/Ext4
файловая системаизбревно
,Можно разделить на три режима работы.,Можетсуществоватьmount
устанавливатьчас,использоватьданные = параметры режима
определять。Файл находится вext4
файловая система Хранится в двух частях.:metadata
иdata
,metadata
иdata
избревно Управляется отдельноиз。
Режим по умолчанию ordered
ordered
:В этом режиме,Записывайте только краткую информацию о юанях.,без записи краткости данных
。при продолжениифайловая системадействоватьчас,файловая система сначала запишет на диск данные, которые необходимо изменить.,Затем запишите соответствующий элемент бревно данных. Это гарантирует, что перед записью бревно данных элемента,Соответствующие данные были сохранены на диске. Эта модель обеспечивает лучшую согласованность данных и хорошую производительность.writeback
:В этом режиме,Записывайте только краткую информацию о юанях.,Вместо записи кратких данных. Отличается от заказанного режима,файловая системав ходе выполненияфайловая системадействоватьчас,Измененные данные сначала будут записаны в кеш памяти (а не записаны непосредственно на диск).,Затем запишите соответствующий элемент бревно данных. Данная модель имеет более высокую производительность.,Потому что данные быстрее записываются в кеш памяти.,Но это также снижает согласованность данных.,Потому что данные, возможно, еще не были записаны на диск.journal
:В этом режиме,Предоставим полные данные и краткие записи данных в юанях. Все новые данные сначала будут записываться кратко.,Затем напишите его конечное положение. согласованность данных является лучшей в этом режиме,Потому что в случае сбоя или сбоя системы,Бревно может быть воспроизведено для восстановления согласованности данных элемента данных. Однако,По сравнению с первыми двумя режимами,производительность в журнальном режиме хуже,Потому что каждая операция записи должна сначала записать бревно.
。по умолчаниюXFSиext4
файловая системаодеялосоздаватьчас,бревнобудет размещен сфайловая система на связанных устройствах
,Когда происходит большое количество случайных записей,дискиздавление ввода-выводаотносительно большой,нас Можетдобавивбревноиданныеразделение
из Способ,来уменьшатьдискиздавление ввода-вывода
,улучшатьданные Читай и пишипроизводительность。
создаватьXFS
файловая системачас,Можетиспользоватьlogdev
спецификация опциибревнооборудование:
Используйте -l (строчная L), чтобы указать параметр журнала, установите диск журнала на sdd1 через logdev и sdc1 в качестве основного диска файловой системы.
mkfs -t xfs -l logdev=/dev/sdd1 /dev/sdc1
При монтировании также необходимо указать расположение лог-диска:
mount -o logdev=/dev/sdd1 /dev/sdc1 /mnt
Как файловая система Ext4 определяет независимые диски журналов:
В отличие от XFS, файловая система ext4 не может указывать независимое устройство журнала при монтировании.
Создать бревно диск,block размер 4 КБ
mkfs -t ext4 -O journal_dev -b 4096 /dev/sdd1
Создайте основную файловую систему sdc1 и укажите устройство журнала как sdd1.
mkfs -t ext4 -J device=/dev/sdd1 -b 4096 /dev/sdc1
Уведомление:
ext4
Расширятьбревнофайловая система Требовать,бревнофайловая системаиз block
Размер должен соответствовать размеру файла владельца системаизblock
тот же размер!Рекомендуется использовать лучшие практики при принятии решений.файловая Создать бревнофайловую систему одновременно с системой система。
Предположим, что sdc1 — это диск данных 4G, а sdd1 — устройство регистрации 128 МБ.
将一个уже经存существоватьизext4
в системеизбревно Преобразовать в автономныйизбревнооборудование,Сначала нужно проверить существующие файлы Размер блока системы:
tune2fs
это инструмент для корректировки и изменения Ext2、Ext3 и Ext4 Инструмент командной строки для параметров файловой системы. Используя Tune2fs вы можете изменить файлы система различных атрибутов и опций для удовлетворения конкретных потребностей.
┌──[root@liruilongs.github.io]-[/var/lib/libvirt/images]
└─$tune2fs -l /dev/sdc1
… …
Block size: 4096
… …
Создайте файловую систему журнала того же размера, создайте файловую систему Ext4 на /dev/sdd1 и включите функцию журнала.
[root@serverX ~]# mkfs -t ext4 -O journal_dev /dev/sdd1
Отключите файловую систему: это отключит файловую систему /dev/sdc1 для последующих настроек файловой системы.
[root@serverX ~]# umount /dev/sdc1
Измените характеристики файловой системы: удалите существующие характеристики журнала из файловой системы /dev/sdc1, чтобы к ней можно было добавить новое устройство журнала.
[root@serverX ~]# tune2fs -O '^has_journal' /dev/sdc1
Добавьте устройство журнала. Добавьте устройство журнала в файловую систему /dev/sdc1 и используйте /dev/sdd1 в качестве устройства журнала.
[root@serverX ~]# tune2fs -j -J device=/dev/sdd1 /dev/sdc1
#-j Добавить устройство бревно, -J Укажите параметры бревно устройства
© Авторские права на ссылки в этой статье принадлежат оригинальному автору. Если есть какие-либо нарушения, пожалуйста, сообщите нам :)
《 Red Hat Performance Tuning 442 》
© liruilonger@gmail.com, 2018–2024. Все права сохранены. Attribution-NonCommercial-ShareAlike (CC BY-NC-SA 4.0).