Рубрики
esx*

VMware Tools install Debian

Нормальный вариант:

есть еще такой пакет как open-vm-tools -это opensource
apt-get install open-vm-tools
 

Старый и не рекомендованный вариант

1. Подключаем виртуальный дис с VMware Tools
2. Если используются иксы и они запущены – останавливаем:
/etc/init.d/gdm stop
в моем случае гном
3. Если не установлены хидеры – устанавливаем (версия хидеров должна соответствовать вашей версии ядра)

aptitude install linux-headers-2.6.26-2-all-i386
тоже самое с gcc

aptitude install gcc-4.3
4. монтируем диск с тулзами, распаковываем архив с диска

mount /dev/cdrom /mnt/cdrom
cd /root/tmp
tar zxf /mnt/cdrom/vmware-linux-tools.tar.gz
umount /mnt/cdrom
5. запускаем установку

cd vmware-tools-distrib
./vmware-install.pl
отвечаем на все вопросы (скорее всего будет достаточно со всем согласится)
6. если утилита конфигурации не запустилась после установки – запускаем

vmware-config-tools.pl
и опять со всем соглашаемся
7. запускаем иксы

/etc/init.d/gdm start
8. запускаем VMWare tools в фоне (через x-терминал)

vmware-toolbox &

!!!УДАЛИТЬ:
vmware-uninstall-tools.pl
Рубрики
esx*

Записки из книги по esx

vcenter mobile aplance


/usr/bin/busybox посмотреть доступные команды

esxcfg-* основные команды управления esxi
esxcli новые команды введены начиная  esxi5.0+
esxcli esxcli command list выложит список команд
esxcfg-nics -l посмотреть информацию о доступных сетевых контролерах
esxcli network nic list  посмотреть информацию о доступных сетевых контролерах
esxcfg-volumes -l  посмотреть информацию о разделах. -m(временно) -M(постоянно) монтирование
esxcfg-vmknic управление основным контролером vmware

Все команды  много уровненные. на каждом уровне можно узнать что вводить дальше. 
последний уровень команды это get set list add remove и др.
выполнив в конце команды --help получим подробную помощь

Netflow технология позволяющая прослушивать трафик на любой  виртуальной машине
Portmirror позволяет зеркалировать трафик на любую виртуальную машину
vmkernel основной контролер управления службами vmware

Программы и общая информация:

putty
mremote.org -ssh rdp +++ client
Veem FastSCP копирование
WinSCP копирование
RVtools посмотреть живучесть esxi robware.net
VMWare Capacity planner толи прога толи услуга от vmware расчет нагрузки на хосте
vmsafe - приложение можно применить программы с одной виртулке к другой (допустим антивирус)
syslog collector -  сбор логов с виртуальных машин
dcui - меню управления esxi (то что увидим если подключить монитор)
Microsoft windows active directory cirteficat services (сокращенно ADCS) или openssl (Открытое linux решение для сертификатов)
Vmware converter  standalone программа для конвертирования

логи

логи хранятся непосредственно в каталоге самой виртуальной машины. 
логи esxi хранятся в каталоге /var/log
ls -l /vmfs/devices/disksвот так можно увидеть доступные диски
/var/log/vmkernel тут можно посмотреть ошибки
/var тут можно найти логи
/vmfs файлы виртуальных машин
/etc конфигурации самой esxi
/commands  результаты выполнения различных команд

Твики ВМ

kb.vmware.com - онлайн справочник

Время esxi всегда UTC. командами  date и hwclock  можно его менять.

Твикаем гостевые вм системы HLM\system\currentcontrolset\service\disk = 60

Отключить скринсейвер даже тот  что при блокировке

netsh interface ip dump > c:\ipsettings.txt экспорт настроек ip 
netsh -c interface -f c:\ipsettings.txt  импорт  ip настроек в windows
netsh int tcp show global показать настройки интерфейса

usb-over-ip  проброс флешек и других устройств по сети

Режим работы виртуальных дисков mode

presistent все изменения сразу пишутся на диск
nopersistent в таком режиме  на диск не будет ничего записываться. подходит для демонстраций
indenpended нельзя будет создавать снапшоты

Виртуальные диски


disk2.vmdk - описание геометрии диска. кол блоков и т.д.
 #extend deskription RW 65444337 VMFS "foo-flat.vmdk"  размер диска в блоках  по 512 .байт
 чтобы узнать реальный размер нужно умножить 65444337512

disk2-flat.vmdk - сами данные

vmkfstools -i disk.vmdk disk-new-small.vmdk - клонирование диска с уменьшением его размера

RAW DEVICE MAPPING (RDM) - подключение LUN напрямую в виртуальный

О файлах виртуальной машины

server.vmx файл настроек
server.vmxf вспомогательный файл настроек
server.vmdk и server-flat.vmdk это пара файлов отвечает за диск/данные виртуальной машины ( первый настройка, второй данные)
server-xxxxxx.vswp файл подкачки виртуальной машины
server.nvram настройки bios виртуальной машины
server.vmsd файл с информацией о снимках виртуальной машины
server-000001.vmdk и  server-000001-delta.vmdk файлы с информацией о снимке виртуальной машины
server-Snapshot1.vmsn память схороненная при снимке машины
*.log файлы логов виртуальной машины
Когда места на хранилище становится 99% то виртуальные машины останавливаются
Нехватка места может привести к неработоспособности всех виртуальных машин
du -h -a /vmfs/volumes/lun1/server покажет размер файлов в текущем каталоге

Производительность:

SIOC. управление потребление ресурсов хранилища, latency. для ssd 10-15мс норма. 
IOPS операций в секунду 60-120. Для обычных дисков 80. Для SSD 1000+

Не следует отдавать виртуальной машине много процессоров. Так как это может сказаться на производительность vm.
Следует давать ровно столько на сколько это необходимо.

Ресурсы мониторинг  resxtop, esxtop(основная консольная) программа, perfmon(получить инфу из win), esxplot(анализ логов)
esxtop shift+v данные по виртуальным машинам. m,n,d,u,v,c память, сеть, диск, диск, диск, процессор
выбираем процесс и нажимаем e покажется подробная информация о нем
цифры 2 и 8 подсветят строку. цифра 4 удалит строку с экрана. цифра 6 покажет все процессы. h помощь
esxtop -a -b -d 10 -n 1080 > /tmp/log.csv  создание лог файла  для анализа в программах esxplot и perfmon.  
a выгружать все, b бинарный формат, d интервал (каждые 10 сек), n количество выгрузка 

Вкладка Perfomance через интерфейс vSphere

CPU для процессора
usage сколько процессорного времени vm задействовала
wait столько времени было ожидание ввода/вывода
ready сколько еще осталось сделать (самый важный параметр)
CPU usage сколько щас используется процессора
CPU ready  высокий показатель говорит о том что виртуальной машине не хватает процессора
пример
used 559 выполнял полезную работу 559 мс
wait 19000 находился в ожидании операций ввода/вывода 19000 мс
ready 54 мс гостевая ос хотела выполнить работу но гипервизор не дал достаточно процессорного  времени а это еще 54 мс
Вывод:  проблема в дисковой системе.
Один квант измерений - 20сек - 20000 мс (миллисекунд)

Memory для памяти
Для оперативной памяти показателем недостаточности является вытеснения памяти виртуальной машины в файл подкачки 
Consumed сколько памяти выделено сервером для виртуальной машины 
Granted сколько памяти выделил сервер для виртуальной машины (память не выделяется пока она реально не понадобится)
Active с таким количеством памяти виртуальная машина работала в момент последнего запроса
Balloon столько памяти отбирает механизм balloon
Zipped memory  столько памяти находится в жатом виде.
Swapped memory  столько памяти помещено в vmkernel swap
Swap In Rate и Swap Out Rate активность использования файла подкачки
Механизмами balloon и swapped esxi отнимает ненужную память у виртуальных машин. 
Так что высокие показатели balloon и swapped  не могут показывать проблему с  производительностью.
Таким образом высокие показатели всех счетчиков  balloon, zipped, swapped, SwapInRate, SwapOutRate говорят о не хватке памяти

Disk для диска
Описание работы дисковой системы esxi (по этапам)
1) Гостевая  ОС работает с драйвером контроллером SCSI (виртуальным)
2) Он передает комманды-SCSI контроллеру, виртуальному
3) Они перехватываются гипервизором. Гипервизор формирует очередь команд-SCSI из обращений своих vm к диску 
     и передает ее драйверу контроллера. Это может быть драйвер HBA, служба NFS, или программный  iSCSI-инициатор.
4)  В зависимости от варианта эти команды попадают на контроллер HBA или NIC
5) Запрос отправляется на систему хранения данных (СХД) и в обратном па рядке отправляется vm
GAVG этап со 2-5, KAVG этап 3-4, DAVG этап 5.
Решения высокой доступности
Microsoft Failover Cluster(для вин),  Vmware Fault Tolerance , Vmvare Hight Availability(самое простое) (написаны в порядке лутше-похуже)
set-vmhost -state maintenance перевести хост в режим обслуживания
Для восстановления из образа нужно нажать shift+r  при загрузке esxi
Рубрики
esx*

Удаленная работа с виртуальными машинами ESX/ESXi

VNC:

Для включения VNC клиента, отредактируйте файл .vmx виртуальной машины, добавив туда следующие строчки:
remotedisplay.vnc.enabled=”true”
remotedisplay.vnc.password = “<ПАРОЛЬ>”
remotedisplay.vnc.port=”<ПОРТ>″
, где <ПАРОЛЬ> - любой подходящий пароль, <ПОРТ> - порт, используемый для подключения

Теперь вы сможете подключаться с помощью VNC клиента http://www.uvnc.com/download/1080/1080full.html

Альтернатива:

В качестве альтернативного варианта вы можете воспользоваться VMware Remote Console, входящей в состав VMware Player. 
Просто запустите из командной строки:
vmplayer -h <АДРЕС_ESX> <ПУТЬ_К_VMX>

Рубрики
esx*

VMware vSphere, ESX tools

Alarm action run script

Скрипт запускается на vCenter-сервере, контекст аларма передается переменными окружения

PATH=/bin:/usr/bin:/sbin:/usr/sbin
PWD=/var/log/vmware/vpx

VMWARE_ALARM_NAME=_Alarm-1
VMWARE_ALARM_ID=alarm-101
VMWARE_ALARM_ALARMVALUE=Current values for metric/state
VMWARE_ALARM_DECLARINGSUMMARY=([Yellow metric Is above 30%; Red metric Is above 70%])
VMWARE_ALARM_TARGET_NAME=win04
VMWARE_ALARM_TARGET_ID=vm-47
VMWARE_ALARM_NEWSTATUS=Yellow
VMWARE_ALARM_OLDSTATUS=Gray
VMWARE_ALARM_TRIGGERINGSUMMARY=Metric CPU Usage = 99%
VMWARE_ALARM_EVENTDESCRIPTION=Alarm '_Alarm-1' on win04 changed from Gray to Yellow

VPXD_HOSTNAME=vcva01.vclass.local
VPXD_IP_ADDR=172.20.10.94
VPXD_IPV6_ADDR=fe80::250:56ff:fe3f:ff01
VPXD_HTTPS_PORT=443
VPXD_HTTP_PORT=80

IS_HTTPS_PORT=10443
LD_LIBRARY_PATH=/usr/lib/vmware-vpx
LS_SERVER_LOCATION=https://vcva01.vclass.local:7444/lookupservice/sdk
ORACLE_HOME=/etc/vmware-vpx/oracle
PID_FILE=/var/run/vmware/vpxd.PID

Добавление apliance в AD-домен

domainjoin-cli join  domain.name domain-username
domainjoin-cli query
domainjoin-cli leave
domainjoin-cli query

Бесплатные бекапилки для vSphere и Free ESXi aka vSphere Hypervisor

Vsphere  Data  Recovery  (VDR) и Vsphere Data Protection (VDP) бесплатны, но для работы требуют наличия VCenter Server, бэкапить FreeESX они не могут.
В   бесплатной  версии  ESXi  отключено  VAPD(API  for  Data  Protection)  и CBT(Change Block Tracking)

GhettoVBC script (делает снапшот и клонирует VM)
Veeam Backup & Replication free edition(требует CBT и VADP)
VeeamZip

Thinware vBackup(требует ssh ESXi и Virtual Disk Development Kit vmware-mount.exe)
(free: fullbackup, paid:scheduled incremental)

Trilead VM Explorer
(free: fullbackup, paid:scheduled incremental + FLR)

Remote и Local Диски в Nested ESX

Диски,  подвешенные  на LSI SAS virtual controller в NestedESX инсталлятором показываются как "Remote"

Изменение версии virtual hardware у VM
Для Vsphere5.5 "Last verison" = 10, и VM перестает редактироваться в Win-client
Для понижения версии - создать новую VM, и подцепить к ней старый диск.
Точную версию можно назначить через Web Client

Или командой:
vim-cmd vmsvc/getallvms
vim-cmd vmsvc/upgrade {VMID} vmx-09

Как сделать слабый пароль пользователю ESXi


PAM  запрещает  давать  локальным пользователям ESXi слишком простые пароли.
Чтобы разрешить (временно, до перезагрузки) задание слабого пароля:

vi /etc/pam.d/system-auth # и в строчке
password requisite /lib/security/$ISA/pam_passwdqc.so retry=3 min=8,8,8,7,6

 min=8,8,8,7,6 заменить на min=6,6,6,5,4

Корректное клонирование ESXi — на флешку или Nested

В /etc/vmware/esx.cfg прописаны MAC vmk-интерфейсов, и системный UUID
Если их не помянять - клон получит дубляж MAC-адресов.

Перед клонированием выставить переменную FollowHardwareMac и удалить
/system/uuid - чтобы uuid и mac на новом клоне сгенерились заново

esxcli system settings advanced set -o /Net/FollowHardwareMac -i 1

sed -i 's%^/system/uuid =.*%%' /etc/vmware/esx.cfg

Миграция VM воткнутой в Internal switch

По   умолчанию   запрещена.   
Чтоб  разрешили  -  приходится  предварительно дисконнектить ethernet, или отключать с него IP-адрес изнутри гостевой OS.
"Лечится" advanced-настройкой VCentra
Administration > vCenter Server Settings > Advanced Settings
config.migrate.test.CompatibleNetworks.VMOnVirtualIntranet "false".

Переезд с Windows VC на Linux appliance VC

Передача базы не возможна. 
Схема Oracle-базы под Windows и Linux различаются. 
Migration-tool для 5.1, 5.5 отсутствует.
Остается экспорт-импорт дистрибьютед свитчей.

Roud Robin для всех

esxcli storage nmp device list # получить сисок LUN
esxcli storage nmp satp   set -satp=VMW_SATP_AA -default-psp=VMW_PSP_RR

