Небольшой конспект с курса. Всякие интересные вещи или моменты, которые стоит иметь ввиду. Бумажные носители у меня долго не задерживаются, а тут может кому ещё что полезно будет.
Итак,
Общие сведения
У vSphere-клиентов нет обратной совместимости. Чтобы управлять хостами ESX 4.0, 4.1 и 5.0 нужны для каждой версии свой клиент.
Можно включить SSH и администрировать хост через него. Например утилитой vm-support можно собрать логи для отправки в саппорт VMware. Логи, при этом, можно собрать все, а не только те три, которые доступны из графического клиента.
Так же для управления хостом есть интерфейс командной строки vCLI. И есть надстройка для него под PowerShell (PowerCLI).
Lockdown mode — режим, в котором запрещается подключаться к хосту root’ом (по сети).
Memory overhead — (есть у каждой виртуальной машины) дополнительная оперативная память хоста, требуемая ему для обеспечения работы виртуалки. Обычно всеми воспринимается, как память, избыточно потребляемая гостевой ОС (ввиду наличия её у каждой виртуалки и слова «over..»), но это память, используемая именно хостом.
Ссылки на документацию по vSphere и прочим продуктам VMware:
http://www.vmware.com/support/pubs/
http://pubs.vmware.com/vsphere-50/index.jsp
А тут документ vSphere 5.0 Configuration Maximums, который содержит макимальные поддерживаемые значения различных характеристик для vSphere 5 (например, максимальное значение оперативной памяти, поддерживаемое хостом, выделяемое виртуальной машине, максимальное количество виртуальных машин на хосте или управляемых одним vCenter’ом и т.д.)
Файлы виртуальных машин и виртуальные диски:
.vmx — текстовый файл, содержащий описание конфигурации виртуальной машины. Можно править руками, хотя и не рекомендуется.
.vswp — внешний своп. Создаётся всегда, но используется только если на хосте не осталось необходимой для работы виртуалки оперативной памяти. Размер этого файла равен размеру выделенной для виртуалки оперативки минус Reserved-объём. Последний можно указать в настройках виртуальной машины и это минимальный объём памяти, который выделяется сразу и без выделения которого, виртуальная машина просто не стартует. Аналогичная настройка, к слову, есть и для процессора.
.nvram — файл BIOS виртуальной машины.
.log — лог, собственно.
.vmss — файл состояния памяти и виртуальных девайсов, в случае погружения виртуальной машины в Suspend.
И файлы виртуальных дисков непостредственно:
.vmdk — файл конфигурации диска (текстовый, тоже можно править вручную, но можно и убить виртуальный диск)
-rdm.vmdk — Создаётся при использовании диска Raw device mapping (проброса физического диска или LUN).
-flat.vmdk — файл-диск, в который пишутся данные. Дефолтовый.
-delta.vmdk — файл снапшота. После создания снапшота, предыдущий файл диска (который -flat.vmdk) переходит в режим read-only, а все изменения начинают писаться уже сюда.
.vmsd — файл описания снапшота.
.vmsn — файл состояния памяти и виртуальных девайсов на момент снятия снапшота.
Виртуальный диск можно сделать либо «тонким» (Thin) либо «толстым» (Thick). Первый будет занимать на диске ровно столько места, сколько занимают лежащие в нём данные (но не больше указанного в настройках предела). Второй сразу «отъест» от физического диска столько, сколько указано в настройках. Thin можно преобразовать в Thick через настройки. Thick в Thin — только через CLI. При этом уменьшен размер диска НЕ будет. Уменьшить размер диска, высвободив незанятое пространство можно, например, клонированием (возможно, миграцией).
Кроме того, диск может быть Independent. В одном из двух вариантов:
Persistant — все изменения пишутся на диск напрямую. То есть если у машины, например, несколько дисков и будет сделан её (машины) снапшот, persistant-диск влиянию снапшота подвержен не будет и не откатится впоследствии, в ходе общего отката системы.
Nonpersistant — также не подвержен влиянию снапшотов, но противоположным образом — все изменения пишутся не на диск, а в дополнительный файл, а после перезагрузки виртуальной машины (правильной перезагрузки, а не по питанию) — удаляются.
Виртуальные устройства
Есть несколько видов сетевых адаптеров:
Flexible — для совместимости со старыми ОС.
e1000 / e1000e — виртуальный аналог аппаратного Intel e1000. К первому варианту драйверы делает Intel, ко второму — VMware.
vmxnet2/3 — самые продвинутые варианты сетевых адаптеров по количеству фич, на текущий момент (например, есть поддержка Jumbo frames и Hardware off-loads), но для их работы нужно чтоб в гостевой ОС были установлены VMware Tools. Иначе будет неопознанное устройство.
USB 3.0 можно прокидывать на виртуалку только с клиентской машины (не хоста). Воткнутые в хост устройства, на данный момент, не поддерживаются.
Что входит в VMware Tools
- Драйвер для SVGA
- Драйвер для vmxnet-адаптера
- Драйвер для BusLogic SCSI
- Драйвер memory control. Для лучшего распределения памяти между виртуальными машинами (позволяет использоавать некоторые фичи для экономии физической памяти хоста).
- Драйвер sync to quierce I/O. При снятии снапшота можно будет выставить опцию quierce IO — «заморозить» работу IO и дождаться выгрузки содержимого IO-буферов. Полезно, если снимается снапшот работающей виртуалки, но не сохраняется содержимое оперативной памяти.
- Драйвер «мыши». Можно будет забыть про Alt+Ctrl.
- Набор скриптов для автоматизации некоторых процессов (например, делать что-то при шатдауне или старте). Возможность вообще шатдаунить и корректно перезагрудать гостевую ОС, не логинясь в неё через консоль.
- Наборы счётчиков производительности для Монитора ресурсов.
Virtual Appliances
Это уже предустановленные виртуальные машины, доступные для скачивания. Как правило представляют собой OVF-файл — шаблон. Развернуть их можно через пункт меню File — Deploy OVF.
Шаблоны можно поискать, например, тут: https://solutionexchange.vmware.com/store/category_groups/virtual-appliances
Есть, например, шаблон-appliance для vCenter на базе Suse Linux. В отличие от стандартного vCenter, который устанавливается только на ОС Windows, у линуксового есть следующие ограничения:
- Не поддерживает MS SQL (только Oracle, либо внутренняя база на IBM DB2, которая поддерживает не более 50 VMs либо не более 5 хостов).
- Не поддерживает Linked Mode (возможность управления несколькими Datacenter из одного клиента).
- Не поддерживает Heartbeat (самого vCenter).
- Не поддерживает Update manager (и, возможно, ещё какие-то плагины).
Продолжение следует…