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