Я использую NFS
(и это единственный, который я хорошо знаю в сетевых файлах) в течение нескольких лет. Но до сих пор не могу узнать ..
- Как сделать
NFS
серверы в кластерном дизайне (или с балансировкой нагрузки?) - Или, по крайней мере, его развертывание на сервере «БОЛЬШЕ-ТО ОДИН» и «Автоматическое восстановление после отказа».
Основная цель - не допустить, чтобы мой единственный работающий NFS-сервер работал в режиме единой точки отказа.
Так как я не знаю, как сделать это правильно, до сих пор я изобрел самостоятельно:
- NFS на 2 сервера.
- RSYNC с 1-го (предполагаемого главного) сервера на другой 2-й сервер.
- С серверов приложений (веб-сайтов и т. Д.)
Shell Script
Установите флажок, чтобы проверить исправность точки монтирования NSF-Master Server. А затем, если нужно, автоматически отключить его (оставив), а затем выполнить автоматическое подключение со второго. - Основная функция, которую я использовал в моем автоматическом сценарии оболочки, заключается
nfsstat -m
в проверке работоспособности точки монтирования.
(Я использую Redhat )
Но в любом случае, я все еще не думаю, что это безопасный и стандартный способ.
источник
Это только один из многих способов, которыми NFS отстой.
Невозможно сделать это только с NFS до версии 3. Вам нужно будет добавить функциональность вручную.
Это, вероятно, означает:
Существуют пакеты для всего этого, но вам придется интегрировать их для вашей организации.
Проект Linux HA был создан много лет назад для реализации некоторых из этих вещей. http://www.linux-ha.org/
Вы должны найти большую часть того, что они уже сделали, в любом популярном дистрибутиве, который вы используете.
Стоит отметить ... Единственной основной причиной сбоя системы (безусловно) является административная ошибка, и кластеры HA по определению являются сложной системой и более подвержены ошибкам администратора.
Нормально, за исключением NFS v4, NFS v4 начинает реализовывать некоторые из функций масштабируемости, безопасности и доступности, которыми AFS обладает уже 20 лет, он ни в коем случае не полностью или широко не реализован и даже не полностью совместим с различными клиентами и серверами, но Если вы используете NFS, начните с v4 и посмотрите, что уже реализовано на вашей платформе.
источник
Насколько я знаю, у вас не может быть NFS в качестве активно-активного кластера. Теперь для Active-Passive есть определенные инструменты, которые помогут вам достичь этого. Я больше знаком с ОС Solaris и Solaris Cluster, которые предоставляют вам возможность создавать высокодоступные общие / общие ресурсы NFS в зависимости от вашей цели.
Одна вещь, которая вам понадобится, - это общее хранилище, которое можно перенести с сервера A на сервер B и наоборот в случае необходимости. В идеале iSCSI или SAN Storage. И IP, связанный с общим ресурсом NFS.
Кластер будет работать так. В случае сбоя сервера A сервер B включит IP-связь с сервером NFS и получит право владения общим диском, подключит его и запустит сервер NFS. То же самое происходит в случае сбоя сервера B и работы сервера A.
Если вы хотите сделать это вручную, то в качестве основных шагов вам понадобятся скрипты мониторинга и скрипты для автоматического включения и отключения сервисов.
Посмотрите здесь для Redhat
источник
Я настроил избыточную пару файловых серверов NFS в «активной / активной» конфигурации с «двумя основными», используя балансировщик нагрузки, CentOS, NFS, DRBD (репликация), GFS2 (кластерная файловая система) и Pacemaker (управление кластером).
Вот руководство по этой реализации в RackSpace, но оно будет аналогичным в любой другой среде.
Как настроить Dual Primary DRBD на CentOS 6: GFS2 и кардиостимулятор .
источник
Продукт Red Hat RHSS / RHGS (Red Hat Storage / Gluster Server) прекрасно справляется с этим, используя клиент GlusterFS на основе FUSE для прокси-соединений NFS с работающим внутренним сервером, сохраняя при этом внутреннее зеркальное хранилище с несколькими узлами сервера, все прозрачно для клиентской стороны. Это очень удобное решение, которое подойдет вам. Вы можете установить решение EPEL / Extra RPM или купить его в Red Hat. На стороне клиента вы просто используете FUSE / glusterfs или NFS в качестве типа монтирования в fstab. Никаких проблем с квантом / фехтованием.
источник
Это очень хороший и простой практический пример, он работает и отлично работает.
https://www.howtoforge.com/high_availability_nfs_drbd_heartbeat
Лично я предпочитаю lvs, потому что объединяю ха с балансировкой нагрузки, но я пробовал с nfs + gfs2 + drbd и работает очень плохо. Может быть, мне нужно как-то, но я не могу найти ничего о lvs + nfs ha
источник
Virtual IP
там, как уже упоминалось, через серверы? (Я не знаю)