# Единоразовое назначение на текущий сеанс для диска "dev.namnam" RR, iops=3
esxcli storage nmp device set -d "dev.namnamnam" -psp=VMW_PSP_RR
esxcli storage nmp psp roundrobin deviceconfig set -d "dev.namnam" -t iops -l 3

# Постоянное назначение для LUN'ов в конкретной модели СХД
esxcfg-rescan vmhba1
grep -i scsiscan /var/log/vmkernel.log
Vendor: 'VVV' Model: 'MMMM'

esxcli storage nmp satp rule add -s "VMW_SATP_AA" -V "VVV" -M "MMM" -P VMW_PSP_RR -O "iops=1"
# подействует после reboot'а

# или, чтоб сразу: переактивировать правила на ходу
esxcli storage core claiming unclame -t device -d naa.xxxx
esxcli storage core claimrule load
esxcfg-rescan vmhba1

Vmware-tools for nested-esxi 5.0, 5.1, 5.5


See more at: http://www.virtuallyghetto.com/2013/11/w00t-vmware-tools-for-nestedesxi.html#sthash.f89qps1O.dpuf
# Драверов в них - нет!
# Перед установкой в Maintance
esxcli system maintenanceMode set -e true

# Установка с локального датастора
esxcli software vib install -v /vmfs/volumes/DatastorName/esx-tools-for-esxi-9.7.0-0.0.00000.i386.vib -f

# Установка по сети
esxcli network firewall ruleset set -e true -r httpClient
esxcli software vib install -v http://download3.vmware.com/software/vmw-tools/esxi_tools_for_guests/esx-tools-for-esxi-9.7.0-0.0.00000.i386.vib -f

esxcli system shutdown reboot -r "Installed VMware Tools"

# Удаление
esxcli software vib remove -n esx-tools-for-esxi

Mem.MinFreePct — amount of the memory should keep free

Mem.MinFreePct =
 0- 4Gb 6%
 4-12Gb 4%
12-28Gb 2%
28-..Gb 1%

память раскладывается, т.е. например для 64Gb ( 4 + 8 + 16 + 36 )
Mem.MinFreePct = 4Gb * 6% + 8Gb * 4% + 16Gb *2% + 36Gb*1% = 1.24Gb (т.е. 1.9%)

Пороги по сработке методов рекламации памяти:
                >100% - High  - none
Mem.MinFreePct * 100% - ????  - baloon
Mem.MinFreePct *  64% - Soft  - compress
Mem.MinFreePct *  32% - Hard  - swap      (без блокировки VM)
Mem.MinFreePct *  16% - Low   - hard swap (с  блокировкой VM)

Redirecting vmware.log to ESX syslog

vmx.log.destination = "syslog-and-disk"    # syslog И штатный vmware.log
vmx.log.destination = "syslog"             # только в syslog
vmx.log.syslogID = VirtualMachineString    # чтоб опознавать логи

Emulating an SSD Virtual Disk in VM

scsi1:2.virtualSSD = 1

Интеграция HP Data Protector — не работает SAN и HotAdd


Зачастую, при бэкапе виртуальных машин в DP VEA вместо ожидаемого режима
SAN или HotAdd включается сетевой NBD. 

Советы, что подергать:
Поставить все патчи в DP
Установить самый свежий Update в ESXi
Посмотреть, не осталось ли зависших монтажных каталогов в ...\OmniBack\tmp и стереть их
Для DP 6.2 - SAN не работает на VMFS-5. Использовать VMFS-3
Для DP 6.2 - HotAdd не работает via ESXi server. Использовать VC server

Как сбросить забытый пароль admin@System-Domain в SSO


Если помним MasterPassword в SSO
..\Infrastructure\SSOServer\util\rsautil.exe reset-admin-password
/usr/lib/vmware-sso/utils/rsautil.exe reset-admin-password

Если не помним  MasterPassword, вставляем хэш пароля в SQL-базу SSO
SELECT [PASSWORD]
FROM [Dbo]. [IMS_PRINCIPAL]
WHERE LOGINUID = 'admin'
AND PRINCIPAL_IS_DESCRIPTION = 'admin'

UPDATE [Dbo]. [IMS_PRINCIPAL]
SET [PASSWORD] = 'хэш пароля'
WHERE LOGINUID = 'admin'
AND PRINCIPAL_IS_DESCRIPTION = 'admin'

Почему не включается Streaming ThinApp’ов

При захвате ThinAppa в Package.ini нужно выставить переменную
MSIStreaming = 1   (по умолчанию  стоит 0)
и запустить build.bat

Запуск Windows 2008 и Windows 8 на ESXi4.1

Windows 8 и 2012 штатно поддерживается начиная с ESXi 5.0 U1,
для более ранних версий ESXi скачать
http://www.vmgu.ru/ext/bios.440.rom и положить его в каталог VM

OS Type: Microsoft Windows Server 2008 R2
bios440.filename = "bios.440.rom"
mce.enable = TRUE
cpuid.hypervisor.v0 = FALSE
vmGenCounter.enable = FALSE

Затем поставить в VM tools от 5.1(/locker/packages/5.1.0) закачав их на ESX4

rm /productLocker ; ln -s /vmfs/volumes/{Datastore}/vmware-tools /productLocker
esxcfg-advcfg -s /locker/packages/5.1.0 /UserVars/ProductLockerLocation

Чтоб vmk0 автоматически получал MAC от своего vmnic
esxcfg-advcfg -s 1 /Net/FollowHardwareMac

И тогда при клонировании загрузочной USB-флешки с ESXi не возникнет дубля MAC

Как погасить дисплей, подключенный к ESXi

Приветствие на мониторе ESXi выводится на спецфайл терминала процесса DCUI

   cat /etc/inittab
. . .
tty1::respawn:/sbin/initterm.sh TTY1 /sbin/techsupport.sh ++min=0,swap
tty2::respawn:-/sbin/initterm.sh TTY2 /sbin/dcui 2
. . .

