X

News, tips, partners, and perspectives for the Oracle Solaris operating system

Настройка поддержки фильтра пакетов IP для отказоустойчивых служб при помощи пакета Solaris Cluster 3.2

Guest Author

Для получения дополнительных сведений о функции фильтрации пакетов IP рекомендую ознакомится с Руководством по администрированию системы Solaris 10.  Данная статья не входит в состав текущей документации по Solaris Cluster 3.2, но будет включена в нее в следующем исправлении.

Фильтр пакетов IP в Solaris 10 (выпуски вплоть до Solaris 10 11/06 (обновление 3)) является модулем STREAMS, который должен в любом потоке ввода-вывода располагаться непосредственно под IP-адресом. Службы SMF network/pfil и network/ipfilter автоматически подключают модуль pfil (на основе /etc/ipf/pfil.ap) и загружают правила фильтрации (из /etc/ipf/ipf.conf) при загрузке системы. Правила фильтрации могут быть основаны на интерфейсе, IP-адресах/подсетях, протоколах и портах.

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

Действие 1

Измените файл /etc/iu.ap, чтобы в строках, соответствующих общедоступным сетевым контроллерам, в качестве списка модулей было указано "clhbsndr pfil". Для вступления изменений в силу необходимо перезагрузить узлы. Узлы могут быть перезагружены по очереди.

Обратите внимание, что "pfil" должен быть последним модулем в списке.

пример: # scstat -i -h `uname -n`

-- Группы IPMP --

 Имя узла Группа Состояние Адаптер Состояние
 Группа IPMP: node1 sc_ipmp1 Оперативное ce2 Оперативное
 Группа IPMP: node1 sc_ipmp1 Оперативное bge2 Оперативное
 Группа IPMP: node1 sc_ipmp0 Оперативноеce0 Оперативное
 Группа IPMP: node1 sc_ipmp0 Оперативноеbge0 Оперативное

                                
Эти строки будут изменены в файле /etc/iu.ap следующим образом (для ce/bge)
ce    -1    0    clhbsndr pfil
bge  -1    0    clhbsndr pfil

Действие 2

При необходимости добавьте правила фильтра в файл /etc/ipf/ipf.conf на всех узлах. Сведения о синтаксисе правил IP Filter привдены в руководстве man по системе для ipf(4).

пример:    block in quick on bge0 from 129.146.106.0/23 to any
         block in quick on ce0 from 129.146.106.0/23 to any

Действие 3

Включите службу SMF ipfilter.

svcadm enable /network/ipfilter:default

Правила фильтрации

В случае сбоя кластер переходит на сетевой адрес другого узла. При переключении при отказе не требуются какие-либо специальные процедуры или код.

Убедитесь, что правила фильтрации, ссылающиеся на IP-адреса ресурсов LogicalHostname и SharedAddress, одинаковы на всех узлах кластера.

Правила на резервном узле будут ссылаться на несуществующий IP-адрес. Но это правило по-прежнему является частью активного набора правил IP filter и станет действовать после получения узлом адреса в случае сбоя.

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

Некластерный режим

В некластерном режиме строка файла /etc/iu.ap, содержащая clhbsndr, не будет применяться, поскольку clhbsndr не зарегистрирован. Но последующая установка автоматического подключения службы SMF network/pfil будет выполнена успешно (в "кластерном" режиме при этом происходит сбой). Это обеспечивает переход pfil в некластерный режим.

Помимо файла /etc/iu.ap пользователю также необходимо обновить файл /etc/ipf/pfil.ap. Обновления файла pfil.ap немного отличаются. Дополнительные сведения приведены в документации к фильтру пакетов IP.

Фильтрация с сохранением состояния

IP filter не поддерживает фильтрацию с сохранением состояния при помощи IPMP, поскольку исходящие пакеты для одного сеанса могут быть переданы через несколько интерфейсов. Для пакета Sun Cluster необходимо использование групп IPMP, и поэтому кластер наследует это же ограничение.

Поэтому при кластеризации поддерживается только фильтрация без сохранения состояния.

Режим NAT

Преобразование сетевых адресов (NAT) в режиме маршрутизации не поддерживается. То есть, узел кластера не должен настраиваться в качестве маршрутизатора/шлюза для обмена пакетами с другим узлом. Это объясняется тем, что в результате подобной настройки просто создается единая точка отказа для всего кластера без предварительного обеспечения высокой доступности механизма маршрутизации.

Поддерживается использование NAT для преобразование локальных адресов. Преобразование NAT переписывает пакеты при передаче по сети и поэтому прозрачно для кластера.

Примечание. Правила NAT, содержащие IP-адреса, управляемые кластеризацией (например, ресурсы LogicalHostname), должны быть реплицированы на всех узлах кластера.

IPFILTER в транспорте кластера

При использовании для закрытой и общедоступной сети адаптера одного типа изменение файла /etc/iu.ap может привести к переносу pfil в потоки данных закрытой сети. Но модуль транспорта кластера при создании потока удаляет все ненужные модули. Потому модуль pfil будет удален. Специальные процедуры пользователей не требуются.

Джон Блэр
Ответственный за обеспечение качества
Solaris Cluster

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.