| Секция | Вид | Параметр | Возможные значения |
|---|
defaults |
defaults {
user_friendly_names yes
find_multipaths yes
polling_interval 10
path_selector "round-robin 0"
path_grouping_policy multibus
failback immediate
no_path_retry fail
}
CODE
| verbosity | Уровень детализации по умолчанию. Чем выше значение, тем выше уровень детализации. Допустимые уровни — от 0 до 6. Значение по умолчанию —2 |
polling_interval | Интервал (в секундах) проверки состояния путей (например, 10 — проверка каждые 10 секунд). Значение по умолчанию —5 |
max_polling_interval | Максимальный интервал (в секундах) проверки состояния путей. Значение по умолчанию —4*polling_interval |
reassign_maps | Переназначение карт device-mapper. При использовании этой опции multipathd будет переназначать существующие карты device-mapper так, чтобы они всегда указывали на устройство multipath, а не на базовые блочные устройства. Значение по умолчанию —no |
path_selector | Алгоритм выбора пути: ound-robin — циклический выбор всех активных путей;queue-length 0 — выбор пути с наименьшей очередью;service-time 0 — выбор пути с минимальным временем обслуживания;historical-service-time 0 — выбор пути с минимальным временем обслуживания за все время.
Значение по умолчанию —service-time 0 |
path_grouping_policy | Политика группировки путей: failover — 1 путь на приоритетную группу;multibus — все доступные пути на 1 приоритетную группу;group_by_serial — 1 приоритетная группа на серийный номер;group_by_prio — 1 приоритетная группа на значение приоритета пути;group_by_node_name — 1 приоритетная группа на целевое имя узла;- group_by_tpg — 1 приоритетная группа на группу целевых портов ALUA.
Значение по умолчанию —failover |
detect_pgpolicy | yes — если все устройства пути настроены с использованием приоритезатора или sysfs, то устройство с несколькими путями будет автоматически использовать policy_grouping_by_prio;no — будет установлено значение policy_grouping_by_prio usual.
Значение по умолчанию — |
detect_pgpolicy_use_tpg
| если для данного параметра и параметра detect_pgpolicy установлено значение yes и все устройства пути настроены с использованием приоритезатора alua или sysfs, то устройство с несколькими путями будет автоматически использовать параметр group_by_tpg path_grouping_policy. если установлено значение no, то параметр path_grouping_policy будет выбран методом, описанным выше для detect_pgpolicy. Значение по умолчанию —no |
uid_attrs
| При выборе этого параметра активируется объединение uevents по WWID. Значение этого параметра представляет собой разделенный пробелами список записей вида type:ATTR, где type соответствует началу имени узла устройства (например, sd:ATTR соответствует sda), а ATTR — это имя свойства udev, которое используется для сопоставления устройств. если этот параметр настроен и совпадает с именем узла устройства, он переопределяет все остальные настроенные методы определения WWID для этого устройства
Этот параметр нельзя изменить во время выполнения с помощью команды multipathd reconfigure.
|
uid_attribute
| Параметр udev, предоставляющий уникальный идентификатор пути (WWID). если для uid_attribute задана пустая строка, определение WWID выполняется с помощью метода sysfs, а не udev (не рекомендуется использовать в рабочей среде). Значение по умолчанию: ID_SERIAL — для устройств SCSI;ID_UID — для устройств DASD;ID_WWN — для устройств NVMe
|
prio | Функция вызова для определения значения приоритета маршрута: const — устанавливает приоритет 1 для всех маршрутов;sysfs — используются параметры sysfs access_state и preferred_path. Этот механизм определения приоритета принимает необязательный параметр prio_arg exclusive_pref_bit;emc — приоритет маршрута для массивов EMC;alua — приоритет маршрута на основе установок ALUA для SCSI-3;ontap — приоритет пути для массивов NetApp ONTAP FAS/AFF и массивов с новым брендом, работающих в собственном режиме ONTAP;rdac — приоритет маршрута для контроллеров LSI/Engenio RDAC;hp_sw — приоритет маршрута для контроллеров Compaq/HP в активно/резервном режиме;hds — приоритет маршрута для дисковых массивов Hitachi HDS Modular;random — случайное значение приоритета между 1 и 10;weightedpath — приоритет пути на основе регулярного выражения и приоритета, указанного в качестве аргумента. Требуется prio_args;path_latency — приоритет пути на основе алгоритма задержки. Требуется prio_args;ana — приоритет пути на основе настроек NVMe ANA;datacore —приоритет пути для некоторых массивов хранилища DataCore. Требуется prio_args; — приоритет пути для целевых объектов iSCSI на основе IP-адреса. Требуется prio_args.
Значение по умолчанию зависит от параметра detect_prio: если detect_prio имеет значение yes (по умолчанию), то алгоритмом приоритета по умолчанию является sysfs (кроме NetAPP серии E/EF, где используется alua). если detect_prio имеет значение no, то алгоритмом приоритета по умолчанию является const |
prio_args
| Строка аргументов, передаваемая в функцию prio. Большинство функций prio не требуют аргументов. Установщик приоритетов datacore требует один. Например, timeout=1000 preferredsds=foo. Значение по умолчанию — (null) "" |
features
| Функции device-mapper, которые будут использоваться. Синтаксис — num list, где num — это количество объектов в списке от 0 до 8. Возможные значения для списка объектов: queue_if_no_path — приоритизация ввода-вывода, если ни один путь не активен. Аналогично no_path_retry со значением queue. если установлены и эта функция, и no_path_retry, приоритет отдается последней;pg_init_retries <times> — количество повторных попыток pg_init должно быть в диапазоне от 1 до 50;pg_init_delay_msecs <msecs> — количество миллисекунд до повторной попытки pg_init. Должно быть в диапазоне от 0 до 60 000;queue_mode <mode> — режим очереди для многоканального устройства.
Значение по умолчанию —0 |
path_checker
| Метод по умолчанию для получения статуса пути. Возможные значения: readsector0 — читает первый сектор устройства;tur — передает TEST UNIT READY устройству;emc_clariion — запрашивает у EMC Clariion специфическую страницу EVPD 0xC0;hp_sw — определяет статус маршрута массива носителей HP с использованием микропрограммного статуса Активный/Резервный;rdac — определяет статус маршрута для контроллера хранилища LSI/Engenio RDAC;directio — использует прямое чтение первого сектора;cciss_tur — состояние пути для контроллеров HP/COMPAQ Smart Array (CCISS);none — не проверяется устройство, используются значения, полученные из sysfs.
Значение по умолчанию —tur |
alias_prefix
| Префикс user_friendly_names. Значение по умолчанию —mpath |
failback
| Поведение при восстановлении пути: immediate — немедленное переключение на восстановленный путь;manual — переключение вручную;followover — используется для работы с несколькими компьютерами, обращающимися к одним и тем же активным/пассивным устройствам хранения данных;- интервал (в секундах) — задержка в секундах перед переключением.
Значение по умолчанию —manual |
rr_min_io
| Количество запросов ввода/вывода для переключения пути на другой в текущей группе путей. Значение по умолчанию —1000 |
rr_min_io_rq
| Количество запросов ввода-вывода, которые необходимо направить по пути, прежде чем переключиться на следующий путь в той же группе. Значение по умолчанию —1 |
max_fds
| Максимальное количество дескрипторов, которое может быть открыто multipath и сервисом multipathd. Это эквивалент команде ulimit -n. Значение максимума установится в качестве системного ограничения в файле /proc/sys/fs/nr_open. если значение не установлено, максимальное количество дескрипторов открытых файлов берется из вызывающего процесса, обычно значение равно 1024. Для безопасности, стоит установить значение по максимальному количеству путей + 32, если это значение больше 1024. Значение по умолчанию —max |
rr_weight
| - если указано
, то вместо о
Значение по умолчанию — uniform |
no_path_retry
| Количество попыток системы использовать поврежденный маршрут до отключения. Значение fail указывает на немедленное отключение, без запросов. Значение queue указывает на безостановочный опрос маршрута до его восстановления. Значение по умолчанию — 0 |
queue_without_daemon | если установлено no, сервис multipathd отключит опрос всех устройств, когда они выключены. Значение по умолчанию — yes |
checker_timeout
| Время ожидания, используемое для проверки путей и определения приоритета, в секундах |
allow_usb_devices
| если установлено значение no, все USB-устройства будут пропускаться при поиске пути. Значение по умолчанию — no |
flush_on_last_del
| always — multipathd отключит очередь, когда будет удален последний путь к устройству;never — multipathd не будет отключать очередь, когда будет удален последний путь к устройству. Поскольку multipath не может безопасно удалить устройство, пока включена очередь, установка значения never означает, что multipathd не будет автоматически удалять неиспользуемое устройство multipath, все пути к которому удалены, если в данный момент установлено значение queue_if_no_path;unused — multipathd отключит очередь только после удаления последнего пути, если в данный момент не открыто ни одно устройство multipath или любое из устройств разделов kpartx, расположенных над ним.
Значение по умолчанию —unused |
user_friendly_names
| — устройства именуются в формате mpathN (/dev/mapper/mpath0);no — используются WWID (уникальные идентификаторы устройств)
Рекомендуется использовать yes для удобства.
Значение по умолчанию —no |
fast_io_fail_tmo
| количество секунд, в течение которых уровень SCSI будет ожидать после обнаружения проблемы на удаленном порту FC, прежде чем прервать ввод-вывод на устройствах этого удаленного порта. Это значение должно быть меньше, чем dev_loss_tmo. если установить значение off, тайм-аут будет отключен Значение по умолчанию —5 |
dev_loss_tmo
| Количество секунд, которое интерфейс SCSI будет ждать после обнаружения проблемы на удаленном порту до удаления его из системы. При установке значения будет использован интервал в 2147483647 сек. (68 лет) |
eh_deadline
| Максимальное количество секунд, в течение которых уровень SCSI будет обрабатывать ошибки при сбое устройств SCSI. По истечении этого времени ожидания уровень SCSI выполнит полную перезагрузку HBA |
max_retries
| Максимальное количество повторных попыток выполнения команд ввода-вывода для некоторых типов ошибок SCSI, прежде чем будет возвращено сообщение об ошибке |
log_checker_err
| если установлено значение once, multipathd регистрирует первую ошибку проверки пути на уровне ведения журнала 2. Все последующие ошибки регистрируются на уровне 3 до тех пор, пока устройство не будет восстановлено. если установлено значение always, multipathd всегда регистрирует ошибку проверки пути на уровне ведения журнала 2 |
reservation_key
| Ключ резервирования служебных действий, используемый mpathpersist |
retain_attached_hw_handler
| если установлено значение yes и уровень SCSI уже подключил hardware_handler к устройству, multipath не будет принудительно использовать hardware_handler, указанный в /etc/multipath.conf. если уровень SCSI не подключил аппаратный обработчик, multipath продолжит использовать настроенный аппаратный обработчик |
detect_prio
| если установлено значение yes, multipath попытается определить, поддерживает ли устройство SCSI-3 ALUA. если да, то устройство будет автоматически использовать систему приоритизации sysfs, если поддерживаются необходимые атрибуты sysfs access_state и preferred_path, или систему приоритизации alua, если нет. если установлено значение , система приоритизации будет выбрана обычным образом. Значение по умолчанию —yes |
detect_checker
| если установлено значение yes, multipath попытается определить, поддерживает ли устройство SCSI-3 ALUA. если установлено значение no, то проверка будет выполняться в обычном режиме. Значение по умолчанию —yes |
force_sync
| если установлено значение yes, multipathd будет вызывать средства проверки путей только в синхронном режиме. Это означает, что одновременно будет работать только одно средство проверки. Это полезно в тех случаях, когда параллельная работа множества средств проверки multipathd приводит к значительной нагрузке на процессор. Значение по умолчанию —no |
strict_timing
| если установлено значение yes, multipathd будет запускать новый цикл проверки путей ровно через одну секунду, так что каждая проверка пути будет выполняться ровно через polling_interval секунд. В системах с высокой нагрузкой проверка путей может занимать больше одной секунды; в этом случае недостающие такты будут учтены в следующем раунде. если проверка путей занимает больше polling_interval секунд, будет выведено предупреждение. Значение по умолчанию —no |
deferred_remove
| если установлено значение yes, multipathd будет выполнять отложенное удаление вместо обычного, когда будет удалено последнее устройство пути. Это означает, что если устройство multipath все еще используется, оно будет освобождено, когда его закроет последний пользователь. если путь будет добавлен к устройству multipath до того, как его закроет последний пользователь, отложенное удаление будет отменено. Значение по умолчанию —no |
partition_delimiter
| Определяет, как multipath выбирает имена устройств разделов в картах multipath при переименовании карты multipath |
san_path_err_threshold
| если установлено значение больше 0, multipathd будет отслеживать пути и проверять, сколько раз путь прерывался из-за ошибок. если количество прерываний на определенном пути превышает значение san_path_err_threshold, то путь не будет восстановлен до тех пор, пока не истечет время san_path_err_recovery_time. Значение по умолчанию —no |
san_path_err_forget_rate
| если установлено значение больше 0, multipathd будет проверять, не превысили ли сбои в работе пути значение san_path_err_threshold за это количество проверок, то есть san_path_err_forget_rate . если это так, путь не будет восстанавливаться до san_path_err_recovery_time. Значение по умолчанию —no |
san_path_err_recovery_time
| если установлено значение больше 0, multipathd будет следить за тем, чтобы при превышении san_path_err_threshold в течение san_path_err_forget_rate путь переводился в состояние сбоя на время san_path_err_recovery_time. По истечении san_path_err_recovery_time будет путь, находившийся в состоянии сбоя. Значение san_path_err_recovery_time должно быть указано в секундах. Значение по умолчанию —no |
marginal_path_double_failed_time | Один из параметров проверки вспомогательного пути на основе учета ошибок ввода-вывода, таких как периодические ошибки. если в течение marginal_path_double_failed_time секунд происходит сбой пути из-за ошибки ввода-вывода и при этом заданы все остальные три параметра, multipathd откажет в доступе к пути и поместит его в очередь, участникам которой отправляется пара непрерывных асинхронных операций прямого чтения с фиксированной частотой дискретизации 10 Гц для запуска процесса учета ошибок ввода-вывода. Значение по умолчанию —no |
marginal_path_err_sample_time | Один из параметров проверки вспомогательного пути на основе учета ошибок ввода-вывода, таких как периодические ошибки. если для него задано значение не менее 120, то, когда событие сбоя пути происходит дважды в секунду из-за ошибки ввода-вывода, multipathd завершает поиск пути и помещает этот путь в очередь, членам которой отправляются несколько асинхронных IOS с непрерывным прямым чтением с фиксированной частотой дискретизации 10 Гц. Для запуска процесса учета ввода-вывода для пути потребуется время . если частота ошибок ввода-вывода на определенном пути превышает пороговое значение marginal_path_err_rate, то путь не будет восстановлен в течение нескольких секунд , если только не существует только одного активного пути. По истечении срока действия marginal_path_err_recheck_gap_time путь будет помещен в очередь на повторную проверку. если результат проверки будет удовлетворительным, путь будет восстановлен. Значение по умолчанию —no |
marginal_path_err_rate_threshold | Один из параметров проверки вспомогательного пути на основе учета ошибок ввода-вывода, таких как периодические ошибки. если частота ошибок ввода-вывода на определенном пути превышает этот параметр, то путь не будет восстановлен в течение marginal_path_err_recheck_gap_time секунд, если только не будет активен только один путь. Значение по умолчанию —no |
marginal_path_err_recheck_gap_time | Один из параметров проверки вспомогательного пути на основе учета ошибок ввода-вывода, таких как периодические ошибки. если для этого параметра задано положительное значение, то путь, на котором частота ошибок ввода-вывода превышает marginal_path_err_rate_threshold, будет оставаться в состоянии сбоя в течение marginal_path_err_recheck_gap_time секунд. По истечении времени marginal_path_err_recheck_gap_time в секундах путь будет повторно поставлен в очередь на проверку. если результат проверки будет удовлетворительным, путь будет восстановлен. Значение по умолчанию —no |
marginal_pathgroups | off — параметры delay_*_checks, marginal_path_* и san_path_err_* не позволят восстановить неустойчивые пути до тех пор, пока они не будут отслеживаться в течение некоторого времени;on — когда один из методов определения пути определяет, что путь является неустойчивым, он будет восстановлен и помещен в отдельную группу путей, которая будет использоваться только после того, как сначала будут опробованы все устойчивые группы путей;fpin — multipathd будет получать уведомления о fpin, соответственно, устанавливать для состояние пути — и , как описано в разделе on.
Значение по умолчанию —off |
find_multipaths | Определяет, будут ли multipath и multipathd пытаться создавать карты multipath для устройств, не занеснных в blacklist: strict — и multipath, и multipathd рассматривают в качестве устройств с мультиплексированием только те устройства, которые ранее были частью карты и поэтому перечислены в файле wwids_file;off — multipath работает как strict. Multipathd работает как greedy. no или 0 принимается как псевдоним для off;on — multipathd, и multipath рассматривают устройство как многопутевое, если соблюдены условия strict или если обнаружено хотя бы два пути, не занесенных в blacklist, с одинаковым WWID. yes или 1 принимается как псевдоним для on;greedy — и multipathd, и multipath рассматривают каждое устройство, не занесенное в blacklist, как устройство с мультипутем;smart —отличается от find_multipaths только тем, как обрабатываются новые устройства, для которых пока обнаружен только один путь. При первом обнаружении такого устройства в правилах udev оно рассматривается как устройство с несколькими путями. multipathd ожидает появления дополнительных путей с тем же WWID. если это происходит, он создает карту нескольких путей. если этого не происходит до истечения времени ожидания или если настройка карты завершается сбоем, для устройства запускается новое событие udev. При повторном обнаружении в правилах udev устройство будет считаться не поддерживающим несколько путей и будет передано на более высокие уровни.
Значение по умолчанию —strict |
find_multipaths_timeout | Таймаут в секундах для ожидания дополнительных путей после обнаружения первого, если установлено значение find_multipaths smart. Значение по умолчанию — -10 (10 секунд для известного оборудования и 1 секунда для неизвестного) |
uxsock_timeout | Таймаут приема команд CLI в миллисекундах. Значение по умолчанию — 4000 |
retrigger_tries | Количество попыток, которые multipathd будет предпринимать для повторного запуска uevent для получения WWID. Значение по умолчанию — 3 |
retrigger_delay | Время в секундах, в течение которого будет происходить повторная активация. Значение по умолчанию — 10 |
missing_uev_wait_timeout | Сколько секунд multipathd будет ждать после создания нового устройства, чтобы получить от udev событие об изменении устройства, прежде чем автоматически включить перезагрузку устройства. Значение по умолчанию — 30 |
skip_kpartx | yes — kpartx не будет автоматически создавать разделы на устройстве;no — kpartx будет автоматически создавать разделы на устройстве.
Значение по умолчанию — no |
remove_retries | Количество попыток, которые multipath будет предпринимать для удаления используемого устройства. Между каждой попыткой multipath будет ждать 1 секунду. Значение по умолчанию — 0 |
max_sectors_kb | Максимальный размер ввода-вывода, который ядро допускает для одного запроса ввода-вывода. Для аппаратных устройств, таких как диски SCSI, это значение ограничено возможностями оборудования
Значение в карте с несколькими путями не должно превышать минимальное значение для всех устройств пути.
|
ghost_delay | Количество секунд, в течение которых multipath будет ждать после создания устройства, содержащего только «призрачные» пути, прежде чем пометить его как готовое к использованию в systemd. если установить значение 0 или no, multipath немедленно пометит устройство, содержащее только «призрачные» пути, как готовое. Значение по умолчанию — no |
no_path_retry | Действие при отсутствии доступных путей: fail — немедленная ошибка;queue — ожидание восстановления путей;- — количество попыток перед возвратом ошибки
|
auto_resize
| Определяет, когда multipathd будет автоматически изменять размер устройства: never — размер устройств всегда должен изменяться вручную с помощью команды multipathd resize map <name>;grow_only — при обнаружении, что размер всех путей устройства увеличился, он автоматически увеличит размер устройства до нового значения;grow_shrink — при обнаружении, что размер всех путей устройства уменьшился, он автоматически уменьшит размер устройства до нового значения.
Значение по умолчанию —never |
enable_foreign
| Регулярное выражение, включающее сторонние библиотеки |
recheck_wwid | yes — при восстановлении пути, по которому произошел сбой, его WWID проверяется повторно. Также проверяется WWID пути, если он добавляется вручную;no — WWID не проверяется
Значение по умолчанию — no |
blacklist |
blacklist {
devnode "^sda"
wwid "3600.*"
}
CODE
| devnode | Регулярное выражение для исключения устройств (например, ^sda для исключения локального диска) |
wwid | Исключение по уникальному идентификатору устройства (WWID) |
device | Регулярное выражение для исключения устройств по vendor и product |
property | Регулярное выражение для исключения устройств по udev |
protocol | Регулярное выражение для исключения устройства по протоколу |
blacklist_exceptions |
blacklist_exceptions {
devnode "^sda"
wwid "3600508b1001c.*"
}
CODE
| devnode | Регулярное выражение для исключения устройств из blacklist (например, ^sda для исключения локального диска) |
wwid | Исключение из blacklist по уникальному идентификатору устройства (WWID) |
device | Регулярное выражение для исключения устройств из blacklist по vendor и product |
property | Регулярное выражение для исключения устройств из blacklist по udev |
protocol | Регулярное выражение для исключения устройства из blacklist по протоколу |
multipath
Атрибуты, заданные в секции multipath , имеют приоритет над всеми остальными настройками конфигурации, в том числе над настройками из секции overrides. если нескольким подразделам multipath соответствует один и тот же WWID, содержимое этих разделов объединяется, а настройки из более поздних записей приоритетнее предыдущих.
|
multipath {
wwid 1DEC_____321816758474
alias red
rr_weight priorities
}
CODE
| wwid | Уникальный идентификатор устройства, для которого применяется параметр (WWID) |
alias | Символическое имя для устройства, для которого применяется параметр. Имеет приоритет над записью для того же WWID в файле bindings_file |
path_grouping_policy;path_selector;prio;prio_args;failback;rr_weight;no_path_retry;rr_min_io;rr_min_io_rq;flush_on_last_del;features;reservation_key;user_friendly_names;deferred_remove;san_path_err_threshold;san_path_err_forget_rate;san_path_err_recovery_time;marginal_path_err_sample_time;marginal_path_err_rate_threshold;marginal_path_err_recheck_gap_time;marginal_path_double_failed_time;delay_watch_checks;delay_wait_checks;skip_kpartx;max_sectors_kb;ghost_delay
| Необязательные параметры. если они не заданы, значения берутся из секций devices, overrides или defaults |
devices |
devices {
device {
vendor "DELL"
product "MD36.*"
path_grouping_policy group_by_prio
path_selector "round-robin 0"
no_path_retry 5
}
}
CODE
| vendor | Имя производителя устройства |
product | Название продукта устройства |
revision | Идентификатор версии устройства |
product_blacklist | Регулярное выражение для блокировки устройства по его названию |
alias_prefix | Префикс user_friendly_names, который следует использовать для этого типа устройств вместо стандартного mpath |
vpd_vendor | Информация о странице vpd конкретного производителя |
path_grouping_policy;uid_attribute;path_selector;path_checker;prio;prio_args;features;failback;rr_weight;no_path_retry;rr_min_io;rr_min_io_rq;fast_io_fail_tmo;dev_loss_tmo;eh_deadline;flush_on_last_del;user_friendly_names;retain_attached_hw_handler;detect_prio;detect_checker;deferred_remove;san_path_err_threshold;san_path_err_forget_rate;san_path_err_recovery_time;marginal_path_err_sample_time;marginal_path_err_rate_threshold;marginal_path_err_recheck_gap_time;marginal_path_double_failed_time;delay_watch_checks;delay_wait_checks;skip_kpartx;max_sectors_kb;ghost_delay;all_tg_pt
| Необязательные параметры. если они не заданы, значения берутся из секции defaults |
overrides |
| path_grouping_policy;uid_attribute;path_selector;path_checker;alias_prefix;features;prio;prio_args;failback;rr_weight;no_path_retry;rr_min_io;rr_min_io_rq;flush_on_last_del;fast_io_fail_tmo;dev_loss_tmo;eh_deadline;user_friendly_names;retain_attached_hw_handler;detect_prio;detect_checker;deferred_remove;san_path_err_threshold;san_path_err_forget_rate;san_path_err_recovery_time;marginal_path_err_sample_time;marginal_path_err_rate_threshold;marginal_path_err_recheck_gap_time;marginal_path_double_failed_time;delay_watch_checks;delay_wait_checks;skip_kpartx;max_sectors_kb;ghost_delay;all_tg_pt
| Необязательные параметры. если они не заданы, значения берутся из секций devices или defaults
|