NFS сервер на Windows Server 2012

NFS (Network File System) - мережевий протокол доступу до доступ до файлів і файлової системи NFS-сервера, популярний в сімейства ОС Linux / UNIX, а також різних системах зберігання. Microsoft також, не бажаючи відставати від конкурентів, впровадила базовий функціонал NFS сервера ще в Windows Server 2003 R2. У наступних версіях серверних платформ Microsoft можливості вбудованого NFS Windows сервера розширювалися, з'являвся новий функціонал і засоби управління. NFS сервер в Windows Server 2012 - чергова віха у розвитку даної технології.

Що ж нового пропонують нам розробники Microsoft в даному продукті? Нові можливості NFS сервера в Windows Server 2012:

  1. Підтримка стандарту NFS v4.1. Підтримка останньої версії NFS 4.1 - одне з основних нововведень Windows Server 2012. У порівнянні з NFS v3 цей протокол забезпечує підвищену безпеку, продуктивність і сумісність, повністю реалізуючи всі аспекти RFC 5661.
  2. Продуктивність "з коробки". Завдяки використанню нової транспортної інфраструктури RPC-XDR, оптимальна продуктивність NFS сервера може бути досягнута відразу "з коробки" без необхідності тонкої настройки параметрів системи. Оптимальна продуктивність досягається за рахунок автоматично налаштовувати кешу, поділу робочих процесів на пули і динамічне управління пулами, засноване на їх навантаженні.
  3. Спрощене розгортання та управління. Даний факт досягнуто за рахунок:
    • - більше 40 командлетів PowerShell для настройки сервера NFS і управління загальними папками
    • - простого графічного інтерфейсу управління, що дозволяє одночасно управляти як SMB, так і NFS кулями, а також налаштуваннями скринінгу файлів і файлової класифікації.
    • - фіксації RPC порту (порт 2049) для простоти налаштування файерволов
    • - нового провайдера WMI v2
    • - спрощеної ідентифікації за рахунок плоского файлу мапінг
  4. Покращення в NFSv3. За рахунок швидкого відправлення клієнтам повідомлень про збої монітором NSM (Network Status Monitor), старі NFS клієнти краще і швидше обробляють процедуру failover, що означає менший час простою.

Отже, NFS сервер в Windows Server 2012 значно поліпшений з точки зору простоти розгортання, масштабованість, стабільність, доступність, надійність, безпеку і сумісності. Загальні папки можуть бути одночасно доступні по протоколах SMB і NFS, що означає можливість використання Windows Server 2012 в якості сховища в гетерогенних мережах.

Далі ми розберемо сценарій розгортання і управління сервером NFS в Windows Server 2012.

Установка NFS сервера в Windows Server 2012

NFS сервер в Windows Server 2012 можна встановити за допомогою GUI і Powershell. Щоб встановити NFS сервер за допомогою графічного інтерфейсу, відкрийте консоль Server Manager і всередині ролі файлового сервера (File and Storage Services) відзначте компонент Server for NFS.

Після закінчення установки компонента NFS, сервер необхідно перезавантажити.

Установка цієї ж ролі за допомогою Powershell також не викликає ускладнень, просто виконайте команду:

Add-WindowsFeature "FS-NFS-Service"

Налаштування загальної папки NFS в Windows Server 2012

Далі ми покажемо, як за допомогою встановленої нами ролі створити NFS кулі (загальну папку) на сервері Windows. Створити NFS кулі можна знову декількома способами: за допомогою графічного інтерфейсу або Powershell.

Створення спільного каталогу NFS за допомогою консолі Server Manager

Відкрийте консоль Server Manager, перейдіть в розділ Share management (Знаходиться всередині ролі File and Storage Services).
У контекстному меню запустіть майстер створення нового загального каталогу- New Share ...

Виберіть тип кулі NFS Share - Quick

Далі потрібно вказати місце розташування каталогу на диску і шлях, по якому повинні підключаться віддалені NFS клієнти.

Потім необхідно зазначити тип аутентифікації NFS клієнтів: можливо, задіяти як Kerberos- аутентифікацію, так і анонімну.

Припустимо, в якості споживача створюваного NFS ресурсу буде виступати сервер віртуалізації ESXi, в якому можливість аутентифицировать NFS з'єднання відсутня (ESXi не підтримує NFSv4). Тому тип аутентифікації буде No Server Authentication, відзначимо також опції Enable unmapped user access і Allow unmapped user access by UID / GID.

Щоб трохи убезпечити створювану NFS кулі від доступу сторонніх осіб, обмежимо доступ до NFS ресурсу по IP адресою клієнта.

Host: 192.168.1.100
Language Encoding : BIG5
Share Permissions : Read / Write
Allow root access : Yes

Далі залишилося перевірити, що на рівні NTFS користувач, в якого мапітся підключається користувач, має доступ на читання / запис (якщо вирішено задіяти анонімний доступ, доведеться для користувача Everyone дати повні r / w права на рівні NTFS).

Як створити NFS кулі з допомогою Powershell

Створимо нову NFS кулі:

New-NfsShare -Name "NFS" -Path "d: \ shares \ nfr" -AllowRootAccess $ true -Permission Readwrite -Authentication sys

Дозволимо доступ до кулі для IP адреси 192.168.1.100 і задамо кодування BIG5 (можливість перегляду вмісту NFS кулі для клієнта ESXi).

Grant-NfsSharePermission -Name "NFS" -ClientName 192.168.1.100 -ClientType host -LanguageEncoding BIG5

Створену NFS кулі можна використовувати, наприклад, як NFS-datastore в середовищі віртуалізації VMWare vSphere, або для доступу до даних з інших Unix-like клієнтів. Як змонтувати NFS кулі в Windows - клієнтів описано в цій статті.