Vmware esxi настройка nfs

Обновлено: 06.07.2024

ESXi supports NFS protocols version 3 and 4.1. To support both versions, ESXi uses two different NFS clients.

NFS Protocol Version 3

  • With NFS version 3, storage traffic is transmitted in an unencrypted format across the LAN. Because of this limited security, use NFS storage on trusted networks only and isolate the traffic on separate physical switches. You can also use a private VLAN.
  • NFS 3 uses only one TCP connection for I/O. As a result, ESXi supports I/O on only one IP address or hostname for the NFS server, and does not support multiple paths. Depending on your network infrastructure and configuration, you can use network stack to configure multiple connections to the storage targets. In this case, you must have multiple datastores, with each datastore using separate network connections between the host and the storage.
  • With NFS 3, ESXi does not support the delegate user functionality that enables access to NFS volumes by using nonroot credentials. You must ensure that each host has root access to the volume.
  • NFS 3 supports hardware acceleration that allows your host to integrate with NAS devices and use several hardware operations that NAS storage provides. For more information, see Hardware Acceleration on NAS Devices.
  • When hardware acceleration is supported, you can create thick-provisioned virtual disk on NFS 3 datastores.
  • NFS 3 locking on ESXi does not use the Network Lock Manager (NLM) protocol. Instead, VMware provides its own locking protocol. NFS 3 locks are implemented by creating lock files on the NFS server. Lock files are named .lck- file_id . .

NFS Protocol Version 4.1

  • NFS 4.1 provides multipathing for servers that support session trunking. When trunking is available, you can use multiple IP addresses to access a single NFS volume. Client ID trunking is not supported.
  • NFS 4.1 does not support hardware acceleration. This limitation does not allow you to create thick virtual disks on NFS 4.1 datastores.
  • NFS 4.1 supports the Kerberos authentication protocol to secure communication with the NFS server. For more information, see Using Kerberos Credentials for NFS 4.1.
  • NFS 4.1 uses share reservations as a locking mechanism.
  • NFS 4.1 supports inbuilt file locking.
  • NFS 4.1 supports nonroot users to access files when used with Kerberos.
  • NFS 4.1 supports traditional non-Kerberos mounts. In this case, use security and root access guidelines recommended for NFS version 3.
  • Does not support simultaneous AUTH_SYS and Kerberos mounts.
  • NFS 4.1 with Kerberos does not support IPv6. NFS 4.1 with AUTH_SYS supports both IPv4 and IPv6.

NFS Protocols and vSphere Solutions

vSphere Features NFS version 3 NFS version 4.1
vMotion and Storage vMotion Yes Yes
High Availability (HA) Yes Yes
Fault Tolerance (FT) Yes Yes
Distributed Resource Scheduler (DRS) Yes Yes
Host Profiles Yes Yes
Storage DRS Yes No
Storage I/O Control Yes No
Site Recovery Manager Yes No
Virtual Volumes Yes No

NFS Version Upgrades

vSphere does not support automatic datastore conversions from NFS version 3 to NFS 4.1. If you want to upgrade your NFS 3 datastore, the following options are available:

  • You can create a new NFS 4.1 datastore, and then use Storage vMotion to migrate virtual machines from the old datastore to the new one.
  • Use conversion methods provided by your NFS storage server. For more information, contact your storage vendor.
  • Unmount from one version and then mount as the other.

date

27.04.2021

directory

VMWare, Виртуализация

comments

Комментариев пока нет

В VMware vSphere вы можете использовать iSCSI диски в качестве общего дискового хранилища для ваших ESXi хостов. ESXi хост получает доступ к таким дискам по вашей локальной сети с помощью протокола TCP. В этой статье мы рассмотрим, как подключить iSCSI LUN с вашей СХД (или сервера) к хосту VMWare ESXi и создать на нам общее VMFS хранилище.

Предполагаем, что вы создали, настроили и опубликовали iSCSI таргет (диск) на вашей СХД (в Windows Server вы можете в качестве iSCSI таргет использовать виртуальный vhdx диск).