выводим в этот файл ESC-последовательность затирания терминала `tput clear`
т.е.   \033 [ H \033 [ 2J    оно и затрется

Команда затирания изнутри ESXi-сервера:

    echo -e "\033[H\033[2J" > /dev/tty2

или, скажем, снаружи, через SSH:
    ssh root@192.168.1.102 'echo -e "\\033[H\\033[2J" > /dev/tty2'

Узнать PID vmm-процесса VM

esxcli vm process list  -  см. VMX Cartel ID

ps -c
kill -STOP {pid}
kill -CONT {pid}

Hyper-V in VMware VM


Заменить guestOS = "windows8srv-64" на 
guestOS = "winhyperv"
featMask.vm.hv.capable = "Min:1"

Передача в VM информации о платформе («проброс BIOS»)

В .vmx файл добавить
smbios.reflecthost = TRUE

Доступ к экрану View-сессии через vsphere console

Запустить Group Policy Management
Edit -- Group Policy Management Editor -- Computer Configuration
      -- Policies -- Administrative Templates" -- "Add/Remove Templates

Загрузить ...\VMware\VMware View\Server\Extras\GroupPolicyFiles\pcoip.adm

Затем

 Computer Configuration
   Policies
     Administrative Templates" -- "Add/Remove Templates
       Classic Administration
         PCoIP Sessions - выставить переменную:
         Enable access to PCoIP session from a vSphere console -- enable

Copy/paste в консоли VM

По умолчанию выключено по соображениям безопасности. 
Для активации:

isolation.tools.copy.disable    false
isolation.tools.paste.disable   false

5.1 Переименование vmdk-файлов при миграции VM

У переименованной VM имена файлов остаются старые, и не меняются даже
при миграции. При миграции переименовывается только каталог.
Чтобы при миграции файлы переименовывались:
Administration -- vCenter Server Setting -- Advanced Settings

provisioning.relocate.enableRename true

Расположение дистрибутивов vmware-tools в ESXi

Каталог для tools задается конфигурационным параметром
UserVars.ProductLockerLocation = /locker/packages/5.1.0
после перезагрузки автоматически создается симлинк /productLocker на него:

 ln -s /locker/packages/5.1.0 /productLocker

V51: 15 секундная задержка при открытии console у VM

Надеюсь этот глюк когда-нибудь запатчат. Но пока...

http://kb.vmware.com/kb/2020988
your desktop/laptop used to connect to vCenter is not connected to
internet and so his unable to download updated root certificates
from www.download.windowsupdate.com

На Win 7
gpedit.msc

Computer \ Administrative Templates\System
      \Internet Communication Management\Internet Communication Settings

Modify "Turn off Automatic Root Certificates Update"  set "Enable"

V51: подробности про Single Sign On

Default SSO Admin Account: admin@System-Domain   VMw@re11

Настройка через Web-client:
  Administration -- Configuration -- Identify Sources -- + добавление источника

V5: настройка SNMP

esxcli system snmp set -communities public            # задать community-string
esxcli system snmp set -targets server.domain@161/public # куда слать трапы
esxcli system snmp set -enable true                   # активируем SNMP-сервер
esxcli system snmp test

V5: команды по мониторингу дисков


esxcli storage san fc reset -A vmhba3
esxcli storage san iscsi stats get

# получить статус SSD (и не только) диска
esxcli storage core device smart get -d naa.xxxxxx

 Media Wearout Indicator    показатель здоровья SSD диска
 Reallocated Sector Count   перемапленные bad-сектора
 Drive Temperature

Файл webclient.properties

Operating System	File path
Windows 2003	%ALLUSERPROFILE%Application Data\VMware\vSphere Web Client
Windows 2008	%ALLUSERPROFILE%\VMware\vSphere Web Client
vCenter Server Appliance	/var/lib/vmware/vsphere-client

session.timeout = value
время жизни сессии. Чтобы сессия не отваливалась - 0.

Загрузка VM с USB в Vmware Workstation

1. Виртуальный BIOS не умеет загружаться с USB.

Хак 2. Add -- Hard Disk -- RDM -- в качестве физдиска выбираем USB-флешку.
Затем в настройках BIOS назначаем этот "диск" загрузочным.

Хак 3. http://www.plop.at/en/bootmanagerdl.html
Plop Boot Manager - загрузочный iso, умеет редиректить загрузку на USB

Автоматическое скриптовое конфигурирование свежезадеплоеного VCSA

Подробности: http://www.virtuallyghetto.com/2012/09/automating-vcsa-51-vcenter-server.html

ssh vcserver <<\EOF

VCFQDN=vcapp-diego05.hp.local
ADADMIN=adadmin05
ADPASSW=password

ADDOMAIN=`echo $VCFQDN | sed 's/[a-z0-9-]*.//`
  VCNAME=`echo $VCFQDN | cut -d. -f1`
############
echo $VCFQDN > /etc/HOSTNAME
/bin/hostname $VCFQDN
sed -i s/localhost.local[a-z]*/$VCFQDN/g /etc/hosts
sed -i s/localhost.local[a-z]*/$VCNAME/g /etc/hosts
/usr/sbin/vpxd_servicecfg db write "$ADADMIN" "$ADPASSW" "$ADDOMAIN"

/usr/sbin/vpxd_servicecfg eula accept
/usr/sbin/vpxd_servicecfg tz write MSK
/usr/sbin/vpxd_servicecfg db write embedded
# /usr/sbin/vpxd_servicecfg sso write embedded # SSO for v5.1
/usr/sbin/vpxd_servicecfg service start
#########
EOF

Копирование VM с хоста на хост с помощью ovftool by William Lam

ovftool  vi://root@esx1/ # смотрим имеющиеся VM, -ds = Destination Storage
ovftool -ds=esx2-Local-storage -dm=thin vi://root@esx1/VMname vi://root@esx2

Ghosted-ethernets в Windows

После  удаления  и замены на новый виртуального ethernet старый конфиг может
заклинить и не даст назначить прежний IP новому адаптеру.

 Запускаем Device Manager с показом nonpresent_devices

set devmgr_show_nonpresent_devices=1
devmgmt.msc
                        View > Show Hidden Devices.

И удаляем zombi-ethernet

Конфигурирование software FCoE


vmnic _обязан_ иметь FC-offload

Выяснить, под каким VLAN зарегистрирован FC в коммутаторе и сделать vmk-порт
на требуемом vmnic (обеспечить  ему  моно-тиминг)  с  этим  VLAN.  IP  можно
назначить любой - он не используется.

Затем - Storage Adapters -- Add -- Software FCoE

Активация Perfmon DLL и подгрузка esxtop-csv в Perfmon

tools.guestlib.EnableHostInfo = TRUE
активирует в Perfmon показ метрик VM Memory и VM Processor

resxtop -a -b > file.csv

graph -- Properties -tab- Source -- DataSource -- Log files [*] -- Add
 browse *.csv OK

# Собрать статистику в файл за 300 сек с шагом 30, а затем прокрутить их
vm-support -S -d 300 -l 30 filename
resxtop -r filename

Как сделать самопальный .vib

VIB-архив вскрывается и создается архиватором ar
  ar tv file.vib
  ar vx file.vib

Внутри  лежит  descriptor.xml с описанием и списком файлов пакета,
файл с sig.pkcs7 сигнатурой(можно делать пустой) и
tar-gzip-архив без расширения с файлами пакета

tar czvf vibname etc/
vi descriptor.xml
vi sig.pkcs7
ar -r vibname.vib vibname descriptor.xml sig.pkcs7

scp vibname.vib root@esxi:/vibname.vib

esxcli software acceptance set --level CommunitySupporte
esxcli software vib install -v /vibname.vib

Origin:
How to create your own .vib files

Добавление пользовательских портов в firewall ESXi 5

cd /etc/vmware/firewall
more services.xml
vi my.xml         # По образу и подобию сделать аналогичные описания портов
esxcli network firewall refresh

После перезагрузки этот файл утрачивается - он создан в рамдиске.
Поэтому - копируем его в /storage или куда-нибудь на /vmfs/vlumes/...
и добавляем в /etc/rc.local (если ESXi 4.x или ESXi 5.0)
или в /etc/rc.local.d/local.sh (если ESXi 5.1)

cp /store/my.xml /etc/vmware/firewall/
esxcli network firewall refresh

Перманентное сохранение настроечных файлов в ESXi 5.0

ESXi размещает свой корень в рамдиске. Конфиг-файлы, подлежащие сохранению
имеют stiky-bit и файл-двойник .#filename
закронтабленной командой /sbin/auto-backup.sh все они сохраняются в архиве
local.tgz, который пакуется внутрь /bootbank/state.tgz
при каждой загрузке конфиги вынимаются из сохраненного local.tgz

Не в рамдиске живут /bootbank /altbootbank /store - они конечно сохранюется

 ls -al | grep -i ^.........t
-r--r--r-T    1 root     root                  0 Aug 19  2011 .#chkconfig.db
-r--r--r-T    1 root     root                183 Aug 19  2011 .#hosts
-r--r--r-T    1 root     root                 82 Aug 19  2011 .#ntp.conf
-r--r--r-T    1 root     root                257 Aug 19  2011 .#passwd
 . . .

ls -al /bootbank # В /bootbank лежат архивы с софтом и конфигурацией

cat  /bootbank/boot.cfg # параметр modules в файле boot.cfg
                        # говорит, какие архивы подлежат вскрытию в рамдиске
modules=b.b00 --- useropts.gz --- k.b00 ... --- imgdb.tgz --- state.tgz

tar tzvf /bootbank/state.tgz
 -rwx------ 0/0     22135 2012-07-26 19:01:02 local.tgz


http://www.virtuallyghetto.com/2011/08/how-to-persist-configuration-changes-in.html
http://www.virtuallyghetto.com/2011/08/how-to-persist-configuration-changes-in_09.html

Схлопывание тонкого диска



Опустевший тонкий диск перед схлопыванием - залить нулями
В винде - командой sdelete
В Linux - заливкой пустого места файлом из нулей
   dd if=/dev/zero bs=1024k of=/fs/mount/fuflo ; rm /fs/mount/fuflo ; sync

Затем сделать два SVMOTION: thin ==> thick eager ; thick eager ==> thin

Место хранения лицензии на ESX-сервере


/etc/vmware/vmware.lic
/etc/vmware/license.cfg
 при их удалении лицензия сбрасывается

Подключение ленточных библиотек в VM


1. FC-connected tape libraryes not supported

2. Отменить ALUA SATP для библиотечных устройств (tape и changer)


Для v4.1
esxcli nmp satp listrules -s VMW_SATP_ALUA
esxcli nmp satp deleterule --satp VMW_SATP_ALUA --claim-option tpgs_on

Для v5.0
esxcli стораге nmp satp listrules -s VMW_SATP_ALUA
esxcli storage nmp satp rule remove -s VMW_SATP_ALUA
  --device="" --vendor="" --model="" --claim-option="tpgs_on"
      --driver="" --transport="" -b

3. Сделать их monopath.

http://vmpress.blogspot.com/2010/12/fc-tape-library-vmware-esxi.html

Автоматическое создание и удаление снапшотов

http://faq.sanbarrow.com/index.php?solution_id=1080
В WS и Fusion - используем Autoprotect
В ESX - руками правим .vmx

napshot.minFreeSpace = value in bytes
snapshot.maxSnapshots = number of allowed snapshots


The basic parameters

rollingTier0.interval = "10"
This parameter sets a time-interval in seconds.
With this value a snapshot will be created every 10 seconds

snapshot.numRollingTiers = "3"
This parameter sets the number of timers you want to run.


rollingTier0.maximum = "33"
This parameter sets the maximum number of snapshots that will be created by the timer.


rollingTier0.live = "TRUE"
Also stores the memory along with the snapshot

Удаление снапшотов древнее, чем 3 дня:

Get-VM  -Name VMName  | Get-Snapshot | \
 Where-Object { $_.Created -lt (Get-Date).AddDays(-3) } | Remove-Snapshot


Snaphot parameters
snapshot.action = [ keep | autoRevert | autoCommit | prompt ]
workingDir =
suspend.Directory =
snapshot.numSnapshots =
snapshot.minFreeSpace =

HA VM and VM&Application monitoring

Агент  HA мониторит состояние VM, и если она умерла неестественной смертью -
перезапускает на _том же самом_ хосте.

VM monitoring, условие перезапуска:
 либо: аварийный останов сопровождающего VMM
 либо: отсутствие vmtools heartbeat AND полное отсутствие IO

Application monitoring, условие перезапуска:

 Внутри VM необходимо в цикле запускать программу
 C:\VMware-GuestAppMonitorSDK\bin\win32>vmware-appmonitor.exe
  {enable | disable | markActive}
 markActive - подается не реже, чем раз в 30 секунд
 enable     - включает  application monitoring изнутри
 disable    - выключает application monitoring изнутри

 Входит в состав VMware-GuestAppMonitorSDK, добывается гуглением

 
vSphere 5.0 HA: Application Monitoring intro

Vmware Data Recovery

Pre- и post-freeze скрипты:

Windows: Перед бэкапным снапшотом - исполняются по алфавиту все скрипты из
C:\Program Files\VMware\VMware Tools\backupScripts.d
 После удаления бэкапного снапшота - они же, в обратном порядке

Linux Pre-freeze /usr/sbin/pre-freeze-script
Linux Post-thaw /usr/sbin/post-thaw-script

Serial Port connection

Вариант: Named Pipe - цепляет компорт одной VM(near end=client) к
компорту другой VM(near end=server) - обе машины используют одинаковое
слово в поле Pipe Named - чтобы найти друг друга

Вариант: Use Network
 * Server
 Port URI: telnet://:12345
 После включения VM делаем: "telnet esx.host 12345" и попадаем в компорт VM

Вариант: Use Network
 * Client
 Port URI: telnet://external.linux:23456  (можно так же ssh?)
 После включения VM делает "telnet external.linux 23456"
 и пробрасывает туда свой компорт

Virtual Serial Port Concentrator

Появился в v4.1. Поставляется в виде (платного?) апплианса
ACS v6000 Virtual Advanced Console Server
В апплиансе управление IP, с консоли: wiz

У VM'ки: Add Serial Port -- Connect Via Network --
 Click Use Virtual Serial Port Concentrator.
 Port URI: ACSID://ttyS42    (42 = номер порта в концентраторе)
 vSPC URI: telnet://192.168.1.1:8801 - назначает tcp-порт в концентраторе

 Внутри гостевого Linux, в /etc/grub.conf
 console=ttyS0,9600 - переназначает GRUB-console w COM-port

Так же см:  free vspcpy server
http://sourceforge.net/p/vspcpy/home/Home/

Коротко про View Persona Management

Origin: http://www.vmgu.ru/articles/vmware-view-persona-management

Можно установить на Connection-сервере GPMC.msc - Group Policy Management Editor
http://www.microsoft.com/download/en/details.aspx?id=21895

Запускаем GPMC или запускаем штатный gpedit.msc

Computer Configuration>Policies>Administrative Templates - Add/Remove Templates

 на CS подключаем c:\...\VMware\VMwareView\Server\extras\GroupPolicyFiles\ViewPM.adm
 на десктопе подключаем c:\...\VMware\VMwareView\ViewAgent\bin\ViewPM.adm

Затем переходим в

Computer Configuration>Policies>Administrative Templates
  >VMware View Agent Configuration> Persona Management
     >Roaming& syncronisation
        GPO "Persona Repository Location"
     >Folder Redirectiop
        . . .
     >Desktop UI
        . . .

Как выключить ESXi через ssh

# этот метод жестко убивает VM-ки
ssh root@esx 'shutdown.sh ; poweroff'

VM cannot allocate memory при большом об’еме vmdk


При подключении более 20 жмдк и/или больше 4 Т vmdk суммарно
виртуальной машине не хватает heap size.

VMFS3.MaxHeapSizeMB = увеличить

Создание DB-instance в Oracle для VCSA

sqlplus sys/manager as SYSDBA

CREATE SMALLFILE TABLESPACE "VPX" DATAFILE "/var/oracle/oradata/vpxd/vpx01.dbf"
 SIZE 1G AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED LOGGING EXTENT
 MANAGEMENT  LOCAL SEGMENT SPACE MANAGEMENT AUTO;

CREATE USER "VPXADMIN" PROFILE "DEFAULT" IDENTIFIED BY "oracle"
 DEFAULT TABLESPACE "VPX" ACCOUNT UNLOCK;

grant connect, resource, create view, sequence, create table to VPXADMIN;
grant create materialized view to VPXADMIN;
grant execute on dbms_lock, execute on dbms_job to VPXADMIN;
grant execute on dba_tablespaces to VPXADMIN;
grant select on dba_temp_files, select on dba_data_files to VPXADMIN;
grant unlimited tablespace to VPXADMIN;

Название instance придумывается и вбивается в web-управлялке VCSA
tsnames.ora редактировать не требуется

Advanced настройки управляющие памятью



Mem.ShareVmkEnable = 1       # Разрешает Transparent Page Sharing
Mem.MemZipEnable = 1         # Разрешает Memory Compression
Mem.GuestAllocLargePages = 1 # Разрешает LagePage во всех VM

Отключение ASLR (Address Space Layout Randomization) в реестре VM
\HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\MoveImages
создать ключ DWORD = 0       # Disable ASLR = плюс 20% к эффективности TPS
                             # Disable ASLR = минус x% к секьюрности OS

Внутри VM читаем информацию о настройках vApp, IP pool и OVF environment

http://virtual-red-dot.blogspot.com/2012/01/vapp-options-in-vm.html
http://blogs.vmware.com/vapp/2009/07/selfconfiguration-and-the-ovf-environment.html

Linked-clone своими руками

Берем обычную VM-1 с обычным виртуальным диском. 
Делаем ей снапшот.

Делаем VM-2, с "Disk - Use existing".  Через "Browse" находим диск VM-1 - их
там два - исходник, и delta - цепляемся к исходному. Не включая VM-2, делаем
ей  снапшот.  Теперь  VM-1 и VM-2 можно безболезненно запускать, в т.ч. и на
разных хостах.

Beacon probing по двум аплинкам: револьверный режим

На  двух аплинках beacon probing failure не в состоянии определить, какой из
аплинков "погас" (ведь бродкасты не проходят по обоим  направлениям).  Тогда
дополнительно  проверяется  Link  Status.  Если  оба  аплинка  "up", vSwitch
переключается в "shortgun mode"(двустволка) - весь трафик дублируется в  оба
аплинка.  Это может быть (а может не быть) чревато шквалом RARP бродкастов -
используемых при "Notify switches".

Beacon probing нельзя применять при Ether Channel (balancing by IP hash)

Просмотр информации о хардвере ESXi 5.0

smbiosDump

Установка апдейта в vSphere 5.0

vihostupdate в V5 отменена. Вместо нее esxcli
esxcli -server=x.x.x.x -username=root software vib update -depot=/vmfs/volumes/datastore/ESXi500-201109001.zip

Что почитать про vSphere


Книжки:
  Scott Lowe "Mastering vSphere 5" - лучшая
  F.Guthrie, S.Lowe "VMware vSphere Design" (изд.2, 2012)
  Duncan Epping, Frank Denneman "VMware vSphere 5 Clustering Technical Deepdive"
  Mostafa Khalil "Storage Implementation in vSphere 5.0"
  Perf_Best_Practices_vSphere

Книжки на русском:
  Скотт Лоу "VMware vSphere 4. Полное руководство"(Mastering VMware vSphere 4)
  Михаил Михеев "Администрирование VMware vSphere 5"

Околоvmware'овские блоги:

http://www.vmgu.ru
http://www.virtuallyghetto.com
http://vmind.ru
http://blog.vadmin.ru
http://jabuin.livejournal.com/
http://www.vsphere.ru
http://www.vmworld5.ru
http://vmpress.blogspot.com
http://www.vm4.ru
http://communities.vmware.com/community/vmtn/vmug/forums/emea/russia?view=discussions

VMware Free Learning Videos
VMware Technical Journal

VADP: vSphere storage APIs for Data Protection

VAPD FAQ
VADP описание API http://www.vmware.com/support/developer/vddk/vadp_vsphere_backup111.pdf
VADP сам по себе (загрузка?)
VAAI: vSphere storage APIs for Array Integration
    
     VAAI plugins for Array
ATS (Atomic Test and Set) - Hardware Assisted Locking
Clone - Hardware Accelerated Full Copy - копирование vmdk
Zero -  Hardware Accelerated Block Zeroing - обнуление eager zeroed vmdk
Delete - Thin Provisioning - оповещение RAID об удалении VMDK (полезно для массивов с thin-provisioned LUN)

    VAAI plugins for NFS
Reserve Space - позволяет создать thick vmdk на NFS'e
Full File Clone - копирование vmdk
Lasy File Clone - "копирование" посредством NAS-snapshot (offload аналог linked clone)
   
esxcli storage core device vaai status get - просмотр возможности VAAI для разных LUNs
esxcli storage core claimrules list -c all - просмотр стандартных назначений VAAI-модулей для поддерживаемых Arrais

Как назначить локальному SATA диску фальшивый атрибут SSD

http://www.virtuallyghetto.com/2011/07/how-to-trick-esxi-5-in-seeing-ssd.html

# делаем правило
esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device mpx.vmhba1:C0:T2:L0 --option=enable_ssd

# проверяем его
esxcli storage nmp satp rule list | grep enable_ssd

# активируем
esxcli storage core claiming reclaim -d mpx.vmhba1:C0:T2:L0
vim-cmd hostsvc/storage/refresh

# убеждаемся
esxcli storage core device list --device=mpx.vmhba1:C0:T2:L0

Чтобы ESXi не жаловался на включенный SSH

Configuration -- Software -- "Advanced Settings"
UserVars > UserVars.SupressShellWarning = 1

HA/DRS 5.0 advanced options

VMware Distributed Resource Management: Design, Implementation and Lessons Learned

das.ignoreinsufficienthbdatastore = true
das.heartbeatdsperhost = value

http://www.virtuallyghetto.com/2011/07/new-vsphere-5-ha-drs-and-sdrs.html

Частота прерывания таймера в Linux

Кернельный параметр divider=10 сокращает дефолтную частоту обработчика
таймера в 10 раз, что сокращает CPU overhead для idle VM.

Размещение снапшотов

snapshot.redoNotWithParent = "TRUE"
workingDir = "..."
snapshot.maxSnapshots = "n"

Configuring Auto Deploy on the vCenter Server Appliance

Подробнее тут http://www.yellow-bricks.com/2011/08/25/using-vsphere-5-auto-deploy-in-your-home-lab/

 1. Запускаем Autodeploy на VCapp
https://vcapp-iodine12.hp.local:5480/
Services - Status - Start ESXi services

 2. Настраиваем TFTP

vSphere Client -- Home - Administration - Autodeploy -
"Download TFTP boot zip" и вскрываем эти PXE-файлы
в корневой каталог TFTP-сервера

Привязка PXE-загрузчика к конкретному Autodeploy - в файле "tramp":
#!gpxe
set filename https://10.10.47.242:6502/vmw/rbd/tramp
chain https://10.10.47.242:6502/vmw/rbd/tramp

 3. Настраиваем DHCP

vi /etc/sysconfig/dhcpd
DHCPD_INTERFACE="eth0"

mv /etc/dhcpd.conf /etc/dhcpd.conf.old
vi /etc/dhcpd.conf

ddns-update-style interim;
subnet 10.10.47.0 netmask 255.255.255.0 {
range 10.10.47.212 10.10.47.212;
option routers 10.10.47.3;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.47.3;

# файл автодеплойного загрузчика на указанном TFTP сервере
filename "undionly.kpxe.vmw-hardwired";
next-server 192.168.47.112;

host _disklessesxhostname_ {
hardware ethernet _MA:Ca:dd:re:ss:ESX_;
fixed-address 10.10.47.212;
} }

service dhcpd restart

 4. Настраиваем Autodeploy с помощью autodeploy PlugIN

http://labs.vmware.com/flings/autodeploygui

 4. Настраиваем Autodeploy с помощью PowerCLI

File path to the ESXi offline image c:\HL234\VMware-ESXi-5.0.0-469512-depot.zip

# разрешаем работу PowerCLI
get-executionpolicy
set-executionpolicy unrestricted
connect-viserver vCenter.Server.name

# подключаем архив с дистрибутивом ESXi к ImageBuilder
Add-EsxSoftwareDepot  c:\HL234\VMware-ESXi-5.0.0-469512-depot.zip

# а так подключается vmwar-овский депот
Get-Help Add-ESXSoftwareDepot -Full
Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
# HP depot с HP-build ESXi
Add-EsxSoftwareDepot http://vibsdepot.hp.com/index.xml
# Список image-профайлов в подключенных депотах
get-esximageprofile

# Заряжаем правила соответствия - какой хост каким boot-образом кормить:

# Привязываем image-профайл (фактически - boot-образ) ко всем хостам
new-deployrule -name prawilo1 -item ESXi-5.0.0-469512-standard -allhosts

# загруженный хост включать в кластер Cluster12
new-deployrule -name prawilo2 -item "Cluster12" -allhosts

# к загруженному хосту применить Host Profile
new-deployrule -name prawilo3 -item "HostProfile12" -allhosts

# Активируем созданные правила
add-deployrule -deployrule prawilo1
add-deployrule -deployrule prawilo2
add-deployrule -deployrule prawilo3
add-deployrule -deployrule
get-deployruleset

     5. Stateless Caching

   Конфиг берется из Profile, однажды загруженный по сети ESX кэшируется
на локальный диск или usb и грузится в случае отказа PXE-boot
Выставить в BIOS порядок загрузки: 1. Network, 2. Local Disk

Host Profiles -- выбрать diskless-profile -- Edit Profile:
   System Image Cache Configuration -- > System Image Cache
       -- > Enable stateless caching on the host
         *Argument for first disk:   esx,local        (или   esx,usb)
         *Check for overwrite any VMFS volume on selected disk: NO

     6. Statefull Installation

   Конфиг берется из Profile, однажды загруженный по сети ESX кэшируется
на локальный диск или usb и грузится в дальнейшем с него.
Выставить в BIOS порядок загрузки: 1. Local Disk, 2. Network

Host Profiles -- выбрать diskless-profile -- Edit Profile:
   System Image Cache Configuration -- > System Image Cache
       -- > Enable statefull installs
         *Argument for first disk:   esx,local        (или   esx,usb)
         *Check for overwrite any VMFS volume on selected disk: YES (или NO)


    Еще несколько команд:

Test-DeployRuleSetCompliance -VMHost host1.company.local
Get-VMHost host1.company.local | Test-DeployRuleSetCompliance

Get-VMHost host1.company.local | Test-DeployRuleSetCompliance | Repair-DeployRuleSetCompliance

Get-VMHostAttributes -VMHost host1.company.localB
Get-VMHost host1.company.local | Get-VMHostAttributesB

Get-VMHostMatchingRules  host1.company.local
Get-VMHost host1.company.local | Get-VMHostMatchingRulesB

Get-Command -Module VMware.DeployAutomaionB

Image Builder

Add-EsxSoftwareDepot C:\ESXi-Depot\update-from-esxi5.0-5.0_update01.zip     # Add offline software depot
Add-EsxSoftwareDepot http://vibsdepot.hp.com                                # Add online software depot

Remove-EsxSoftwareDepot zip:C:\ESXi-Depot\update-from-esxi5.0-5.0_update01.zip?index.xml  # Remove offline software depot

 Get-EsxSoftwareChannel

 Set-EsxImageProfile

Get-EsxSoftwarePackage                                                      # Show available VIBs
Get-EsxSoftwarePackage -Name tools-light                                    # Show details for VIB "tools-light"
Get-EsxSoftwarePackage -Vendor VMware                                       # Show all VMware VIBs
Get-EsxSoftwarePackage -AcceptanceLevel PartnerSupported                    # Show PartnerSupported VIBs
Get-EsxSoftwarePackage net-e1000 | Select -ExpandProperty Depends           # Show dependencies for VIB "net-e1000"
Get-EsxSoftwarePackage net-e1000 | Select -ExpandProperty Conflicts         # Show conflicts for VIB "net-e1000"
Get-EsxSoftwarePackage net-e1000 | Select StatelessReady                    # Identify if VIB "net-e1000" is Stateless Ready

New-EsxImageProfile -CloneProfile ESXi-5.0.0-20120302001-standard -Name CustomProfile -AcceptanceLevel PartnerSupported
New-EsxImageProfile -NewProfile -Name MinInstall -Vendor Custom -SoftwarePackage esx-base,esx-tboot,misc-drivers

Add-EsxSoftwarePackage    -ImageProfile CustomProfile -SoftwarePackage tools-light # Add VIB "tools-light" to CustomProfile
Remove-EsxSoftwarePackage -ImageProfile CustomProfile -SoftwarePackage tools-light # Remove VIB "tools-light" from CustomProfile

Get-EsxImageProfile  # Show Image Profiles
Get-EsxImageProfile CustomProfile | Select -Expand VibList                         # List VIBs in Image Profile "CustomProfile"
Compare-EsxImageProfile CustomProfile01 CustomProfile02                            # Compare Image Profiles CustomProfile01 and CustomProfile02

Export-EsxImageProfile -ImageProfile CustomProfile -ExportToIso -FilePath C:\ESXi-Depot\CustomProfile.iso
Export-EsxImageProfile -ImageProfile CustomProfile -ExportToBundle -FilePath C:\ESXi-Depot\CustomProfile.zip

Get-Command -Module VMware.ImageBuilder

Изменение частоты таймера для Linux

Штатная частота прерываний таймера во многих Linux - 1000 Hz. Понизить ее до 100 Hz можно ключом начальной загрузки:
divider=10

Если DPM не выключает хосты


Проверить, что _все_ VM-ки поддаются vmotion в оба конца.
Зачистить COM-порты у VM-ок, полученных с помощью Convertor'а,
как минимум выставить им: NOT connected, и NOT connected at poweron
Чтоб vsphere-клиент при выборе LUN для RDM/VMFS показывал все LUN
Чтоб vsphere-клиент при выборе LUN для RDM/VMFS показывал все LUN, а не только незанятые:

Administration > vCenter Server Settings > Advanced Settings.

 config.vpxd.filter.rdmFilter; false
 config.vpxd.filter.vmfsFilter; false

Это СТРЕМНО! Не подумав, не применять!
http://kb.vmware.com/selfservice/microsites/search.do?externalId=1010513

Оффтопик. Скриптинг в win-cmd

cmd /c c:\wintools\devcon.exe find "USB\VID_0BB4&PID_0C02&MI_01" | c:\batch\htc.cmd
########### htc.cmd ##########################
@echo off
set /p res=
if "%res%"=="No matching devices found." goto end
"C:\Program Files (x86)\MyPhoneExplorer\MyPhoneExplorer.exe" action=sync flags=noerrmsg syncitem=multi
:end

VDS — конфигурирование без VC

Вообще-то  без  VC VDS конфигурировать невозможно, но если у портовой группы port binding = ephemeral, 
то подключить виртуалку к VDS можно будет и  через
host, без доступа к VC

Превращение VM с 4-vcpu в VM с двумя двухядерными процессорами

cpuid.coresPerSocket = 2

Как уменьшить размер виртуального диска

1. Партицию на уменьшаемом диске надо подрезать _заранее_

2. В файле .vmdk уменьшаем явно заданный (в блоках по 512b) размер диска,
RW 25165824 VMFS "Win2003se-flat.vmdk"
затем - делаем диску migrate, или "storage vmotion" или VM clone.

3. Официально vmware этот трюк не поддерживает.

Просмотр ARP-таблицы в ESXi

esxcli network neighbor list
а еще можно - vimsh - по свойствам vSwitch

Как обнулить пароль в ESX и ESXi

В ESX - загрузиться single user mode

В ESXi содержимое /etc/passwd при каждой загрузке замещается с конфиг-архива.
Поэтому править нужно в нем.

setup.tgz лежит на VFAT-партиции No 2(? 3?4?) содержит local.tar -
вскрыть их, исправить файл, затем свернуть обратно и положить на место.

Как восстановить удаленный VMFS3

Команда "Delete Datastore" удаляет из partition table партицию типа "fb", но сама мета-информация VMFS - остается целой.
Для оживления удаленного VMFS надо просто воссоздать партицию ручным fdisk стем же размером, что был у оригинала.
Тип партиции: "fb"
Командой "e" (Expert mode) - "x 128"(отступ) сместить начало партиции на 128
блок (т.е. 64Kb от начала)
Затем "Rescan strorages" - и VMFS будет обнаружен.

Переназначение snapshot’ов и swap’а на другой сторадж

Вставляем в .vmx  строчку
workingDir="/vmfs/volumes/Datastore1/vm-snapshots"

она переназначает и снапшоты и swapfile тоже.

Если swapfile должен лежать в другом сторадже, задаем его:
sched.swap.dir="path_to_vm_directory...or_other_datastore_dir"

сделать машине "Remove from inventory"+"Add to inventory"

Установка updates в ESXi

Встать в Maintеnаnce моде

 Удаленно:
/usr/lib/vmware-vcli/apps/host/hostops.pl --target_host ESX-Host-FQDN
  --operation enter_maintenance --url https://vCenter-Host/sdk/vimService.wsdl

 Локально:
vim-cmd hostsvc/maintenance_mode_enter

esxupdate --bundle /vmfs/volumes/nfs/update-from-esxi4.1-4.1_update01.zip update

vim-cmd для ESXi

vim-cmd vmsvc/getallvms          # список всех VM
vim-cmd vmsvc/power.getstate 65  # power-статус
vim-cmd vmsvc/power.off 64       #power.shutdown,power.suspend ...
vim-cmd vmsvc   # help

# shutdown всех VM
vim-cmd vmsvc/getallvms|sed -e "s/ .*//"|grep "^[0-9]*$"|\
while read vmid ; do vim-cmd vmsvc/power.shutdown $vmid ; done

Перезагрузка ESX3.5:

shutdown -r или vim-cmd hostsvc/maintenance_mode_enter
reboot -f или vim-cmd hostsvc/maintenance_mode_exit

Реконфигурация сети у vMA

Можно перезапустить скрипт начальной конфигурации сетевых параметров vMA:
# в VMA 4.0
vi-admin$ sudo /opt/vmware/vima/bin/vmware-vima-netconf.pl
# в VMA 4.1
vi-admin$ sudo /opt/vmware/vma/bin/firstboot/vmware-vma-netconf.pl

Дабы у vMA не двоила клавиатура — вставить в .vmx

keyboard.typematicMinDelay = 2000000

FT машины не обслуживаются DRS-кластером

Если в DRS-кластере активировать EVC, DRS начнет обслуживать и FT-машины

View: если зависает QuickPrep Customization на Win7

Десктопы Win7 без лицензии (evaluation) QuickPrep'овскую кастомизацию
до конца не отрабатывают, создание  пула linked-clonов дает ошибку.

Лечение: regedit'ом отредактировать реестровую переменную (примерно)

Local Machine/System/Current Control Set/Services/
      VmwareViewComposer-ga/SkipLicenseActivation = 1

Как выполнить команду внутри GUEST OS

 NOTE! В 2013 VIX API заменяется на  vSphere Guest Operations API
 http://www.virtuallyghetto.com/2011/07/automating-new-integrated-vixguest.html
 https://www.vmware.com/support/developer/vix-api/guestOps50_technote.pdf

 Устаревший вариант: VMware API VIX
download: http://www.vmware.com/support/developer/vix-api/

В его состав входит команда vmrun

http://www.virtuatopia.com/index.php/Controlling_VMware_Virtual_Machines_from_the_Command_Line_with_vmrun

В .vmx вписать (по умолчанию выключено)
vix.inGuest.enable = TRUE

Примеры использования vmrun (-T esx , -T ws ...)
  vmrun -T esx -h https://myHost.com/sdk -u hostUser -p hostPassword stop "[datastore1] vm/myVM.vmx"


vmrun -T esx -h https://hostname/sdk -u root -p PaSs -gu Administrator
 -gp guestpasswd listProcessesInGuest "[Vol1] win2008-1/win2008-1.vmx"

vmrun -T esx -h https://hostname/sdk -u root -p PaSS -gu Administrator
 -gp guestpaswd runProgramInGuest "[datastore1] win2008-1/win2008-1.vmx"
 -activeWindow "c:\windows\system32\cmd.exe"

vmrun -T ws -h https://hostname:8333/sdk -u root -p PaSS -gu Administrator
 -gp guestpasswd killProcessInGuest "[Vol1] win2008-1/win2008-1.vmx" 2368

vmrun -T server -h https://hostname:8333/sdk -u root -p PaSS -gu Administrator
 -gp guestpasswd runScriptInGuest "[Vol1] CentOS 5/Centos 5.vmx"
 /usr/bin/ruby /home/ruby/hello.rb

Либо PowerCLI

Инсталляция ESXi по сети


Origin: http://communities.vmware.com/blogs/vmwareinsmb/2010/07/13/esxi-41-scripted-installation-via-pxe-and-kickstart
Иметь установленными: dhcpd, tftpd,  apache, syslinux, pxeboot

# Настройки приведены для openSUSE 11.3 - для других Linux надо
# делать очевидные замены, типа  zypper == >  apt-get, yum и т.д.

zypper install tftp dhcp-server syslinux qiwi-pxeboot apache2

#### /etc/dhcpd.conf #### задать инсталляционным адресам загрузчик pxelinux
option domain-name-servers 192.168.1.4;
default-lease-time 86400;
max-lease-time 604800;
authoritative;

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.151 192.168.163.180;
filename "pxelinux.0";
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
}

# А еще лучше - индивидуально задать на mac-адрес хоста
host esxi02 {
  hardware ethernet 08:00:07:26:c0:a5;
  fixed-address 192.168.1.22;
filename "pxelinux.0";
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
}


################################

Смотрим в /etc/xinetd.d/tftp - где корневая директория tftp, например
         server_args         = -s /srv/tftpboot
меняем   disable             = yes
на       disable             = no
и перезапускаем xinetd
service xinetd restart

# Размещаем в ней загрузчик pxelinux
/srv/tftpboot/pxelinux.0
#  и его конфигуратор
# /srv/tftpboot/pxelinux.cfg/default :

DISPLAY boot.txt
DEFAULT ESX_4.1_install

LABEL ESX_4.1_install
kernel vmware/esx4.1/mboot.c32
append vmware/esx4.1/vmkboot.gz ks=http://192.168.1.4/linux/vmware/esxi-ks.cfg --- vmware/esx4.1/vmkernel.gz --- vmware/esx4.1/sys.vgz --- vmware/esx4.1/cim.vgz --- vmware/esx4.1/ienviron.vgz --- vmware/esx4.1/install.vgz


в подкаталог tftpd сервера монтируем инсталляционный CDROM ESXi

mkdir -p /srv/tftpboot/vmware/esx4.1
mount /dev/cdrom /srv/tftpboot/vmware/esx4.1
или
mount -o loop /export/vmware/ESXi4.1.iso /srv/tftpboot/vmware/esx4.1

# Ostalosx sdelatx kick-start-файл, и можно приступать
#### /export/linux/vmware/esxi-ks.cfg ##############
accepteula
rootpw supersecretpassword
autopart --firstdisk --overwritevmfs

install url http://192.168.1.4/linux/vmware
network --bootproto=static --ip=192.168.1.22 --gateway=192.168.1.1 --nameserver=192.168.1.4 --netmask=255.255.255.0 --hostname=esxi02 --addvmportgroup=0
reboot
####################################################

Назначение локального SATA-диска в RDM для ESXi


Origin: http://www.vm-help.com/esx40i/SATA_RDMs.php

При создании RDM через клиента ESXi локальные SATA-ные диски выбрать не дает.
Поэтому RDM-конфиг для него придется делать руками, командой vmkfstools

# находим VML-идентификатор требуемого диска
ls -l /dev/disks/

... vml.01000000002020202020202020202020203951473358423630535433353030 ->
t10.ATA_____ST3500630AS_________________________________________9QG3CC60

# Создаем папку для RDM-дисков и переходим в нее
mkdir /vmfs/volumes/datastore1/rdm
cd    /vmfs/volumes/datastore1/rdm

# создание виртуального RDM (-r с поддержкой снапшотов)
vmkfstools -r /vmfs/devices/disks/vml...30535433353030 rdm1.vmdk -a lsilogic

# создание физического RDM (-z без снапшотов)
vmkfstools -z /vmfs/devices/disks/vml.01....5433353030 rdm1.vmdk -a lsilogic

В виртуальную машину такой RDM цепляем как "Use existing disk"

esxcli в vSphere 5.0

esxcli storage nfs list - список nfs-монтирований на хосте

esxcli software vib list - список установленных vib-пакетов

esxcli hardware memory get - информация о памяти на хосте ESXi, включая объем RAM
esxcli hardware cpu list -  информация о количестве процессоров на хосте ESXi

esxcli iscsi adapter list - список iSCSI-адаптеров и их имена

esxcli network nic list - список сетевых адаптеров
esxcli network ip interface list - информация об IP-интерфейсах хоста
esxcli network ip dns search list - информация о настройках DNS
esxcli network ip connection list - состояние активных соединений (аналог netstat)
esxcli network neighbors list - вывод ARP-таблицы
esxcli network firewall get - состояние фаервола ESXi и активные разрешения для портов и сервисов
esxcli network firewall ruleset list - состояние фаервола ESXi и активные разрешения для портов и сервисов

esxcli storage vmfs extent list - информация о томах VMFS, подключенных к хосту
esxcli storage filesystem list - мапинг VMFS-томов к устройствам
esxcli system version list - текущая версия ESXi
esxcli storage core path list - вывод информации о путях и устройствах FC
esxcli storage core device list - вывод информации о путях и устройствах FC
esxcli storage core plugin list - список плагинов NMP, загруженных в систему:
esxcli storage core adapter rescan - рескан HBA-адаптеров

esxcli vm process list - получаем ID 
esxcli vm process kill --type=[soft,hard,force] --world-id=WorldID - получить список ВМ с их World ID и убить их по этому ID

esxcli system welcomemsg get - узнать и изменить приветственное сообщение ESXi
esxcli system welcomemsg set - узнать и изменить приветственное сообщение ESXi
esxcli system settings advanced list - поискать что-нибудь в Advanced Settings хоста

esxcli hardware clock get - текущее аппаратное время хоста
esxcli hardware bootdevice list - порядок загрузки с устройств

esxcli hardware pci list - список PCI-устройств
esxcli iscsi adapter discovery rediscover -A {adapter_name} - рескан iSCSI-адаптеров (выполняем две команды последовательно)

esxcli storage core adapter rescan [-A {adapter_name} | -all] - рескан iSCSI-адаптеров (выполняем две команды последовательно)

esxcli network vswitch standard list -список виртуальных коммутаторов и порт групп

Активация dependend-hardware iSCSI (broadcom chip)


Ethernet Broadcom 5708,5709(1Gb) и 57711(10Gb) имеет iSCSI offload engine на борту. 
Драйвера к ним появились начиная с 4.1 Update 1.

1)  создать  выделенные  vmk  (для  каждого адаптера) и в свойствах портовой
группы vmk в "NIC Teaming" -- "Failover  Order"  в  Active  оставить  только
broadcom-овские аплинки

