Расскажу немного о VMkernel и его конфигурации для сетевых сервисов. Мысль создание этого дока пришла ко мне после разговора с одним моим знакомым, которому пришлось объяснять, что такое VMkernel, что с ним делать и с чем его едят. ![]()
Немного о VMkernel.
VMkernel – это ядро VMware ESX/ESXi Server. Оно занимает слой виртуализации и управляет большинством физических ресурсов: процессорами, памятью, системами хранения данных, сетевыми контролерами и п.р. Кто то может заметить, что в VMware ESX Server есть Red Hat Enterprise Linux, так и есть, но роль линукса сводится только к тому, чтобы загружить машину и само ядро VMkernel, вот оно то и управляет всем. Сам линукс в ESX Server служит только для предоставления командной консоли, а также для установки агентов мониторинга железа и бекапа. Кстати в VMware ESXi Server тоже есть линукс, но он просто очень и очень сильно обрезан.
Сетевые сервисы использующие стек TCP/IP такие как VMotion, iSCSI, NFS также работают через VMkernel, поэтому для включения их необходимо правильно сконфигурировать VMkernel. Стек TCP/IP в VMkernel полностью отделен от стека TCP/IP используемого в Service Console . Стек TCP\IP VMkernel создается как порт группа VMkernel и подключается к одному или нескольких vSwitch, которые в свою очередь подключены к различным сетям.
Конфигурирование сетевых сервисов VMkernel.
Как я уже выше писал, для работы VMotion, инициатора iSCSI и NFS необходимо сконфигурировать стек TCP\IP VMkernel. Конфигурация довольна, проста и заключается в добавление порт группы VMkernel к vSwitch на через который должен течь трафик сетевых сервисов iSCSI, NFS, VMotion. Все хватит теории, я больше люблю практику.
Go — go — go!
Открываем клиент vSphere и идем в раздел Configuration->Networking. В данном примере у меня на хосте 2-ве физические сетевые карты. Первая карта подключена vSwitch0, к которому подключены ВМ. Вторая карта подключена на vSwitch1, вот как раз на нем я и собираюсь создать порт VMkernel и гонять трафик.

Жмем Properties на нужном нам vSwitch и в появившемся окне жмем Add.

Потом выбираем VMkernel.

И просто забиваем нужные параметры. Думаю тут все понятно, имя порта и vlan id если необходим.

Далее сконфигурируем IP адрес, маску, и шлюз для VMkernel порта.

Жмем Next. Смотрим суммарную инфу и жмем Finish. После завершения мастера создастся порт VMkernel со своим сетевым интерфейсом.

Остается только проверить доступен ли только что созданный сетевой интерфейс VMkernel. Просто пингуем с машины которая находится в одной сети с портом VMkernel его интерфейс или же можно с консоли ESX пингануть какую либо машину в сети. Для пинга через интерфейс VMkernel используется команда vmkping.
Вот и вся конфигурация. Далее теперь можно сконфигурировать VMotion, iSCSI и NFS. Но это уже выходит за рамки этой публикации.
О конфигурации VMotion можно прочесть тут.
О конфигурации iSCSI тут.
Михаил Коротько Архитектор/инженер по ИТ инфраструктуре, независимый консультант в области ИТ, а также блогер и энтузиаст виртуализации. VMware vExpert 2010/2011.

16 Июл 2009 в 21:15
Не совсем правильно, что VMkernel — это и есть гипервизор. Гипервизор — это Virtual Machine Monitor. Например, вот кусочек архитектуры — http://www.vmgu.ru/articles/vmware-esx-esxi-storage-components
17 Июл 2009 в 09:18
@Александр Самойленко
Согласен, что не совсем корректно, хотя тут можно и подискутировать. С одной стороны т.к VMkernel ядро ESX/ESXi Server, который как раз и является гипервизором, можно поэтому сказать что все таки оно по сути и есть гипервизор, являясь основной частью (хотя я склонен считать все таки что это не совсем корректно), с другой стороны ядро не есть еще вся система, а только часть отвечающая за абстракцию железа и софта.
Подправил текст, чтобы не вводить людей в заблуждение.
У VMware в доках есть вот такое определение: VMkernel in ESX server, a high-
performance operating system that occupies the virtualization layer and manages most of the physical resources on the hardware, including memory, physical processors, storage, and networking controllers.
Фраза high-performance operating system честно сбивает с толку, причем тут ОС и ядро, которое разделяет уровни??? Или что то я опять не понимаю
17 Мар 2010 в 15:01
[...] описывать сей процесс не буду, так как уже делал заметку о VMkernel [...]
01 Июн 2010 в 14:07
«Далее теперь можно сконфигурировать NFS» жду, может напишите вкратце?
02 Июн 2010 в 08:58
Ничего сложного, в гайде у Вари все это написано.
Запускаете клиента, заходите на нужный хост, раздел Configuration -> Storage
Жмете в правом верхнем углу Add Storage. Далее выйдет мастер добавления датасторы.
Выбираете Network File System и забиваете там сервак NFS, нужный каталог и имя вашей новой датасторы.
Все.
29 Дек 2010 в 10:26
я начинающий строго не судите….
при переносе ВМ на новый host надо ли VMkernel настраивать на каждую NIC если ВМ на hoste используют разные vswitch(1,2,3)
и разные подсети. (хосты одинаковые, хочу HA поднять).
30 Дек 2010 в 09:53
Не устану повторять, особенно для новичков — читайте документацию VMware. Там все есть и все прекрасно описано, особенно для новичков.
По поводу миграции читайте у меня статью http://vm.pro-it.kz/2010/03/vmotion-guide/ o VMotion.
По поводу HA там нужен VMkernel порт с менеджмент опцией(для ESXi) или же порт Service Console(для ESX), и без разнице на каком он vSwitch, главное чтобы хосты видели друг друга по менеджмент порту.
30 Дек 2010 в 10:15
Спасибо уже разобрался
12 Май 2011 в 20:43
Михаил, спасибо за статью, помогла решить мою проблему