Насколько мне известно, Parallel NFS (pNFS) имеет три типа: макет файла, макет блока и макет объекта. Каковы преимущества и недостатки каждого типа?
На самом деле это не вопрос преимуществ или недостатков. Режимы доступа очень разные, и поэтому все зависит от того, для чего вы собираетесь использовать свой сервер.
Файловый режим - это классический режим. Ваша файловая система обрабатывается вашим сервером, и многие клиенты NFS могут использовать экспорт одновременно и присоединять его к своей файловой системе с помощью монтирования. Им необходимо решать проблему одновременного доступа к одним и тем же файлам, но это не сильно отличается от нескольких программ на одном сервере.
Блочный режим похож на iSCSI или FC LUN. Ваша файловая система обрабатывается клиент. Обычно есть один-единственный клиент. По сути, это жесткий диск, который физически находится на другом сервере. Несколько клиентов могут одновременно использовать один и тот же экспорт (по крайней мере, FC LUN это позволяют), но для этого вам потребуется использовать файловую систему с поддержкой кластера, такую как GFS, потому что обычная файловая система, такая как ext4 выйдет из строя, как только второй обработчик файловой системы начнет возиться с метаданными.
Объектный режим - объектный режим: есть является нет файловой системы, насколько известно клиенту. Клиент Приложения делать запросы напрямую к серверу, используя протокол объектного хранилища, такой как Amazon S3. Это может быть очень полезно, если вы пишете свое приложение, но совершенно бесполезно, если вам нужно установить что-то написанное для использования файловой системы.
Я думаю, что вы можете смешивать эти режимы на одном сервере, потому что вы можете экспортировать разные тома. Некоторые тома будут экспортированы в файловом режиме, некоторые - в блочном, некоторые - в объектном, но определенный том, безусловно, можно использовать только одним способом.