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:
- Підтримка стандарту NFS v4.1. Підтримка останньої версії NFS 4.1 - одне з основних нововведень Windows Server 2012. У порівнянні з NFS v3 цей протокол забезпечує підвищену безпеку, продуктивність і сумісність, повністю реалізуючи всі аспекти RFC 5661.
- Продуктивність "з коробки". Завдяки використанню нової транспортної інфраструктури RPC-XDR, оптимальна продуктивність NFS сервера може бути досягнута відразу "з коробки" без необхідності тонкої настройки параметрів системи. Оптимальна продуктивність досягається за рахунок автоматично налаштовувати кешу, поділу робочих процесів на пули і динамічне управління пулами, засноване на їх навантаженні.
- Спрощене розгортання та управління. Даний факт досягнуто за рахунок:
- - більше 40 командлетів PowerShell для настройки сервера NFS і управління загальними папками
- - простого графічного інтерфейсу управління, що дозволяє одночасно управляти як SMB, так і NFS кулями, а також налаштуваннями скринінгу файлів і файлової класифікації.
- - фіксації RPC порту (порт 2049) для простоти налаштування файерволов
- - нового провайдера WMI v2
- - спрощеної ідентифікації за рахунок плоского файлу мапінг
- Покращення в 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 - клієнтів описано в цій статті.