Вероятно, FAQ, но я не нашел ничего полезного после некоторого времени поиска:
Могу ли я настроить NFS таким образом, чтобы каждая ошибка (например, ЦП сервера, жесткий диск, контроллер жесткого диска, сетевой адаптер, сетевой кабель, источник питания) маскировалась без необходимости немедленного вмешательства?
У меня есть ответы только по частям проблемы: RAID, резервный источник питания, резервные сетевые адаптеры.
Как устранить сбой ЦП сервера NFS, чтобы клиенты переходили при отказе прозрачно?
Вы можете купить систему, которая может терпеть отказ ЦП, или вы можете реализовать более одного сервера. Вы можете довольно легко создать отказоустойчивый кластер NFS в Linux (я уверен, что у Sun и всех есть механизм для этого).
Достаточно хорошо поддерживаемый / распространенный способ сделать это - сердцебиение, (первая ссылка, которую я нашел в Google, поиск по NFS и сердцебиение), чтобы управлять кластером, а затем совместно использовать хранилище между серверами. Важная вещь, которую нужно сделать с NFS для обеспечения прозрачного аварийного переключения, - это также поделиться информацией о состоянии NFS, которая обычно находится в / var / lib / nfs. Вы можете сделать это, поместив его в общее хранилище.
edit: Также установка для параметра fsid того же значения при экспорте NFS на каждом сервере предотвратит получение устаревших дескрипторов файлов при отказе кластера.
nfs 4.1 поддерживает кластерную pNFS. http://www.pnfs.com/
Стандартный сервер NFS в активной / активной конфигурации невозможен, насколько я знаю, возможен активный / пассивный кластер (проверено с использованием hearthbeat + nfs3). Вот хороший способ, быстро и просто использовать Настройка высокодоступного сервера NFS | howtoforge.com
Также возможно настроить активный / активный кластер nfs4 с помощью glusterfs + haproxy + keepalived + ganesha-nfs.
Партнеры Nexenta Systems предлагают кластерные решения, которые идеально подходят для создания высокодоступной NFS, в полной мере используя ВСЕ доступные функции ZFS. Типичная модель требует двухузлового кластера с общим хранилищем, настроенного как JBOD. NexentaStor используется для предоставления NFS, CIFS и т.д. В вашем случае это может быть просто NFS. Наша структура кластеризации позволяет получить высокодоступное решение, которое может быть именно тем, что вы ищете.