На СХД убедитесь, что вы разрешили подключение к вашему iSCSI таргету вашим ESXi хостам (iSCSI инициаторы). Доступ можно получить по IQN (как получить IQN iSCSI адаптера в ESXi показано ниже, по DNS имени, IP или MAC адресу.

В данном примере мы используем отдельно стоящий хост с ESXi 6.7 (можно использовать и бесплатный ESXi Hypervisor). Это может быть физический хост или виртуальная машина (например, вот пример использования ESXi с помощью nested virtualization в Hyper-V). На хосте есть два сетевых интерфейса (один будет использоваться для управления, второй для трафика к iSCSI LUN).

Настройка сети для iSCSI трафика в VMWare ESXi

Сначала нужно создать отдельный VMkernel сетевой интерфейс, который будет испоьзоваться ESXi хостом для доступа к iSCSI хранилищу. Перейдите в раздел Networking -> VMkernel NICs -> Add VMkernel NIC.

добавить vmkernel порт в esxi

Кроме vmk порта нужно сразу создать новая группа портов (New port group). Укажите имя для этой группы – iSCSI и назначьте статический IP адрес для вашего интерфейса vmkernel.

vmk порт для iscsi трафика в esxi

Теперь перейдите в настройки вашего стандартного коммутатора vSwitch0 (Networking -> Virtual Switches). Проверьте, что второй физический интерфейс сервера vmnic1 добавлен в конфигурацию и активен (если нет, нажмите кнопку Add uplink и добавьте его).

добавить uplink в vmware esxi

Проверьте в секции Nic Teaming что оба физических сетевых интерфейса находятся в статусе Active.

активные uplink сетевые адаптеры

отключить management аплинк для iscsi port groups

В результате ваш ESXi хост будет использовать для доступа к вашему iSCSI LUN только один интерфейс сервера.

Настройка программного iSCSI адаптера в VMWare ESXi

По умолчанию в ESXi отключен программный адаптер iSCSI. Чтобы включить его, перейдите в раздел Storage -> Adapters. Нажмите на кнопку Software iSCSi.

включить software iscsi в vmware esxi

Измените iSCSI enable на Enabled.

Обратите внимание, что здесь также указан IQN вашего iSCSI адаптера(инициатора), который можно использовать при настройке доступа к iSCSI LUN на СХД).

Затем в секции Dynamic targets добавьте IP адрес вашего iSCSI хранилища и порт подключения (по-умолчанию для iSCSI трафика используется порт TCP 3260). ESXi просканирует все iSCSI таргеты на этом хосте и выведет их в списке Static Targets.

список доступных iscsi таргетов с esxi хоста

Здесь же можно настроить CHAP аутентификацию, но в тестовой среде это не обязательно.

Сохраните настройки. Обратите внимание, что на вкладке Storage -> Adapters появился новый HBA vmhba65 типа iSCSI Software Adapter.

vmhba65 типа iSCSI Software Adapter

Если ESXi хост подключен к vCenter, чтобы добавить iSCSI LUN, перейдите в раздел Configure -> Storage –> Storage Adapters. Выберите Software iSCSI adapter и укажите на вкладке Dynamic Discovery имя или IP адрес вашего iSCSI хранилища. Выполните Rescan. Список доступных iSCSI таргет должен появится на вкладке Static Discovery.

добавление iscsi хранилиза в esxi

Если вы не видите список iSCSI таргетов на СХД, можно продиагностировать доступность iSCSI диска через консоль ESXi.

Включите на ESXi хосте SSH и подключитесь к нему с помощью любого SSH клиента (я использую встроенный SSH клиент Windows 10)

С помощью следующей команды можно выполнить проверку доступности вашего iSCSI хранилища (192.168.13.10) с указанного vmkernel порта (vmk1) :

vmkping проверка доступности СХД

В этом примере iSCSI хранилище отвечает на ping.

