4.3. Секция defaults

Секция defaults файла /etc/multipath.conf устанавливает исходные значения параметров.
defaults {
        user_friendly_names yes
}
В этом примере исходное значение user_friendly_names будет переопределено.
Файл конфигурации включает шаблоны настроек, которые выглядят так:
#defaults {
#       udev_dir                /dev
#       polling_interval        5
#       path_selector           "round-robin 0"
#       path_grouping_policy    failover
#       getuid_callout          "/lib/dev/scsi_id --whitelisted --device=/dev/%n"
#	prio			const
#	path_checker		directio
#	rr_min_io		1000
#	rr_weight		uniform
#	failback		manual
#	no_path_retry		fail
#	user_friendly_names	no
#}
Чтобы переопределить исходные значения, скопируйте соответствующую строку из шаблона в секцию defaults и снимите комментарий. Например, чтобы изменить значение параметра path_grouping_policy с failover на multibus, скопируйте строку из шаблона в секцию defaults и снимите комментарий.
defaults {
        user_friendly_names     yes
        path_grouping_policy    multibus
}
Таблица 4.1, «Используемые по умолчанию параметры» перечисляет атрибуты, определяемые в секции defaults файла multipath.conf. DM-Multipath будет использовать эти значения до тех пор, пока они не будут переопределены в секциях devices и multipaths.

Примечание

В Red Hat Enterprise Linux 6.0 параметры mode, uid и gid официально объявлены устаревшими. Теперь разрешения многоканальных устройств могут быть настроены при помощи udev. Дополнительно в каталоге /usr/share/doc/device-mapper-версия доступен шаблон — 12-dm-permissions.rules — который можно использовать в качестве основы, разместив его в /etc/udev/rules.d.

Таблица 4.1. Используемые по умолчанию параметры