2) Привязать VMK к соответствующим iscsi-vmhba:

esxcli swiscsi nic add -n vmk2 -d vmhba32

esxcli swiscsi nic add -n vmk3 -d vmhba33

3)   Настройка   target-discavering   "Broadcom   iSCSI  Adapter"  идентична
настройкам для Software iSCSI

Назначение нескольких vmk для доступа к iSCSI

1. Создать несколько vmk-адресов (желательно, привязав их на разные аплинки)
2. биндим vmk1 и vmk2 в Siftware iSCSI vmhba31 (или какой у него номер)

esxcli swiscsi nic add -n vmk2 -d vmhba31

esxcli swiscsi nic add -n vmk3 -d vmhba31

esxcli swiscsi nic list -d vmhba33

Пути ведущие к iSCSI-лунам с vmk1 и vmk2 будут выглядеть соответственно
vmhba33:C1:T*:L* и vmhba33:C2:T*:L*

Выбирая путь к LUN'у с C1 или C2 - мы определяем IP-адрес и интерфейс,
с которого будет вестись работа с этим путем к LUN'у

Маскировка LUN в vSphere 4

Для маскировки LUN'у вместо штатного плугина PSA назначается "тупой" плагин MASK_PATH

# найти LUN_ID нужного LUN
esxcfg-scsidevs -l
# все пути для этого LUN. Например vmhba2:C0:T2:L13
esxcfg-mpath -L | grep {LUN_ID}