Теперь нужно проверить, что на хранилище доступен iSCSI порт TCP 3260 (в этом примере 192.168.13.60 это IP адреса интерфейса vmk1):

esxi shell проверка доступности iscsi порта 3260

Проверьте, что на хосте включен программный iSCSI:

Если нужно, включите его:

Также можно получить текущие параметры программного HBA адаптера iSCSI:

esxcli iscsi adapter get

Создаем VMFS хранилище на iSCSI LUN в VMWare ESXi

Теперь на доступном iSCSI диске можно создать VMFS (Virtual Machine File System) хранилище для размещения файлов виртуальных машин.

Перейдите в раздел Storage -> Datastores -> New datastore.

создать новое хранилище на iscsi LUN

Задайте имя VMFS хранилища и выберите iSCSI LUN, на котором его создать.

создать vmfs датастору на iscsi диске

Выберите тип файловой системы VMFS 6 и укажите, что для хранилища нужно использовать весь объем iSCSI диска. Через несколько секунд новое VMFS хранилище станет доступно из ESXi.

новое vmfs хранилище для размещеия файлов виртуальных машин esxi

Если на данном LUN уже создано VMFS хранилище, оно сразу появится в списке доступных Storage Devices хоста.

msft iscsi disk в vmware esxi

Итак, вы подключили iSCSI диск к вашему ESXi хосту и создали на нем VMFS хранилище. Это хранилище могут одновременно использовать несколько ESXi серверов. Теперь у вас есть общее хранилище, и если вы настроите VMware vCenter server, вы сможете использовать vMotion для перемещения запущенных ВМ между хостами.

NFS сервер на системе семейства Linux – это классическое и наиболее распространенное решение при организации службы NFS в сети. В интернетах можно найти множество инструкций по настройке NFS сервера на Linux/UNIX. А я вот наперекор интернетам решил проверить: можно ли установить службы NFS на ОС семейства Windows и воспользоваться ими в практических целях. В этой статье я опишу процесс установки Services for UNIX 3 на сервере Windows 2003 R2, а также настройку получившегося сервера NFS (при помощи службы User Name Mapping) для резервного копирования виртуальных машин VMware ESXi .



Выберите Custom Installation и затем Next.


В разделе NFS выберите компоненты «Client for NFS» и «Server for NFS».


Чуть ниже найдите раздел «Authentication tools for NFS» и отметьте для установки «User Name Mapping». Нажмите Next.



Выберите «Local Mapping Server», а также «Password and group». И опять Next.

Откроем проводник Windows Explorer и создадим каталог, в котором будут храниться файлы с группами и паролями серверов VMware ESXi (это два файла password и group).


Для этих целей я создал каталог C:\SFU. К сожалению, в процессе установки SFU, все существующие в данной папке фалы password и group будут перезатерты, и придется копировать их заново. Однако для корректной работы установщика, необходимо чтобы в этой папке эти файлы все-таки находились. Ну что-ж, создадим их.




Введите путь к файлам password и group.


Затем Next, после чего запустится процесс установки.

Настраиваем сопоставление пользователей (User Name Mapping)


Идем в Start > Administrative Tools > Services for UNIX Administration.


В левой панели перейдем в раздел «User Name Mapping», после чего в средней панели сверху нажмем Maps.


Снимем галочку с «Simple maps», а затем в раскрывшемся «Advanced maps», жмем на Show User Maps.


Теперь жмем на кнопки «List Windows Users» и «List UNIX Users».


Теперь мы должны создать сопоставление между пользователями Windows и UNIX, я сопоставил пользователя root (UNIX/ESXi) с учетной записью Administrator. Затем жмем Add.




Теперь в окне можно увидеть, что у нас появилось первое сопоставление пользователей. В случае необходимости можно создать также сопоставление групп между Windows и Unix, но в этом примере в такой настройке необходимости нет.

Жмем Apply и закрываем окно.

Теперь нужно настроить папку, которую планируется «расшарить» при помощи службы NFS. Для чего щелкаем правой кнопкой по выбранной папке и жмем Properties.