Атрибут Описание
polling_interval Задает интервал между проверками пути (в секундах). Если путь работает нормально, интервал будет постепенно увеличиваться до четырехкратного значения polling_interval. По умолчанию: 5.
udev_dir Задает каталог, в котором будут создаваться устройства udev. По умолчанию используется /dev.
multipath_dir Каталог для хранения общих динамических объектов. По умолчанию используется /lib/multipath.
find_multipaths
Определяет режим настройки многоканальных устройств. Если задано значение yes, метаустройства не будут создаваться для путей, не внесенных в черный список. Устройства будут созданы только в одном из следующих случаев:
- существует по крайней мере два пути с одним и тем же WWID, не указанных в списке исключений;
- пользователь создает устройство вручную с помощью multipath;
- путь имеет тот же WWID что и созданное ранее метаустройство. Каждый раз при создании многопутевого устройства с установленным параметром find_multipaths, WWID устройства будет запомнен, чтобы в дальнейшем иметь возможность создания устройства при обнаружении пути с этим идентификатором. Это помогает автоматически выбрать пути для агрегации без необходимости редактирования списка исключений. Раздел 4.2, «Секция blacklist» объясняет, что делать, если многоканальные устройства были созданы, в то время как параметр find_multipaths не был определен.
По умолчанию: no.
verbosity Исходная степень детализации вывода (от 0 до 6). Чем выше значение, тем подробнее вывод. По умолчанию: 2.
path_selector
Алгоритм выбора пути для обработки следующего запроса ввода-вывода.
round-robin 0: последовательный перебор путей в группе для обработки равных объемов запросов.
queue-length 0: передача группы запросов пути с наименьшим числом ожидающих обработки запросов.
service-time 0: передача следующей группы запросов пути с кратчайшим временем обслуживания, что определяется посредством деления суммарного размера ожидающих обслуживания запросов на пропускаемость пути.
По умолчанию: round-robin 0.
path_grouping_policy
Правила агрегации маршрутов. Возможные значения:
failover: один путь на группу.
multibus: все допустимые маршруты в одну группу.
group_by_serial: по обнаруженному серийному номеру.
group_by_prio: по значению приоритета пути. Приоритет определяется вызывающими программами и задается с помощью параметров.
group_by_node_name: по имени узла. Имена регистрируются в /sys/class/fc_transport/target*/node_name.
По умолчанию: failover.
getuid_callout
Задает программу и аргументы, используемые для получения уникального идентификатора пути. Необходимо указать абсолютный путь.
По умолчанию используется /lib/udev/scsi_id --whitelisted --device=/dev/%n.
prio
Задает функцию, которая по умолчанию вызывается для получения приоритета пути. Так, например, биты ALUA в SPC-3 предоставляют значение prio. Возможные значения:
const: приоритет всех путей равен 1.
emc: генерация приоритета пути для массивов EMC.
alua: генерация приоритета исходя из настроек SCSI-3 ALUA.
tpg_pref: генерация приоритета исходя из настроек SCSI-3 ALUA с учетом разряда предпочитаемого порта.
ontap: генерация приоритета пути для массивов NetApp.
rdac: генерация приоритета пути для RDAC-контроллера LSI/Engenio.
hp_sw: генерация приоритета пути для контроллера Compaq/HP в активном и спящем режиме.
hds: генерация приоритета пути для дисковых массивов Hitachi HDS.
По умолчанию используется значение const.
features Дополнительные возможности. Единственное допустимое на данный момент значение — queue_if_no_path, что аналогично присвоению no_path_retry значения queue. Раздел 5.6, «Ошибки «queue_if_no_path»» содержит информацию о потенциальных проблемах использования этой возможности.
path_checker
Задает метод проверки пути. Возможные значения:
readsector0: чтение первого сектора устройства.
tur: вызов команды TEST UNIT READY для устройства.
emc_clariion: запрос определения пути к странице 0xC0 EPVD систем EMC Clariion.
hp_sw: проверка состояния пути для дисковых массивов HP с драйверами в активном или спящем режиме.
rdac: проверка состояния пути для контроллера RDAC LSI/Engenio.
directio: чтение первого сектора посредством прямого ввода-вывода.
По умолчанию: directio.
failback
Разрешает переключать группы путей в случае сбоя.
Значение immediate вызывает немедленный выбор группы путей с наиболее высоким приоритетом.
Значение manual обозначает, что переключение должно быть выполнено вручную.
Значение followover вызывает автоматическое переключение в момент активации первого пути в группе.
Положительное число задаст время (в секундах), по истечении которого будет выполнено переключение.
По умолчанию используется значение manual.
rr_min_io Число запросов ввода и вывода, которые будут переданы этому маршруту, прежде чем будет выбран следующий путь в текущей группе. Этот параметр может использоваться только для ядер версий 2.6.31 и более ранних; другие версии должны использовать rr_min_io_rq. По умолчанию будет обработано 1000 запросов.
rr_min_io_rq Число запросов ввода и вывода, которые будут переданы этому маршруту, прежде чем будет выбран следующий путь в текущей группе. Этот параметр должен использоваться для ядер, начиная с версии 2.6.31; другие версии должны использовать rr_min_io_io. По умолчанию его значение равно 1.
rr_weight Если имеет значение priorities, то число отправляемых одному пути запросов будет определяться значением rr_min_io, умноженным на приоритет маршрута (который определяется функцией prio). Следующий путь будет выбран с помощью path_selector. По умолчанию используется значение uniform (т.е. все пути равноправны).
no_path_retry
Числовое значение задает число попыток использования проблемного маршрута, прежде чем запросы прекратят поступление в его очередь.
Значение fail подразумевает немедленный отказ без ожидания.
Значение queue обозначает, что поступление запросов не должно прекращаться.
По умолчанию используется значение 0.
user_friendly_names Если имеет значение yes, система будет использовать файл /etc/multipath/bindings для присвоения уникального имени многоканальному устройству в формате mpathn. Значение no обозначает, что вместо имени будет использоваться идентификатор WWID. Имена в секции multipaths файла конфигурации переопределят значение этого параметра. По умолчанию используется значение no.
queue_without_daemon Значение no обозначает, что запросы перестанут добавляться в очередь при остановке процесса multipathd. По умолчанию используется значение no.
flush_on_last_del Если установлен в yes, multipathd отключит возможность добавления в очередь, если удален последний путь к устройству. По умолчанию используется значение no.
max_fds Максимальное число открытых файловых дескрипторов, что эквивалентно команде ulimit -n. По умолчанию равно max, что наследует системные настройки из /proc/sys/fs/nr_open. Для выпусков, предшествующих Red Hat Enterprise Linux 6.3, значение будет наследоваться из вызывающего процесса (обычно равно 1024). Если же число превышает 1024, рекомендуется использовать максимальное число путей плюс 32.
checker_timeout Время ожидания механизмов проверки путей, выполняющих команды scsi (в секундах). По умолчанию будет унаследовано значение из sys/block/sdx/device/timeout.
fast_io_fail_tmo Время ожидания (в секундах) после обнаружения конфликта удаленного порта, по истечении которого будет зарегистрирован сбой запросов ввода-вывода. Величина не должна превышать dev_loss_tmo. Значение off отключит эту функциональность. Исходное значение определяется операционной системой.
dev_loss_tmo Время ожидания (в секундах) после обнаружения конфликта удаленного порта, по истечении которого он будет исключен из системы. Значение «infinity» снимет ограничения, присвоив значение 2147483647 секунд, что составляет 68 лет. Исходное значение определяется операционной системой.
hwtable_regex_match
(Red Hat Enterprise Linux Release 6.3 и последующие версии) Определяет, как будет осуществляться интеграция конфигурации устройств из секции devices со встроенными настройками.
На базе настроек в секции devices будет создана новая конфигурация устройства или изменены встроенные настройки. До выхода Red Hat Enterprise Linux 6.3, если строки производителя, продукта и версии в пользовательских настройках совпадали со встроенной конфигурацией, встроенная конфигурация соответственно изменялась. В противном случае варианты рассматривались как отдельные конфигурации.
Если hwtable_regex_match имеет значение yes, будет использоваться подстановка регулярных выражений в определениях производителя, продукта и версии. Соответствующие пользовательские настройки устройства будут сопоставлены встроенным. Если они совпадают, встроенная конфигурация будет изменена в соответствии с пользовательскими настройками. В противном случае они будут рассматриваться как разные конфигурации.
retain_attached_hw_handler (Red Hat Enterprise Linux Release 6.4 и последующие версии) Если установлен в yes, и метаустройству уже сопоставлен аппаратный обработчик, устройство может не использовать hardware_handler, заданный в mutipath.conf. Если же аппаратный обработчик не был назначен, будет по-прежнему использоваться уже настроенный обработчик. По умолчанию используется значение no.
detect_prio Если установлен в yes, будет проверено наличие поддержки ALUA. Если устройство поддерживает ALUA, ему будет автоматически присвоен индикатор приоритета alua. По умолчанию используется значение no.