# Добавить правило в конфиг-файл под незанятым номером (в диапазоне 101-200)
esxcli corestorage claimrule add --rule 113 -t location -A vmhba2 -C 0 -T 2 -L 13 -P MASK_PATH

# Загрузить созданное правило в список активных
esxcli corestorage claimrule load

# Убедиться, что имеются два правила с выбранным номером (file и runtime)
esxcli corestorage claimrule list

# Переопределить текущие правила для маршрутов к LUN'у на только что созданные.
esxcli corestorage claiming reclaim -d {LUN_ID}

esxcfg-scsidevs -m

Origin: http://vgeek.noteit.ru/3097.html
Origin: http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=1009449

 # Отмена маскрировки LUN'a
esxcli corestorage claimrule list
esxcli corestorage claimrule delete --rule 113
esxcli corestorage claimrule load
esxcfg-rescan
esxcfg-rescan # один раз может не помочь
esxcfg-mpath -l -P vmhba1:C0:T0:L0
esxcli corestorage claiming reclaim -d {NAA.ID}

Активация SNMP-агента в ESXi 4

# Куда слать трапы (напр. с комьюнити public)
vicfg-snmp --server hostname -t host.snmp.receiver/public

# Задать порт SNMP-агента (для get/set)
vicfg-snmp --server hostname -p 161
# Задать комьюнити для агента (например public)
vicfg-snmp --server hostname -c public

# Включаем агента SNMP
vicfg-snmp --server hostname -enable

Настройки сохраняются в /etc/vmware/snmp.xml

# Описания MIB и трапов - тут
http://communities.vmware.com/community/developer/managementapi

Сетевая PXE инсталляция ESXi 4.1

http://communities.vmware.com/blogs/vmwareinsmb/2010/07/13/esxi-41-scripted-installation-via-pxe-and-kickstart
Делаем USB-флешку для инсталляции ESXi 4.1 с USB
Origin: Vallard Benincosa http://benincosa.org/blog/?p=171
Doinfo: http://habrahabr.ru/blogs/sysadm/109204/#habracut
Dopinfo scripts: http://www.vm-help.com/forum/viewtopic.php?f=14&t=4

# монтируем ESXi iso
mount -o loop /VM/VMware-VMvisor-Installer-4.1.0-260247.x86_64.iso /media/ESXi

На флешке: 1 primary partition, size >= 310M, active, type "b" W95 FAT32

# Отформатировать партицию под vfat
mkfs.vfat -n BOOT -F 32 /dev/sdc1

# прописать mbr на саму флешку, скопировать загрузчик syslinux на партицию
syslinux -s /dev/sdc1
dd if=/usr/share/syslinux/mbr.bin of=/dev/sdc

# Скопировать содержимое ESXi-cdorm на флешку
mount /dev/sdc1 /media/USB
cp -a /media/ESXi /media/USB

# Удалить с флешки "родной" iso-загрузчик
rm /media/USB/isolinux.bin
# подсунуть "родное" стартовое меню загрузчику syslinux
mv /media/USB/isolinux.cfg /media/USB/syslinux.cfg

########################################################
# инсталлятор будет искать install на CDROM, поэтому без КС-файла не обойтись
# в файле меню добавить вызов ks-файла для unattended инсталляции: ks=usb
########################################################
default menu.c32
menu title VMware VMvisor Boot Menu
timeout 80

label ESXi Installer
menu label ^ESXi Installer
kernel mboot.c32
append vmkboot.gz ks=usb --- vmkernel.gz --- sys.vgz --- cim.vgz --- ienviron.vgz --- install.vgz
# ks=file:///etc/vmware/weasel/ks.cfg

label ^Boot from local disk
menu label ^Boot from local disk
localboot 0x80
########################################################
# simple kickstart file (ks.cfg) just looks like this:
########################################################
vmaccepteula
rootpw cluster
######## раскомментировать, если полностью в себе уверен:
# авто формат 1-го диска # autopart --firstdisk --overwritevmfs
install usb
# install url example.com/vm - распакованный образ инсталляции
network --bootproto=static --ip=192.168.70.76 --gateway=192.168.70.1 --hostname=esxi-76 --device=vmnic0 --nameserver=192.168.70.1 --netmask=255.255.255.0
reboot
########################################################

Если соседские VC генерят разным виртуалкам совпадающие mac-адреса

Mac-адрес  виртуалки генерится исходя из VC Unique ID - если центры залиты с
одного темплейта, то дубляж mac-ов практически гарантирован.

Лечение:  в настройках VM - меняем адаптеру automatic на ручной, затем снова automatic

Лечение правильное (Reference VMware KB 1024025):
Administration > vCenter Server Settings > Runtime Settings
Меняем vCenter Server Unique ID (в диапазоне 1-63) - всем разный

vSphere 4.1 — что нового

4.1 - последняя версия ESX. Далее будет только ESXi
Поддержка scripted-инсталляции (используется стандартный ks-file)

vSphere-клиент с ESX не ставится. Только с www или с vCentre installation
ESXi - может грузиться с SAN. В т.ч. с software iSCSI.
Storage hardware assistance array integration (VAAI) - операции с vmdk по
возможности отдаются RAID-массиву
Продвинутая storage performance статистика
Ресурсные пулы для storage-операций.
Dependend iSCSI (hardware offload) для Broadcom 57**
 http://vmware.com/support/vsphere4/doc/vsp_41_new_feat.html

VM с многоядерным процессором

cpuid.coresPerSocket =  2   # или 4 или 8

Как задать неvmwar’ный МАК-адрес для VM

В ESX 3.5 и 4 это невозможно. В ESXi5 это и так работает

Ниже описана технология для ESX 2 (и workstation)
http://communities.vmware.com/thread/172548

ethernet0.present = "true"
ethernet0.checkMACAddress = "FALSE"
ethernet0.wakeOnPcktRcv = "false"
ethernet0.networkName = "Virtual Machine Network VLAN1"
ethernet0.addressType = "static"
ethernet0.address = "01:23:43:5a:e0:9f"

Как опознать ESX-хост, который заблокировал файл у VM


vmware-cmd -l  # список VM-ок и их каталогов.

проверяем, заблокирован ли файл:
touch file-flat.vmdk
 . . . device or resource busy

To report the MAC address of the lock holder, run the command:

vmkfstools -D /vmfs/volumes/UUID/VMDIR/LOCKEDFILE.xxxx

tail /var/log/vmkernel #  в лог попадает MAC-адрес хоста блокиратора

Apr 5 09:45:26 Hostname vmkernel: gen 532, mode 1, owner 45feb537-9c52009b-e812-00137266e200  mtime 00137266e200 - mac-adress service-console IP.
Блокировки на NFS-стораджах выглядят как .lck.####

Какая VM так же использует мой VMDK?

egrep -i DISKNAME.vmdk /vmfs/volumes/*/*/*.vmx
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=10051

HA 4.1 рестарт VM

При HA failover делается 5 попыток рестарта виртуальных машин:
R,2min,4min,8min,8min,8min # суммарно - 30 минут
8min таймаут задается в
/opt/vmware/aam/ha/vmwaremanager.pl line 37:

my $VM_RESTART_DELAY_MAX = 480; # 8min

затем

service mgmt-vmware restart
service vmware-vpxa restart

HA admition control

Host Failures Tolerated  (1..4)
Размер слота = (Mem x CPU reservation максимальной VM
Считаем сколько слотов помещается в кластере, за вычетом заданного HostTolerate
Получаем максимальное число VM-ок, которое разрешается запустить в кластере

Advanced Configuration parameters for HA



Дефолтный размер HA-слота для машин с нулевой резервацией
das.vmCpuMinMHz   = 256 MHz
das.vmMemoryMinMB = 256 Mb

Ограничиваем максимальный размер HA-слота для машин с очень большой резервацией:
das.slotCpuInMHz
das.slotMemInMB


das.usedefaultisolationaddress = false  (по умолчанию - default gw SC)
das.isolationaddressX        (X = 1..10) дополнительные Isolation-адреса

das.failuredetectiontime = 15000  (рекомендуется увеличить до 20000 ms)

LUN маскинг в V4

esxcli corestorage claimrule add -r claimrule_ID -t type requiredoption -P MASK_PATH

Distributed switches

Хост хранит настройки от DS в локальном кеше, синхронизирует их каждые 5 мин

/etc/vmware/dvsdata.db

net-dvs -f /etc/vmware/dvsdata.db   # дешифровка dvsdata кэша

таймаут на дисконфигурацию - 24 часа
C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter\vpxd.cfg
mm

Оторванный DS можно удалить только когда от него отцеплены все VM

Генерация лог-бандла на ESX 4

vm-support

Внешний log-host на ESX  в /etc/syslog.conf
*.* @IP.address.of.log.host

esxcfg-firewall -o 514,out,udp,syslog_traffic

Внешний log-host на ESXi
vicfg-syslog -s IP.address.of.log.host

Конфигурация логина и его ротации:
/etc/vmware/viconfig/vilogdefaults.xml

Прием логов снаружи на лог-хосте:
/etc/sysconfig/syslog
SYSLOGD_OPTIONS="- -m 0"

service syslog restart
iptables -I INPUT -i eth0 -p udp --dport 514 -j ACCEPT
и добавить его же в /etc/rc.local, или в /etc/sysconfig/iptables

Активация центрального логгинга  на vMA
vilogger --server  ESX_or_ESXi enable
vilogger enable
vilogger list

vsish

 vsish --help # работа с конфигурационными данными ESX

cd       - change working directory
ls       - list nodes
pwd      - print working directory
get      - perform GET operation
cat      - synonym for GET
set      - perform SET operation
typeget  - get type information
typels   - list type-level nodes
loglevel         - set debugging log level
exit,quit,q  - quit shell
Рубрики
esx*

Startup/Shutdown виртуальных серверов в vSphere

Источник:

http://admin.notes.org.ua/vsphere-startup-shutdown

Описание опций раздела Startup/Shutdown vSphere:

Default Startup Delay:

время, заданное в секундах, которое должно пройти после запуска одной виртуальной машины до запуска другой ВМ. 
Отсчет времени происходит сразу же после запуска виртуальной машины. Именно после запуска, а не после того, 
как завершится загрузка операционной системы в этой ВМ.

Continue immediately if the VMware Tools start:

запускать следующую виртуальную машину сразу же после того, как запустится пакет VMware Tools. 
При этом время Default Startup Delay игнорируется. 

Default Shutdown Delay:

это время, заданное в секундах, которое отводится определенной виртуальной машине для завершения своей работы.

Shutdown Action:

выбираем то, как будут выключаться виртуальные машины:

Power Off - "жесткое" выключение виртуальных машин

Guest Shutdown - "мягкое" выключение с использованием утилит из пакета VMware Tools. 
Если в виртуальной машине не установлен набор утилит VMware Tools, то она НЕ БУДЕТ выключена 
(это равносильно тому, если бы у хоста ESX/ESXi внезапно пропало бы питание).

Suspend - приостановить виртуальные машины

Startup Order: Automatic Startup:

виртуальные машины, которые находятся в данной секции, 
будут первыми, в отличие от других ВМ (которые расположены в других секциях), 
поочередно запускаться в соответствии с ранее определенными настройками 
(см. Default Startup Delay и Continue immediately if the VMware Tools start).

Startup Order: Any Order:

виртуальные машины, которые находятся в данной секции, 
начнут запускаться только после того, как в секции Automatic Startup запустится 
последняя ВМ, и пройдет 60 секунд, либо запустится VMware Tools. 
Очередность запуска виртуальных машин в данной секции каждый раз меняется. 

Startup Order: Manual Startup:

виртуальные машины, которые находятся в данной секции, 
не будут автоматически запускаться после того, как хост ESX/ESXi будет перезагружен.
Рубрики
esx*

Установка VMWare vCenter Server Appliance 5.5.0

Источник:

Установка VMWare vCenter Server Appliance 5.5.0a

Описание:

Версия VMWare vCenter Server Appliance 5.5.0 без буквы «а» не долго провисела на сайте VMWare. 
Она была не рабочая. Как это обычно и бывает, первый блин оказался комом.
Еще раз подтвердилась прописная истина о том, что не нужно ставить новую версию больших серьезных программ, 
пока не выйдет хотя бы одно обновление/исправление, а лучше два.
vCenter распространяется в двух вариантах: сервис под Windows и аплайнс на базе никсовой SUSE. 
Ставить vCenter на Windows как-то не логично. Во-первых, Windows — это дополнительный источник проблем, 
а во-вторых на Windows понадобится лицензия, т.е. +1 сервер Windows, за который нужно платить. 
Хотя, и у этого платного варианта есть свои плюсы, например, установить сертификаты на vCenter под Windows не сопоставимо проще и быстрее.

Итак, скачиваем с сайта VMWare следующие дистрибутивы.

- VMware vCenter Server Appliance — OVA File (1.8G)
- VMware vCenter Server Appliance — OVF File (9.4M)
- VMware vCenter Server Appliance — System Disk (1.8G)
- VMware vCenter Server Appliance — Data Disk (14M)
Кладем их рядом в один каталог.

Заходим клиентом на один из ESXi 5.5.

Меню File — Deploy OVF Template. 
Переходим в каталог со скачанными файлам и ova и ovf.
Если указать файл OVA, то аплайнс развернется из него и остальные файлы не потребуются.
Если указать файл OVF, то потребуются все 4 файла, перечисленные выше. В последний раз делал по второму варианту (OVF), раз уж скачал все файлы.
В развернутом сервере получилось 2 диска 25+100 Гб. 
Версия виртуальной машины почему-то оказалась = 7, а не 8, как ожидалось.

После завершения развертывания и запуска vCenter в консоли ESXi на закладке Summary смотрим его IP-адрес, полученный с DHCP.

Подключаемся к нему через браузер на порт 5480
https://10.245.3.42:5480
Логин по умолчанию: root / vmware
Конфигурирование VMware vCenter Server Appliance 5.5.0a
1. Сразу после ввода пароля отказываемся от мастера автоконфигурирования.
2. Меняем пароль текущего админа root: в главном меню Admin и там же отключаем контроль срока действия пароля. А также в этом окне переключаем параметр Certificate regeneration enabled: в значение “Yes”. Submit.
3. Задаем статический адрес и имя (полное доменное имя) машины (Hostname): в главном меню Network — Address. Save Settings.
4. Заходим в браузере по новому адресу https://10.245.0.70:5480 и вводим в домен: в главном меню vCenter Server — Authentication.
5. Запускаем мастер настройки в меню vCenter Server — Summary — Setup wizard — кнопка Launch.
Проходим по шагам мастера:
> Set custom configuration. Next.
> Database type: embedded. Next.
> Задаем новый пароль для пользователя administrator@vsphere.local. Здесь нужно обратить внимание, что у нас два разных администратора:
- root (у которого по умолчанию был пароль vmware, и который мы меняли в п.1,) — для входа в линукс (back end) по порту :5480
- Administrator@vsphere.local — для подключения к веб-интерфейсу vCenter (front end). (можно вводить и со строчной буквы: administrator@vsphere.local)
Next.
> Присоединяем к домену.
6. Проверяем на ДНС наличие записи для vCenter. Если её нет, создаем статическую (и в обратной зоне).
7. Настраиваем сквозную авторизацию для доменной учетной записи Windows. 
В браузере https://10.245.0.70:9443 входим под именем Administrator@vsphere.local и 
паролем из пятого пункта (в этом окне входа разрешаем установку надстройки и отключаем защищенный режим у IE).
В левом меню Home — Administration — в разделе Single Sign-On — Configuration — на закладке Identity Sources
нужно добавить свой домен (кнопка “+”). Верхний переключатель, проверяем/вводим имя домена (fqdn), оставляем “Use machine account”. 
После закрытия этого диалогового окна выделяем только что добавленную строку и нажимаем кнопку “Set as Default Domain” над этим списком (синий кружочек со стрелочкой).
8. В левом меню Home — vCenter — vCenter Servers — <Имя сервера> — вкладка Manage — Permissions. 
Нажимаем зеленый плюс и добавляем (кнопка Add внизу слева) учетную запись администратора или группы администраторов из своего домена. 
В правом разделе Assign Role из выпадающего списка выбираем Administrator.
Теперь можно логиниться на vCenter, не вводя пароль, а сквозной аутентификацией через Windows. 
Это относится как к традиционному клиенту, так и к web-клиенту.

Управление лицензиями VMware vCenter Server Appliance 5.5

Логинимся на vCenter клиентом.
Меню Home — Administration — Licensing — ссылка в правом углу Manage vSphere Licenses. 
Здесь в верхнем высоком окне вводим свой ключ на vCenter. Можно сразу ввести ключи и на vSphere (по одному ключу в строке). 
Нажимаем кнопку Add License Keys. Ключи отобразятся в нижнем окне. Next.
Переходим на вкладку vCenter Server (1), где виден наш аплайнс, который еще не лицензирован.
vCenter Server Appliance
В окне справа от него нужно выбрать свой ключ и нажать кнопку Next.  
В этом окне ничего выбирать не нужно. 
Отмеченный здесь лицензии будут удалены с vCenter (заголовок окна: “Remove License Keys”).Next. Finish.
В дальнейшем здесь же добавляются ключи процессорных лицензий, которые потом можно назначать конкретным хостам.
Рубрики
esx*

update 5.1 до 5.5

Ссылки:

http://dima81.blogspot.ru/2013/09/v-behaviorurldefaultvmlo.html

Подготовка:

0. выключаем все виртуальные машины

1.подключаемся к esxi по ssh

2. пишем в консоли, чтобы убедится, что у вас есть интернет в ESXi
ping ya.ru

3.разрешаем доступ Web клиенту на скачку.
esxcli network firewall ruleset set -e true -r httpClient

Посмотреть какие есть версии esxi в репозитории

esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-5.5

Посмотреть наш билд ESXI

vmware -vl  - посмотреть наш билд ESXI

Приступаем к обновлению

4.  строчка начинает скачивать обновление и устанавливать. !!!Внимание!!! на экране ни чего не показывается - это нормально. Наберитесь терпенья, качается почти 300мб.
esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-5.5.0-1331820-standard
5. Если всё ок, вывалится соответствующее сообщение, и вас попросят перезагрузится
6. перезагружаем esxi
reboot -f
7. подключаемся VMware vSphere Client
если он у вас старой версии, соглашаемся на обновление (уже хороший знак, что у вас всё установилось правильно)
проверяем версию
8. подключаемся снова ssh к ESXi.  отключаем Web клиент
esxcli network firewall ruleset set -e false -r httpClient
Рубрики
esx*

При подключении ssd к megaraid не смог сделать из нее cache

Ссылки:

http://www.vmgu.ru/news/vmware-vsphere-5-host-cache
http://goodserg-it.blogspot.ru/2011/12/ssd-host-cache-vmware-esxi-50.html

Выполняем следующие:

esxcli storage core device list -  посмотреть устройства(имя устройства (я брал из клиента но на всякий сверился))
esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device ИМЯ_STORAGE --option=enable_ssd - задать насильно что это ssd
esxcli storage nmp satp rule list | grep enable_ssd - просмотреть применялся ли параметр
esxcli storage core claiming reclaim -d ИМЯ_STORAGE

Включаем и проверяем:

далее заходим на vsphere client  configuration->software->host chache configuration resfrashe и ставим нужный размер cache
Рубрики
esx*

Ошибка esxi Unsupported or invalid disk type 7

После прочтения проблему решил конвертацией дисков, используемых перенесённой виртуальной машиной:
1. В меню сервера ESXi сделал доступной по SSH консоль администрирования и технической поддержки;
2. Подключился клиентом SSH по сетевому адресу сервера ESXi;
3. Убедился что есть утилита vmkfstools;
4. Перешёл в директорию, где хранились диски виртуальной машины и выполнил
vmkfstools -i ./disk_1.vmdk -d zeroedthick ./disk1_new.vmdk
5. Подождал, пока пройдёт конвертация (ушло около 7 минут на 30гб диск);
6. В замен старого диска «disk_1.vmdk», примонтировал конвертированный диск «disk1_new.vmdk» в необходимую виртуальную машину;
Рубрики
esx*

Как изменить имя ESXI host

I

vi /etc/hosts
vi /etc/sysconfig/network
esxcfg-advcfg -s hostname /Misc/hostname
Перезагружаем esxi

II (рекомендуется)

Для ESXi 5.x используем следующие команды:
esxcli system hostname set --host=hostname
esxcli system hostname set --fqdn= fqdn
Рубрики
esx*

Смена MAC адреса сетевушки в ВМ на VMware ESXi

Действия:

На попытки сменить вручную, выдает следующее: The MAC Address entered is not in the valid range…
0. Останавливаем ВМ 
1. в настройках включаем использование статического MAC адреса (при изменении ВМ стартовать не будет)
2. скачиваем файл  имя_ВМ.vmx с нашего хоста.
3. На хосте файл имя_ВМ.vmx переименовываем например ИМЯ_ВМ.vmx.z
4. редактируем скаченный файл имя_ВМ.vmx
проверить строку ethernet0.addressType
должно быть ethernet0.addressType = "static"
добавить  ethernet0.checkMACAddress = "false"
в самый конец файла добавить ethernet0.Address = "00:0c:29:f0:ce:31"
5. скачиваем  на хост в папку с ВМ и запускаем ВМ

Пример конфига имя_ВМ.vmx

.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "8"
nvram = "windows7 testing.nvram"
pciBridge0.present = "TRUE"
svga.present = "TRUE"
pciBridge4.present = "TRUE"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "TRUE"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "TRUE"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "TRUE"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
vmci0.present = "TRUE"
hpet0.present = "TRUE"
displayName = "windows7 testing"
extendedConfigFile = "windows7 testing.vmxf"
virtualHW.productCompatibility = "hosted"
numvcpus = "4"
cpuid.coresPerSocket = "4"
memSize = "2048"
scsi0.virtualDev = "lsisas1068"
scsi0.present = "TRUE"
ide1:0.startConnected = "FALSE"
ide1:0.deviceType = "cdrom-raw"
ide1:0.clientDevice = "TRUE"
ide1:0.fileName = "emptyBackingString"
ide1:0.present = "TRUE"
ethernet0.virtualDev = "e1000"
ethernet0.networkName = "VM Network"
ethernet0.addressType = "static"
ethernet0.present = "TRUE"
ethernet0.checkMACAddress = "false"
scsi0:0.deviceType = "scsi-hardDisk"
scsi0:0.fileName = "windows7 testing.vmdk"
scsi0:0.present = "TRUE"
guestOS = "windows7-64"
toolScripts.afterPowerOn = "TRUE"
toolScripts.afterResume = "TRUE"
toolScripts.beforeSuspend = "TRUE"
toolScripts.beforePowerOff = "TRUE"
uuid.bios = "56 4d 84 9b 02 42 de b3-a2 f6 fb d9 3b 70 a9 35"
uuid.location = "56 4d 84 9b 02 42 de b3-a2 f6 fb d9 3b 70 a9 35"
vc.uuid = "52 c3 14 d0 b4 3c f1 70-12 66 3d ac a3 cb aa c0"
sched.swap.derivedName = "/vmfs/volumes/546baa89-c8ec4331-609f-00259076018e/windows7 testing/windows7 testing-6edbbdb1.vswp"
replay.supported = "FALSE"
replay.filename = ""
scsi0:0.redo = ""
pciBridge0.pciSlotNumber = "17"
pciBridge4.pciSlotNumber = "21"
pciBridge5.pciSlotNumber = "22"
pciBridge6.pciSlotNumber = "23"
pciBridge7.pciSlotNumber = "24"
scsi0.pciSlotNumber = "160"
ethernet0.pciSlotNumber = "32"
vmci0.pciSlotNumber = "33"
scsi0.sasWWID = "50 05 05 6b 02 42 de b0"
floppy0.present = "FALSE"
ethernet0.address = "00:0C:29:F0:CE:30"
Рубрики
esx*

Как узнать историю выполнения команд VMware ESXi 5.0+

Файлы:

/var/log/shell.log - историю команд (кто из пользователей их выполнял число в квадратных скобках после слова "shell" - это так называемый World ID для сессии (например, 2938482))
/var/log/auth.log - данные об аутентификации пользователей

Через веб-браузер:

https://ESXiHostnameOrIP/host/shell.log  - историю команд 
https://ESXiHostnameOrIP/host/auth.log - данные об аутентификации пользователей

Об логине:

2011-08-29T18:01:00Z login[2938482]: root login on 'char/tty/1' - использовался прямой логин в ESXi Shell

2011-08-29T18:01:00Z sshd[12345]: Connection from 10.11.12.13 port 2605 - использовался логин по SSH
2011-08-29T18:01:00Z sshd[12345]: Accepted keyboard-interactive/pam for root from10.11.12.13 port 2605 ssh2 - использовался логин по SSH
2011-08-29T18:01:00Z sshd[2938482]: Session opened for 'root' on /dev/char/pty/t0 - использовался логин по SSH
2011-08-29T18:01:00Z sshd[12345]: Session closed for 'root' on /dev/char/pty/t0- использовался логин по SSH
2011-08-29T18:35:05Z sshd[12345]: Session closed for 'root' 2 - использовался логин по SSH

2011-08-29T18:01:00Z sshd[12345]: Connection from 10.11.12.13 port 2605 - использовался логин по SSH с использованием публичного ключа
2011-08-29T18:01:00Z sshd[12345]: Accepted publickey for root from 10.11.12.13 port 2605ssh2  - использовался логин по SSH с использованием публичного ключа
2011-08-29T18:01:00Z sshd[2938482]: Session opened for 'root' on /dev/char/pty/t0 - использовался логин по SSH с использованием публичного ключа
2011-08-29T18:01:00Z sshd[12345]: Session closed for 'root' on /dev/char/pty/t0 - использовался логин по SSH с использованием публичного ключа
2011-08-29T18:35:05Z sshd[12345]: Session closed for 'root' 2 - использовался логин по SSH с использованием публичного ключа
Рубрики
esx*

ProFTPD (FTP server) for VMware ESXi 5.x

Источник:

http://www.v-front.de/2012/11/release-proftpd-ftp-server-for-vmware.html

Установка:

0) скачиваем файл установки на сервер (Можно закачать с помощью vSphere client)
1) устанавливаем 
esxcli software vib install --no-sig-check -d /vmfs/volumes/datastore1/ProFTPD-1.3.3-8-offline_bundle.zip

Удаление:

0) esxcli software vib remove -n ProFTPD
Рубрики
esx*

Подключение локального диска как RDM

Пример раз:

Для подключения локального диска у VMware ESXi хоста как RDM диск в госте, 
достаточно при помощи vmkfstools создать vmdk файл, 
и затем в клиенте VMware vSphere подключить его к виртуальной машине.

0. Для начала найдем имя устройства локального SATA-диска в списке устройств ESXi. 
перейдем в соответствующую директорию командой
cd /dev/disks

1. просмотрим имеющиеся диски
ls -l

2. перейти в каталог нужной ВМ
cd /vmfs/volumes/datastore/vm

3. выполняем и выполняем в зависимости какой нужен доступ к диску Physical RDM или Virtual RDM
Для pRDM (Physical RDM):

# vmkfstools -z /vmfs/devices/disks/ rdm_diskname.vmdk
                          ИЛИ
Для vRDM (Virtual RDM):
# vmkfstools -r /vmfs/devices/disks/ rdm_diskname.vmdk

Пример:	 	 
vmkfstools -r /vmfs/devices/disks/t10.ATA_____Hitachi_HDS721010CLA332_______________________JP2950HZ0E47HC h1tb.vmdk

4.Заходим на ESXi -> выбираем виртуальную машину -> добавляем устройство диск rdm.diskname.vmdk

Пример два:

0) подключились к esxi через SSH
1) Переходим в каталог с устройствами 
cd /dev/disks 
2) Получаем список файлов
ls -l
3) Находим свой диск 
мой диск naa.600300570123d3d01a763e5e06d558ff
4) перешел в каталог виртуалки
cd /vmfs/volumes/LSI01-SSD/Sonype 
5) Подключил диск как Physical RDM
vmkfstools -z /vmfs/devices/disks/naa.600300570123d3d01a763e5e06d558ff rdm_naa.600300570123d3d01a763e5e06d558ff.vmdk
6) Зашел на хост и добавил в виртуалку только созданный диск rdm_naa.600300570123d3d01a763e5e06d558ff.vmdk
Рубрики
esx*

Esxi Tool

vcenter mobile aplance:

ls /usr/bin/busybox - посмотреть доступные команды

Все команды  много уровненные. на каждом уровне можно узнать что вводить дальше. 
последний уровень команды это get set list add remove и др.
выполнив в конце команды --help получим подробную помощь

esxcfg-* - основные команды управления esxi
esxcli -  новые команды введены начиная  esxi5.0+
esxcli esxcli command list - выложит список команд
esxcfg-nics -l  - посмотреть информацию о доступных сетевых контролерах
esxcli network nic list  - посмотреть информацию о доступных сетевых контролерах
esxcfg-volumes -l  - посмотреть информацию о разделах. -m(временно) -M(постоянно) монтирование
vmkernel  - основной контролер управления службами vmware
esxcfg-vmknic  - управление основным контролером vmware
ls -l /vmfs/devices/disks - вот так можно увидеть доступные диски
date - изменить время (время esxi всегда UTC)
hwclock - изменить время (время esxi всегда UTC)

Каталоги:


/var/log - логи
/var/log/vmkernel - тут можно посмотреть ошибки
syslog collector - сбор логов с виртуальных машин
/vfms/Name_datastore/VM_name - Логи ВМ хранятся непосредственно в каталоге самой виртуальной машины
/etc - конфигурации самой esxi
/commands - результаты выполнения различных команд

Полезное:


putty - ssh client
mremote.org - ssh rdp +++ client
Veem FastSCP - копирование
WinSCP - копирование
RVtools - посмотреть живучесть esxi robware.net
VMWare Capacity planner - прога/услуга от vmware расчет нагрузки на хосте
Netflow - технология позволяющая прослушивать трафик на любой  виртуальной машине
Portmirror - позволяет зеркалировать трафик на любую виртуальную машину
dcui - меню управления esxi (то что увидим если подключить монитор)
kb.vmware.com - онлайн справочник
Microsoft windows active directory cirteficat services (сокращенно ADCS) или openssl (Открытое *nix решение для сертификатов)

Файлах виртуальной машины:

server.vmx файл настроек
server.vmxf вспомогательный файл настроек
server.vmdk и server-flat.vmdk это пара файлов отвечает за диск/данные виртуальной машины ( первый настройка, второй данные)
server-xxxxxx.vswp файл подкачки виртуальной машины
server.nvram настройки bios виртуальной машины
server.vmsd файл с информацией о снимках виртуальной машины
server-000001.vmdk и  server-000001-delta.vmdk файлы с информацией о снимке виртуальной машины
server-Snapshot1.vmsn память схороненная при снимке машины
*.log файлы логов виртуальной машины

Ускорение работы ВМ:

0. приложение vmsafe можно применить программы с одной виртулке к другой (допустим антивирус)
1. Твикаем гостевые ВМ системы HKLM\system\currentcontrolset\ service\disk = 60
2. отключить screenserver, даже тот что при блокировке
3. Обязательно устанавливаем VMWTools

Работа дисковой системы:

1) Гостевая  ОС работает с драйвером контроллером SCSI (виртуальным)
2) Он передает команды-SCSI контроллеру, виртуальному
3) Они перехватываются гипервизором. Гипервизор формирует очередь команд-SCSI из обращений своих vm к диску 
     и передает ее драйверу контроллера. Это может быть драйвер HBA, служба NFS, или программный  iSCSI-инициатор.
4)  В зависимости от варианта эти команды попадают на контроллер HBA или NIC
5) Запрос отправляется на систему хранения данных (СХД) и в обратном па рядке отправляется vm
GAVG этап со 2-5, KAVG этап 3-4, DAVG этап 5.

ВМ диски:

!!!Vmware converter standalone - программа для конвертирования.
disk2.vmdk -  описание геометрии диска. кол блоков и тд.
disk2-flat.vmdk - сами данные.

#extend deskription RW 65444337 VMFS "foo-flat.vmdk"  размер диска в блоках  по 512 .байт

Чтобы узнать реальный размер нужно умножить 65444337*512

vmkfstools -i disk.vmdk disk-new-small.vmdk  - клонирование диска с уменьшением его размера


Режим работы виртуальных дисков mode:


presistent - все изменения сразу пишутся на диск
nopersistent - в таком режиме  на диск не будет ничего записываться. подходит для демонстраций
indenpended - нельзя будет создавать snapshot

RAW DEVICE MAPPING (RDM) - подключение LUN напрямую в виртуальный

usb-over-ip

usb-over-ip  - проброс флешек и других usb устройств по сети

Внимание место на хранилище:

Когда места на хранилище становится 99% то виртуальные машины останавливаются.
Нехватка места может привести к неработоспособности всех виртуальных машин.
du -h -a /vmfs/volumes/lun1/server - покажет размер файлов в текущем каталоге

Производительность общая:

SIOC - управление потребление ресурсов хранилища, latency. для ssd 10-15мс норма. 
IOPS - операций в секунду 60-120, для обычных HDD дисков 80, для SSD 1000+ 

Не следует отдавать виртуальной машине много процессоров, так как это может сказаться на производительность ВМ.
Процессоров следует давать ровно столько на сколько это необходимо.

resxtop, esxtop, perfmon, esxplot:

esxtop - основная консольная утилита
perfmon - получить информацию из windows
esxplot - анализ логов

esxtop - shift+v данные по виртуальным машинам
Значения m - память , n - сеть, d - диск , u - диск, v - диск , c -  процессор
выбираем процесс и нажимаем 'e' покажется подробная информация о нем
цифры 2 и 8 - подсветят строку. 
цифра 4 - удалит строку с экрана. 
цифра 6 - покажет все процессы.
h - помощь

esxtop -a -b -d 10 -n 1080 > /tmp/log.csv - создание лог файла  для анализа в программах esxplot и perfmon.  
a - выгружать все, b - бинарный формат, d - интервал (каждые 10 сек), n - количество выгрузка 

Вкладка Perfomance через интерфейс vSphere:


Для CPU (процессора):
usage - сколько процессорного времени vm задействовала
wait - столько времени было ожидание ввода/вывода
ready - сколько еще осталось сделать (самый важный параметр)
CPU usage - сколько сейчас используется процессора
CPU ready  - высокий показатель говорит о том что виртуальной машине не хватает процессора

--------------------

Для memory (памяти):
Для оперативной памяти показателем недостаточности является вытеснения памяти виртуальной машины в файл подкачки 
Consumed сколько памяти выделено сервером для виртуальной машины 
Granted сколько памяти выделил сервер для виртуальной машины (память не выделяется пока она реально не понадобится)
Active с таким количеством памяти виртуальная машина работала в момент последнего запроса
Balloon столько памяти отбирает механизм balloon
Zipped memory  столько памяти находится в жатом виде.
Swapped memory  столько памяти помещено в vmkernel swap
Swap In Rate и Swap Out Rate активность использования файла подкачки
Механизмами balloon и swapped esxi отнимает ненужную память у виртуальных машин. 
Так что высокие показатели balloon и swapped  не могут показывать проблему с  производительностью.
Таким образом высокие показатели всех счетчиков  balloon, zipped, swapped, SwapInRate, SwapOutRate говорят о не хватке памяти

-------------------

Пример:
used 559 - выполнял полезную работу 559 мс
wait 19000 - находился в ожидании операций ввода/вывода 19000 мс
ready 54 мс -гостевая ос хотела выполнить работу но гипервизор не дал достаточно процессорного  времени а это еще 54 мс
Вывод:  проблема в дисковой системе. 

------------------
Один квант измерений - 20сек - 20000 мс (миллисекунд)

Решения высокой доступности:

Microsoft Failover Cluster(для вин),  Vmware Fault Tolerance , Vmvare Hight Availability(самое простое) (написаны в порядке лучше-похуже)
set-vmhost -state maintenance перевести хост в режим обслуживания

Восстановление:

Для восстановления из образа нужно нажать shift+r  при загрузке esxi

Общая информация:

Большинство операций с виртуальной инфраструктурой производятся из графического интерфейса клиента  vSphere.  
Однако  и командная строка может нам пригодиться:
для  некоторых  операций,  которые  не возможны  из графического  интерфейса;
для автоматизации действий с помощью сценариев;
для диагностики и решения проблем;

У нас есть несколько  способов для получения интерфейса командной строки к серверу ESX(i):
локальная командная  строка,  доступная  с локальной консоли  или  через iLO/IP KVM;
сессия SSH к ESX(i);
vSphere CLI;

Если на локальной консоли  сервера ESX нажать Alt+F1, ввести имя пользователя  root и пароль, то вы попадете в командную  строку. 
Это командная  строка Service Console, модифицированного Red Hat Enterprise Linux 5.
Это  означает,  что в этой  командной  строке  работают  все или  большинство  стандартных  команд Linux.
Обратите  внимание на то, что команды и ключи регистрозависимы. На своем компьютере запустите клиент SSH, например PuTTY. 
Подключитесь к серверу ESX. Вам будет необходимо войти в систему, но пользователем root сделать 
это по SSH нельзя – так по умолчанию настроен сервер SSH на ESX. 

Доступ к ESX(i) по ssh:

!!! VMware  не рекомендует  открывать  доступ  к  командной  строке  и SSH.  
Вариантов  три:
Создать  непривилегированного пользователя и  входить  в систему  с его учетными данными;
Ввести сервер в домен Active Directory и авторизовываться учетными записями AD;
Разрешить  вход с учетными данными пользователя root;

Первый  вариант  более правилен  с точки зрения  безопасности,  третий часто более удобен.

su - введите пароль пользователя root. В результате  вы получаете привилегии root.
Из командной  строки, командами  useradd и passwd; - можно создать пользователя
Когда у вас есть дополнительный пользователь, вы можете входить под ним в систему при подключении по SSH. 

Настройка доступа к ESX(i) по ssh вариант первый:


Дополнительного пользователя вы можете создать на этапе установки ESX;
Из клиента  vSphere,  подключенного напрямую  к ESX. 
Home=>Inventory=>выделите сервер=>закладка 
Users and Groups в контекстном меню выберите Add. 
Чтобы пользователь мог заходить по SSH, 
установите флажок Grant shell access;

Настройка доступа к ESX(i) по ssh вариант третий:

Потребуется отредактировать конфигурационный файл сервера SSH.
  
0. Найдите  строку PermitRootLogin  no и поменяйте ее на PermitRootLogin  yes.
nano /etc/ssh/sshd_config
1.  После этого перезапустите службу SSH 
service sshd  restart

Включение локальной консоли по F1:


В интерфейсе клиента vSphere сделать это можно, пройдя:
Configuration=>Security Profile=>Properties=>Local Tech Support;
Через  локальное  БИОС-подобное меню также  можно  открыть  доступ к локальной  командной  строке,  
пройдите  Troubleshooting Options=>Enable Local Tech Support;
После нажатия  Enter название пункта меню должно поменяться на Disable Local Tech Support – это значит, 
что локальная командная  строка включена, а этим пунктом ее можно отключить обратно.
 
----------------------------------------------------- 

Вы вошли в локальную  консоль:
Включение  SSH  выполняется точно  так  же (в  БИОС-подобном меню  или в пункте настроек Security Profile), 
только теперь вас интересует  пункт Remote Tech Support. Теперь вы можете подключаться по SSH.

----------------------------------------------------- 

Так  или  иначе  разрешив  доступ  к  локальной командной   строке,  нажмите Alt+F1 и авторизуйтесь.

Стандартные команды linux:

В состав ESXi входит маленький дистрибутив Linux под названием  Busybox. 
Основные команды Linux в нем работают.
/usr/bin/busybox - подсмотреть  прочие доступные для Busybox 
cd  - смена текущей директории
cp - копирование файла.cp [файл 1] [файл2]
find - Поиск файлов по критериям
ls - Список файлов и директорий в текущей или явно указанной директории
ls - /vmfs/volumes/ ключи:-l подробная информация-a отображение скрытых файлов
mkdir - создание директории
mv - перемещение файла. Переименование файла.mv [путь и имя файла] [путь, куда перемещать]
ps - Информация о запущенных процессах.ps -e
rm  - удаление файлов
shutdown now - выключение
shutdown –r now - перезагрузка сервера 
vi - текстовый редактор
nano - дружелюбный к новичкам текстовый редактор, отсутствует на ESXi
cat /etc/hosts - вывод содержимого файла на экран
more /etc/hosts - вывод содержимого файла на экран, по странице за раз
man <команда, по которой есть вопрос> - справка по командам, для некоторых команд помощь выводится при запуске самой команды без параметров
useradd <имя пользователя> - создание пользователя
passwd <имя пользователя> - задание пароля пользователю 

vim-cmd

vim-cmd  vmsvc - набрав  эту команду, вы увидите  все возможные  варианты  ее использования 
vim-cmd vmsvc/power.getstate  - вы узнаете статус питания виртуальной машины с указанным ID. 
vim-cmd vmsvc/getallvms - выключить питание виртуальной машины
vim-cmd vmsvc/power.off vmid - включить питание виртуальной машины
vim-cmd vmsvc/power.on vmid - перезагрузить виртуальную машину
vim-cmd vmsvc/power.reboot vmid - удалить файлы виртуальной машины
vim-cmd vmsvc/destroy vmid - удалить файлы виртуальной машины
vim-cmd vmsvc/power.shutdown  - выключение виртуальной машины (shutdown guest)
vim-cmd vmsvc/power.reset  - перезагрузка виртуальной машины
vim-cmd vmsvc/get.summary  - общая информация о виртуальной машине
vim-cmd solo/registervm /vmfs/vol/datastore/dir/vm.vmx - подключить виртуальную машину
vim-cmd vmsvc/unregister vmid - убрать виртуальную машину из гипервизора
vim-cmd vmsvc/tools.install vmid -установка vmware tools
vim-cmd hostsvc/net/info - информация о сети гипервизора
vim-cmd hostsvc/maintenance_mode_enter - переключить хост в режим обслуживания
vim-cmd hostsvc/maintenance_mode_exit - выйти из режима обслуживания

Демоны, ошибки, еще команды:


chkconfig -l - показать службы запущенные на гипервизоре

esxtop - список процессов

vmkerrcode -l - посмотреть vmkernel ошибки

esxcfg-info - посмотреть информацию о хосте
esxcfg-nics -l - посмотреть информацию о сетевых адаптерах
esxcfg-vswitch -l - посмотреть информацию о виртуальных сетевых адаптерах

dcui - стартовая консоль ESXI по ssh

vsish - vmware интерактивная консоль

cat /etc/chkconfig.db - посмотреть состояние сервисов на хосте

/sbin/services.sh restart - перезагрузить все сервисы на хосте

vmkload_mod --list - показать загруженные драйвера
vmkload_mod -s /mod/your_driver - показать параметры драйверов
vmkfstools -i /vmfs/volumes/san_vmfs/my_vm/large_disk.vmdk -d thin /vmfs/volumes/san_vmfs/my_vm/new_thin_disk.vmdk - конвертировать существующий диск в thin формат

list - состояние активных соединений (аналог netstat)

network neighbors list - вывод ARP-таблицы

Команды esxcfg-*

esxcfg-и два раза нажав Tab - выведет все доступные команды

esxcli

Многие консольные команды старой сервисной консоли VMware ESX (например, esxcfg-*) в ESXi 5.0 были заменены командами утилиты esxcli, 
с помощью которой можно контролировать весьма широкий спектр настроек, не все из которых дублируются графическим интерфейсом vSphere Client.

esxcli software vib list - список установленных vib-пакетов

esxcli iscsi adapter list - список iSCSI-адаптеров и их имена
esxcli iscsi adapter discovery rediscover -A 

esxcli storage nfs list - список nfs-монтирований на хосте
esxcli storage core path list - пути хранилищ
esxcli storage core device list - вывод информации о путях и устройствах FC
esxcli storage core plugin list - список плагинов NMP, загруженных в систему
esxcli storage core adapter rescan - рескан HBA-адаптеров
esxcli storage core adapter rescan [-A  | -all] - рескан
esxcli storage vmfs extent list - информация о томах VMFS, подключенных к хосту
esxcli storage filesystem list - мапинг VMFS-томов к устройствам

esxcli hardware memory get - информация о памяти на хосте ESXi, включая объем RAM
esxcli hardware cpu list - информация о количестве процессоров на хосте ESXi
esxcli hardware clock get - текущее аппаратное время хоста
esxcli hardware bootdevice list - порядок загрузки с устройств
esxcli hardware pci list - список PCI-устройств

esxcli network nic list - список сетевых адаптеров
esxcli network ip interface list - информация об IP-интерфейсах хоста
esxcli network ip dns search list - информация об DNS хоста
esxcli network ip dns server list - информация о настройках DNS
esxcli network ip connection
esxcli network firewall get - получить настройки фаервола
esxcli network firewall ruleset list - состояние фаервола ESXi и активные разрешения для портов и сервисов

esxcli vm process list - получаем ID
esxcli vm process kill --type=[soft,hard,force] --world-id=WorldID - убиваем разными способами

esxcli system version list - текущая версия ESXi
esxcli system welcomemsg get - показать приветствие
esxcli system welcomemsg set - узнать и изменить приветственное сообщение ESXi
esxcli system settings advanced list | grep   - поискать что-нибудь в Advanced Settings хоста

Рубрики
esx*

VMware vSphere Client и буфер обмена

Вступление:

Всегда удивляло, что в клиенте VMware vSphere не работает буфер обмена. 
Как оказалось,буфер обмена был отключен в целях безопасности. 
В KB1026437 (Clipboard Copy and Paste does not work in vSphere Client 4.1 and later) написано, 
как включить копирование и вставку в буфер обмена в VMware vSphere Client.

Включить для одной виртуалки:

Функционирование Copy и Paste можно разрешить добавив две строчки в настройки 
(Options > Advanced > General > Configuration Parameters) каждой виртуальной машины.
------------------------------------
isolation.tools.copy.disable – false
isolation.tools.paste.disable – false
------------------------------------

Включить для всего хоста:

На хосте внести изменения изменения в файл /etc/vmware/config.
------------------------------------
isolation.tools.copy.disable="FALSE"
isolation.tools.paste.disable="FALSE"
------------------------------------

Доп PowerCLI скрипт:

С помощью простого скрипта можно внести изменения сразу во все виртуальные машины. 
Этот скрипт можно запускать повторно, по мере создания новых гостей, 
лишние строчки в конфигурационные файлы гостевых машин добавляться не будут.

# Опции которые нужно добавить в конфиги виртуальных машин
# Это удобный способ записи опций, который будет далее преобразован в VirtualMachineConfigSpec
$NewExtraOptions = @{
    "isolation.tools.copy.disable"="false";
    "isolation.tools.paste.disable"="false";
}
 
# Создаем VirtualMachineConfigSpec в который добавим опции определенные выше.
$VMConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec
foreach ($Option in $NewExtraOptions.GetEnumerator()) {
    $OptionValue = New-Object VMware.Vim.OptionValue
    $OptionValue.Key = $Option.Key
    $OptionValue.Value = $Option.Value
    $VMConfigSpec.ExtraConfig += $OptionValue
}
 
# Получим все виртуальные машины, кроме шаблонов, названия которых удовлетворяют маске.
# Если необходимо внести изменения для всех машин, то можно убрать фрагмент '| where {$_.name -like "*"}'
$VMs = Get-View -ViewType VirtualMachine -Property Name -Filter @{"Config.Template"="false"} | where {$_.name -like "*"}
 
# Внесем изменения в конфигурационные файлы виртуальных машин
foreach($VM in $VMs){
    $VM.ReconfigVM_Task($VMConfigSpec)
}
К сожалению, изменения будут применены только после vMotion или выключения/включения виртуальной машины.
Рубрики
esx*

Upgrading from ESXi 5.5 to ESXi 6.x via SSH and esxcli

Источник:

Upgrading from ESXi 5.5 to ESXi 6.x via SSH and esxcli

Обновление:

Upgrading from ESXi 5.5 to ESXi 6.x via SSH and esxcli
In the wake of VMware’s release of ESXi 6.0, I upgraded my ESXi 5.5 server to ESXi 6 using the install ISO file. 
However, it is also possible to perform the upgrade from 5.5 to 6.0 via SSH and esxcli. For more details, see below the jump.


To upgrade from ESXi 5.5 to 6.0 using esxcli:

1. Shut down all VMs running on your ESXi host machine.

2. Connect via SSH and run the following command to enter maintenance mode:
vim-cmd /hostsvc/maintenance_mode_enter
 

3. After putting ESXi into maintenance mode, run the following command to set the correct firewall rules for the httpClient:
esxcli network firewall ruleset set -e true -r httpClient


4. Next, run the following command to list the ESXi 6.x updates available. You want the latest one that ends in “-standard” for your version of VMware.
esxcli software sources profile list -d 
https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-6


5. Once you’ve identified the correct version of VMware (as of 4-18-2015, this is ESXi-6.0.0-20150404001-standard), 
run the following command to download and install the update.
esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.0.0-20150404001-standard
Note: It is very important that you run esxcli software profile update here. Running esxcli software profile install may overwrite drivers that your ESXi host needs.

6. Once the update has been installed and prompts you to reboot, run the following command to restart:
reboot

 
7. After your ESXi host restarts, connect via SSH and run the following command to exit maintenance mode:
vim-cmd /hostsvc/maintenance_mode_exit
Рубрики
esx*

Upgrading from ESXi 6.0 to ESXi 6.5 via SSH and esxcli

0) !!! В веб интерфейсе включаем доступ по ssh и выключаем все виртуалки !!!

1) Подключаемся по ssh
по команде uname -a можно узнать установленную версию 

2) Переводим хост в режим обслуживания
vim-cmd /hostsvc/maintenance_mode_enter

3) Разрешаем использование httpClient ( настроив firewall)
esxcli network firewall ruleset set -e true -r httpClient

4) Смотрим доступные образы для установки 
esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-6.5

5) Видим примерно следующие 
[root@localhost:~] esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-6.5
ESXi-6.5.0-4564106-no-tools       VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170104001-no-tools   VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170304001-standard   VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170104001-standard   VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170304001-no-tools   VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170301001s-standard  VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170304101-no-tools   VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170304101-standard   VMware, Inc.  PartnerSupported
ESXi-6.5.0-4564106-standard       VMware, Inc.  PartnerSupported
ESXi-6.5.0-20170301001s-no-tools  VMware, Inc.  PartnerSupported

6) Ставим вот это ESXi-6.5.0-20170304001-standard
 esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.5.0-20170304001-standard

7) Перезагружаем хост 
reboot

8) Снова подключаемся через веб интерфейс и убираем  режим обслуживания.
Рубрики
esx*

Установка drivers nvidia для esxi 6.5 (GRID)

Источник:

https://icebow.ru/portal/display/VMWKB/VMWare+ESXi+6+NVIDIA+GRID+vGPU+Code+43

Установка:

0) Ищем драйвер
Например вот тут драйвер для GRID http://www.nvidia.com/download/driverResults.aspx/111603/en-us
1) Подключаемся к серверу через веб интерфейс  включаем ssh
2) Выключаем все виртуалки 
3) Переводим сервер  в режим обслуживания ( можно вот так по ssh ------>  esxcli system maintenanceMode set --enable true)
4) Скачиваем driver.vib любым доступным способом на сервер (winscp,ssh,wget, да просто через веб интерфейс)
5) я положил на веб сервере с ип 10.100.1.2  драйвер driver.vib
6) подключился на сервер esxi через ssh
7) Перешел в каталог /tmp
cd /tmp 
8) Скачал драйвер с веб сервера в каталог /tmp
wget http://10.100.1.2/driver.vib
9) Установил драйвер
esxcli software vib install -v /tmp/driver.vib
10) перезагрузил сервер
reboot
11) Подключаемся к серверу по ssh
проверка установки
nvidia-smi
12) отключение режима обслуживания
esxcli system maintenanceMode set --enable false