Перейдем на вкладку NFS Sharing, где необходимо выбрать «Share this folder». Затем нужно назначить разрешения на этот ресурс (кнопка Permissions).


Тип доступа: Read-Write, а также галочкой отметим «Allow root access». Это, конечно не самая безопасная конфигурация, вы можете ее настроить в зависимости от ваших потребностей. Жмем OK.



Открываем MMC оснастку Службы (Services), в которой нужно запустить службы User Name Mapping.


Для работы NFS требуется открыть некоторые сетевые порты, в моем случае, я просто остановлю службу Windows firewall.

Подключаем VMware ESXi к хранилищу NFS

Запускаем наш клиент vSphere Client.Находим нужный нам сервер ESXi host, переходим на вкладку Configuration, и в разделе оборудования (Hardware) жмем Storage.



Добавляем новое хранилище типа NFS (Network File System).

В окне настройки хранилища NFS, укажем имя/ IP адрес нашего Windows сервера, также нужно задать каталог (/nfs) и задать имя данного хранилища NFS в системе ESXi.



Вот и все! Мы настроили NFS папку на Windows, которую подключили в качестве хранилища в ESXi. Это хранилище можно использовать для хранения образов дистрибутивов, или дешевого хранилища для резервных копий виртуальных машин. Кроме того, я заметил, что производительность операций чтения/записи на сервере Windows NFS достаточно высокая!

Далее создаем файл /etc/exports, в котором каждая строка задаёт экспортируемую файловую систему и список хостов (клиентов), имеющих доступ к ней (в нашем случае мы экспортируем только одну ФС):

Флаг -maproot=root позволяет пользователю root на удаленной системе писать данные на экспортируемую файловую систему, как пользователь root. Если -maproot=root не задан, то, даже если пользователь имеет root доступ на удаленной системе, он не сможет модифицировать файлы на экспортируемой ФС. В нашем случае данный флаг нужно обязательно указать. Иначе ESXi увидит экспортируемую ФС, даже покажет, сколько места свободно и сколько занято, но что-либо создать или изменить на данной ФС не получится.

Изначально каталога /usr/esxi-datastore не существует, поэтому создаем его:

Для применения всех изменений и проверки того, что все стартует нормально при загрузке системы, перезагружаем её:

После перезагрузки проверяем, что все необходимые сервисы запустились:

Как видно выше все три демона (rpcbind, nfsd и mountd) запустились. А это значит, что NFS-сервер готов к работе.

Добавляем NFS хранилище в ESXi

Добавить NFS хранилище в ESXi достаточно просто. Для этого необходимо выбрать нужный хост ESXi, затем перейти на вкладку Configuration -> Storage -> Add Storage. Появится окно, в котором нужно выбрать тип нового хранилища. Так как нам нужно NFS хранилище, выбираем Network File System:

Перед тем, как добавить NFS хранилище, Wizard покажет суммарную информацию о данном хранилище (если нас все устраивает, нажимаем Finish):

После того, как мы нажмем Finish, и Wizard завершит свою работу, в списке Datastores появится наше NFS хранилище:

В разделе "Datastore Details" видно, что общий размер хранилища составляет 41.94 GB. При этом свободно 4.22 GB, а занято 37.73 гигабайта. Так откуда же взялись эти цифры? А все очень просто. Это размер раздела, на котором непосредственно располагается ранее созданный нами каталог /usr/esxi-datastore. Точно такие же данные можно получить, выполнив команду df -h в командном интерпретаторе FreeBSD.

Теперь можно попробовать что-нибудь загрузить в наше NFS хранилище:

Файл putty.exe на NFS datastore залился без каких-либо проблем. Во FreeBSD файл putty.exe будет выглядеть так же, как и любой другой обычный файл:

Ну, вроде бы всё написал что хотел. Чуть ниже приведены ссылки как на материалы, которыми я пользовался при написании данной статьи, так и на статьи, которые мне показались интересными, актуальными и нужными. Рекомендую к прочтению.

Читайте также: