VMware vSphere, ESX
|
VMware vSphere, ESX
Миграция VM воткнутой в Internal switch
Переезд с Windows VC на Linux appliance VC
Roud Robin для всех
Vmware-tools for nested-esxi 5.0, 5.1, 5.5
Mem.MinFreePct - amount of the memory should keep free
Redirecting vmware.log to ESX syslog
Emulating an SSD Virtual Disk in VM
Интеграция HP Data Protector - не работает SAN и HotAdd
Как сбросить забытый пароль admin@System-Domain в SSO
Почему не включается Streaming ThinApp'ов
Запуск Windows 2008 и Windows 8 на ESXi4.1
Чтоб vmk0 автоматически получал MAC от своего vmnic
Как погасить дисплей, подключенный к ESXi
VCP exam скидка 50% в 2013
Поставить VM на паузу
Hyper-V in VMware VM
Передача в VM информации о платформе ("проброс BIOS")
Доступ к экрану View-сессии через vsphere console
Copy/paste в консоли VM
5.1 Переименование vmdk-файлов при миграции VM
Расположение дистрибутивов vmware-tools в ESXi
V51: 15 секундная задержка при открытии console у VM
V51: подробности про Single Sign On
V5: настройка SNMP
V5: команды по мониторингу дисков
Файл webclient.properties
Загрузка VM с USB в Vmware Workstation
Автоматическое скриптовое конфигурирование свежезадеплоеного VCSA
Копирование VM с хоста на хост с помощью ovftool by William Lam
Ghosted-ethernets в Windows
Конфигурирование software FCoE
Активация Perfmon DLL и подгрузка esxtop-csv в Perfmon
Как сделать самопальный .vib
Добавление пользовательских портов в firewall ESXi 5
Перманентное сохранение настроечных файлов в ESXi 5.0
Схлопывание тонкого диска
Место хранения лицензии на ESX-сервере
Подключение ленточных библиотек в VM
Автоматическое создание и удаление снапшотов
Snaphot parameters
HA VM and VM&Application monitoring
Vmware Data Recovery
Serial Port connection
Virtual Serial Port Concentrator
Коротко про View Persona Management
VM cannot allocate memory при большом об'еме vmdk
Создание DB-instance в Oracle для VCSA
Advanced настройки управляющие памятью
Внутри VM читаем информацию о настройках vApp, IP pool и OVF environment
Linked-clone своими руками
Beacon probing по двум аплинкам: револьверный режим
Просмотр информации о хардвере ESXi 5.0
Установка апдейта в vSphere 5.0
Что почитать про vSphere
VADP: vSphere storage APIs for Data Protection
VAAI: vSphere storage APIs for Array Integration
Как назначить локальному SATA диску фальшивый атрибут SSD
Чтобы ESXi не жаловался на включенный SSH
HA/DRS 5.0 advanced options
Частота прерывания таймера в Linux
Размещение снапшотов
Configuring Auto Deploy on the vCenter Server Appliance
Image Builder
Изменение частоты таймера для Linux
Если DPM не выключает хосты
Чтоб vsphere-клиент при выборе LUN для RDM/VMFS показывал все LUN
Оффтопик. Скриптинг в win-cmd
VDS - конфигурирование без VC
Превращение VM с 4-vcpu в VM с двумя двухядерными процессорами
Как уменьшить размер виртуального диска
Просмотр ARP-таблицы в ESXi
Как обнулить пароль в ESX и ESXi
Как восстановить удаленный VMFS3
Переназначение snapshot'ов и swap'а на другой сторадж
Установка updates в ESXi
vim-cmd для ESXi
Реконфигурация сети у vMA
FT машины не обслуживаются DRS-кластером
View: если зависает QuickPrep Customization на Win7
Как выполнить команду внутри GUEST OS
Инсталляция ESXi по сети
Назначение локального SATA-диска в RDM для ESXi
esxcli в vSphere 5.0
Активация dependend-hardware iSCSI (broadcom chip)
Назначение нескольких vmk для доступа к iSCSI
Маскировка LUN в vSphere 4
Активация SNMP-агента в ESXi 4
Сетевая PXE инсталляция ESXi 4.1
Делаем USB-флешку для инсталляции ESXi 4.1 с USB
Если соседские VC генерят разным виртуалкам совпадающие mac-адреса
vSphere 4.1 - что нового
VM с многоядерным процессором
Как задать неvmwar'ный МАК-адрес для VM
Как опознать ESX-хост, который заблокировал файл у VM
HA 4.1 рестарт VM
HA admition control
Advanced Configuration parameters for HA
LUN маскинг в V4
Distributed switches
Генерация лог-бандла на ESX 4
vsish
vCLI
vMA(vmware managemet appliance) - настройки и использование
Установка vCSHB - VC Server Heartbeat
Открыть доступ к консоли esx-VM через VNC
Бэкап конфигурации ESXi через RCLI
Что такое vShield Zones
Настройка VM для установки в нее ESXi5
Настройка VM Workstation 7.0 для установки в нее ESX4
Настройка VM для установки в нее ESX4
В V4 перестала работать скриптовая инсталляция
Как открыть root'доступ в vMA
how can i view which physical nic each VM's vNic maps to
Distributed switch: ephemeral vs dynamic port binding
FT - экономим netw - secondary может самостоятельно вести disk IO
FT - список совместимости
vApp IP settings do not directly influence anything
Вернуть аплинк из дистрибутед свитча обратно обычному, с SC-портом
Активация unsupported в ESXi
SSH доступ к ESXi
Что нового в VI4 aka vSphere aka NextGeneration VI
Если в VI Client не открывается консоль виртуальной машины
Если клавиатура в консоли VM двоит
Как остановить виртуальную машину
Как установить в ESX Storage VMotion
Как добавить пользовательские дравера на Convertor Cold Clone CD
Как ограничить IP-доступ к виртуальному центру
Создание и управление VMFS-стораджами
Работа со стораджами
Файлы, из которых состоит VM
Distribudet Lock Handling Host-блокировки на VMFS3
Монтаж стораджей, и стораджи на LUN-снапшотах
Модули, драверы и их настройки
Работаем с virtual-свитчами
Как прописать себе права админа VC, если Администратор стал ReadOnly
Как переименовать ESX-сервер 3.5
Scripted installation KS file for ESXi4.1
|
Всякие полезности из командной строки.
Миграция VM воткнутой в Internal switch
По умолчанию запрещена. Чтоб разрешили - приходится предварительно дисконнектить ethernet, или отключать с него IP-адрес изнутри гостевой OS. "Лечится" advanced-настройкой VCентра 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
http://blogs.vmware.com/vsphere/2012/05/memminfreepct-sliding-scale-function.html 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
Данный адрес e-mail защищен от спам-ботов, Вам необходимо включить Javascript для его просмотра.
'echo -e "\\033[H\\033[2J" > /dev/tty2'
VCP exam скидка 50% в 2013
VCP-DV, VCP-DT, Cloud, IaaS http://www.pearsonvue.com/vmware/getcertified/ http://vmware.com/certification Promotion code Существует так же инструкторская скидка 25%, до 31 октября 2013 спросить код у своего инструктора
Поставить VM на паузу
Узнать 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: http://www.yellow-bricks.com/2011/11/29/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, добывается гуглением http://www.yellow-bricks.com/2011/08/11/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) Extended Statistics Просмотр возможности VAAI для разных LUNs esxcli storage core device vaai status get Просмотр стандартных назначений VAAI-модулей для поддерживаемых Arrais esxcli storage core claimrules list -c all
Как назначить локальному 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
# Список nfs-монтирований на хосте: # esxcli storage nfs list # Список установленных vib-пакетов: # esxcli software vib list # Информация о памяти на хосте ESXi, включая объем RAM: # esxcli hardware memory get # Информация о количестве процессоров на хосте ESXi: # esxcli hardware cpu list # Список iSCSI-адаптеров и их имена: # esxli iscsi adapter list # Список сетевых адаптеров: # esxcli network nic list # Информация об IP-интерфейсах хоста: # esxcli network ip interface list # Информация о настройках DNS: # esxcli network ip dns search list # esxcli network ip dns server list # Состояние активных соединений (аналог netstat): # esxcli network ip connection list # Вывод ARP-таблицы: # esxcli network neighbors list # Состояние фаервола ESXi и активные разрешения для портов и сервисов: # esxcli network firewall get # esxcli network firewall ruleset list # Информация о томах VMFS, подключенных к хосту: # esxcli storage vmfs extent list # Мапинг VMFS-томов к устройствам: # esxcli storage filesystem list # Текущая версия ESXi: # esxcli system version list # Вывод информации о путях и устройствах FC: # esxcli storage core path list # esxcli storage core device list # Список плагинов NMP, загруженных в систему: # esxcli storage core plugin list # Рескан HBA-адаптеров: # esxcli storage core adapter rescan # Получить список ВМ с их World ID и убить их по этому ID # esxcli vm process list # получаем ID # esxcli vm process kill --type=[soft,hard,force] --world-id=WorldID # Узнать и изменить приветственное сообщение ESXi: # esxcli system welcomemsg get # esxcli system welcomemsg set # Поискать что-нибудь в Advanced Settings хоста: # esxcli system settings advanced list # Текущее аппаратное время хоста: # esxcli hardware clock get # Порядок загрузки с устройств: # esxcli hardware bootdevice list # Список PCI-устройств: # esxcli hardware pci list # Рескан iSCSI-адаптеров (выполняем две команды последовательно): # esxcli iscsi adapter discovery rediscover -A {adapter_name} # esxcli storage core adapter rescan [-A {adapter_name} | -all] # Список виртуальных коммутаторов и портгрупп: # 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 <dvs><portReserveTimeout>mm</portReserveTimeout></dvs> Оторванный 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
* vSphere 4 *
vCLI
vicfg-* esxcli vmkfstools vifs svmotion resxtop vmware-cmd vihostupdate "vSphere Command-Line Interface Installation and Reference Guide" http://www.vmware.com/support/pubs vicfg-nics --server ESXa --username root --password vmware -l vicfg-nics --server vC1 --username vcadmin --password vmware -vihost ESXa -l
vMA(vmware managemet appliance) - настройки и использование
root - отключен, используем vi-admin все команды начинаются с префикса vicfg- esxcfg- - сохранен для backwardcompatibility 1. Активируем vi-fastpass (неинтерактивная авторизация) sudo vifp addserver vCenter.Server.system vifp listservers vifpinit vCenter.Server.system # при новом логине команду повторить vicfg-nics -l --vihost ESX.host 2. Альтернатива - сохранять временный session file /usr/share/doc/vmware-vcli/samples/session/save_session.pl save_session.pl --savesessionfile /tmp/vimsession --server server.name.or.address --username user_name --password password vicfg-nics --sessionfile /tmp/vimsession -l
Установка vCSHB - VC Server Heartbeat
4Gb disk, 512Mb RAM, Display 1024x768 Включить RDP (My Computer - Propertie - Remote) Выключить Firewall (Control panel - Windows Firewall) Enable VSS для C: C: - Properties - Shadow copy Eth1 - Statical IP for VC, Advanced - WINS - Enable NetBIOS over TCP Eth2 - Statical IP for HB channel, Advanced - WINS - Enable NetBIOS over TCP Установить vSphere Client Установить VC Дистрибутив vCSHB обязан лежать на C: (с сетевого пути не ставится)
Открыть доступ к консоли esx-VM через VNC
Работает в ESX3.5, ESX4, WorkStation 6,7. В ESXi не работает http://kb.vmware.com/selfservi...ayKC&externalId=1246 В .vmx добавляем RemoteDisplay.vnc.enabled = TRUE RemoteDisplay.vnc.port = "5910" RemoteDisplay.vnc.password = "secret" Не забыть в файволе на ESX-сервере открыть указанный порт esxcfg-firewall --enableService vncServer или esxcfg-firewall -i 5910,tcp,in,vnc10 Коннектимся к ESX-серверу: vncviewer esx.host.name:5910 или esx.host.name:10
Бэкап конфигурации ESXi через RCLI
# Бэкап vicfg-cfgbackup.pl --server esxN --username root --password pass -s c:\esxN.cfg # Восстановление: vicfg-cfgbackup.pl --server esxN --username root --password pass -l c:\esxN.cfg # reset to factory setting vicfg-cfgbackup.pl --server esxN --username root --password pass -r
Что такое vShield Zones
Это система VM-ок файрволлов(vShield) на каждом ESX + управляющая консоль(vShield Manager) - тоже VM. У каждой vShield три сетевых интерфейса: mgmt, unprot и prot, которые подключены в соотв. портгруппы. mgmt (со своим IP )- для коммуникации с vShield Manager unprot смотрит в физическую сетку prot - смотрит в internal vSwitch - в нем и живут защищаемые VM-ки Обеспечивает полностью прозрачный firewall, фильтрацию и т.д.
Настройка VM для установки в нее ESXi5
В vSphere 5.0 появился поддерживаемый тип гостевой: vSphere 4 и vSphere 5 При создании новой VM его невозможно выбрать, поэтому создаем VM под Linux RedHat 5/64, а затем меняем на vSphere 5. HW CPU и MMU для VM по умолчанию срезается. Чтобы хост пробрасывал в свои VM аппаратную поддержку виртуализации процессора, добавить в файл /etc/vmware/config vhv.allow = "TRUE" Прочие настройки почти без изменений по сравнению с V4: VM Virtual Hardware Version 8 GuestOS: vSphere 5 VCPU: 2, RAM: 2Gb++ NIC: 2* e1000 SCSI: LSI Logic Parallel PortGroup security: Promiscous mode=Accept Чтобы во вложенном ESXi 5.0 работал FT: replay.supported = "true" replay.allowFT = "true" replay.allowBTOnly = "true" esxcli system settings advanced set -o /Migrate/VMotionStreamDisable -i 0 esxcfg-advcfg -s 0 /Migrate/VMotionStreamDisable
Настройка VM Workstation 7.0 для установки в нее ESX4
Общий диск делаем Preallocated, Independent, Persistent, NoWriteCache в .vmx добавляем строчки: disk.locking = "FALSE" diskLib.dataCacheMaxSize = "0" Это позволит в Workstation'е не нарываться на блокировку vmdk Ethernet'а достаточно и одного. Поставить его в "Bridged" + "Replicate physical connection state" Для NAT и HosOnly чекбокса "Replicate conn state" нет, его можно сделать: ethernet0.linkStatePropagation.enable = "TRUE" Тогда виртуалки будут видны во внешнем LAN. Wake on LAN включается так: ethernet0.wakeOnPcktRcv = "FALSE"
Настройка VM для установки в нее ESX4
Да, это возможно. ESX 3.5 и 4.0 может крутиться внутри виртуальной машины WorkStation 6,7, Mac Fusion 7 и ESX 4.0 http://www.vcritical.com/2009/05/vmware-esx-4-can-even-virtualize-itself/ Настройки VM: GuestOS: RHEL 5(64 bit) VM Virtual Hardware Version 7 VCPU: 2, RAM: 2Gb NIC: 2* e1000 SCSI: LSI Logic Parallel PortGroup security: Promiscous mode=Accept Ставимся со стандартного iso с ESX4 или ESX4i Однако при попытке стартовать VM внутри виртуалного ESX получим: "You may not power on virtual machine in a virtual machine" Чтобы справиться с этим добавить в .vmx файл ESX'а строку monitor_control.restrict_backdoor = TRUE А чтобы во вложенном ESX работал FT - добавляем (неподдерживаемый) параметр replay.logReadData = checksum
В V4 перестала работать скриптовая инсталляция
Веб-интерфейс для генерации ks-файлов был ликвидирован, зато в /root/ks.cfg лежит адекватная версия для проинсталлированной системы. опция загрузки ksdevice=eth0 отныне не работает, надо использовать vmnic0 итоговая строка скриптовой инсталляции должна выглядеть примерно так: esx ks=nfs://192.168.51.10/ks/sc-unreal06.cfg ksdevice=vmnic0 http://communities.vmware.com/message/1274648 ks.cfg # вариант для сетовой инсталляции . . . install url http://192.168.1.1/4.0/ . . . SNIP-config: kernel vmlinuz-install-vmware4 append initrd=initrd-install-vmware4.img ksdevice=vmnic0 ip=172.16.12.132 netmask=255.255.255.0 gateway=172.16.12.1 nameserver=172.16.11.250 vmkopts=debugLogToSerial:1 mem=512M ks=http://172.16.10.2/ks/${file}.cfg ?? IPAPPEND 1
Как открыть root'доступ в vMA
sudo chsh -s /bin/bash root
how can i view which physical nic each VM's vNic maps to
esxtop will show the used uplink in the TEAM-PNIC colum (vSphere esxtop only)
Distributed switch: ephemeral vs dynamic port binding
Static - port-id для VM назначается в момент создания/задания подключения количество подключенных VM ограничено числом портов в портгруппе Dynamic - port-id выдается в момент poweron количество "подключеных" VM не ограничено количество включенных VM ограничено числом портов в портгруппе Ephemeral - количество портов в портгруппе не задано. Port-id выдается в момент poweron, количество включенных VM - любое В этом режиме невозможно задавать параметры для конкретных port-id
FT - экономим netw - secondary может самостоятельно вести disk IO
По умолчанию весь дисковый ввод/вывод ведет PrimaryVM, а прочитанные данные передаются на SecondaryVM через FTloggingNet. Но можно переключить SecondaryVM на самостоятельное чтение с диска Добавить в .vmx Естественно, дисковый вывод порождаемый SecondaryVM по-прежнему выполняется только с PrimaryVM Кажется, этот фокус возможен только на RDM, ибо на VMDK висит исключительная блокировка Primary-ESX replay.allowBTOnly = TRUE setting
FT - список совместимости
3rd-Generation AMD Opteron based on the AMD Barcelona, Budapest and Shanghai processor families; and Intel Xeon processors based on the Penryn and Nehalem microarchitectures Intel Xeon based on 45nm Core 2 Microarchitecture Category: o 3100, 3300, 5200 (DP), 5400, 7400 Intel Xeon based on Core i7 Microarchitecture Category: o 5500 Series AMD 3rd Generation Opteron Category: o 1300, 2300 Series (DP), 8300 (MP) Ограничен также список поддерживаемых операционных систем. Подробности: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1008027 FT FAQ
vApp IP settings do not directly influence anything
Then, at the individual VM level turn on Edit Settings > Options > vApp Options, and at OVF Settings turn on one or both of the Environment Transports. The next thing is to go to vApp Options > Advanced > Properties. For each network setting that you want to query in your VM add a new property there, give it an appropriate key, open Type > Edit, select Dynamic Property and the thing you want to query (e.g. IP Address for network Production). When you are satisfied, give your OK to all dialogs and start the VM. Once the VM is up, depending on which transport you enabled you will find a CD in its drive containing ovf-env.xml or you can query the same information with vmware-guestd --cmd "info-get guestinfo.ovfEnv" This XML blob will contain the properties you configured above including, for example an IP adress assigned from the IP Pool. All that's left to do is write code that parses the file and bashes the settings into the guest OS. Of course all vApp properties that are not autoconfigured will be there as well.
Вернуть аплинк из дистрибутед свитча обратно обычному, с SC-портом
esxcfg-vswitch -l # get the port ID for the nic esxcfg-vswitch -V the-port-id -Q vmnic# DVSvSwitchname esxcfg-vswitch -L vmnic# vSwitch#
* Vi 3.5 *
Активация unsupported в ESXi
SSH доступ к ESXi
http://wiki.vm4.ru/InstBase/ssh Вообще-то unsupported доступен по умолчанию, но на всякий случай: Клиентом: ESXi-host -- Configuration -- Software -- Advanced Setting VMkernel.Boot.techSupportMode = Enable В локальной консоли ESXi нажмите ALT-F1. Напечатайте unsupported. Текста видно не будет, но вы войдете в режим Tech Support Mode и появится запрос пароля root vi /etc/inetd.conf Расскомментировать #ssh Перезапустите management services или inetd /sbin/services.sh restart kill -HUP `cat /var/run/inetd.pid` Reboot'ить при этом ESXi не надо - ибо содержимое /etc/inetd.conf после перезагрузки ресетится к дефолтному состоянию. Но и описанная технология, гидная для ESXi 3.5 - в 4-ке как-то не заработала
Что нового в VI4 aka vSphere aka NextGeneration VI
Upgrading VMware deployments Distributed virtual switches to simplify datacenter-wide network management VMDirectPath - assign a PCI adapter directly to a virtual machine Storage vMotion - миграция диска работающей VM Увеличение размера виртуальных дисков и VMFS томов в онлайне VMware's new Pluggable Storage Architecture VMware Fault Tolerance - application availability Lincked Mode - Manage more than one vCenter Server from the same client Use the new Host Profiles feature to keep hosts uniformly configured VMware Distributed Power Management - энергосбережение Save disk space with thin provisioning Виртуальные апплиансы, содержащие сразу несколько VM
Если в VI Client не открывается консоль виртуальной машины
Clicked on the VM and selected "open console" I got the following: "error connecting: can not connect to host x.x.x.x: a connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond." To fix the problem add the following line to the /etc/vmware/config file: vmauthd.server.alwaysProxy = "TRUE" http://vmetc.com/2008/06/02/vi-client-open-console-attempt-fails/
Если клавиатура в консоли VM двоит
Увеличиваем таймаут между нажатиями в .vmx keyboard.typematicMinDelay = 20000000
Как остановить виртуальную машину
Получить список зарегистрированных в ESX-сервере машин. vmware-cmd -l Посмотреть статус VM vmware-cmd {cfg} getstate where {cfg} is the path to the .vmx file retrieved from the vmware-cmd -l command. Останов, старт, саспенд, снапшот виртуальной машины: start/stop/suspend/snapshot vmware-cmd {cfg} stop 4. Verify the state again with: vmware-cmd {cfg} getstate
Как установить в ESX Storage VMotion
www.vmware.com => Downloads => VMware Infrastructure 3 Download => Driver & Tools => VMware Infrastructure Remote CLI Download Проще всего запускаться командой svmotion --interactive
Как добавить пользовательские дравера на Convertor Cold Clone CD
Within the cd there is a tool called petool.exe with it you can add the needed extra drivers for your hardware. You just need to create a folder in uppercase with the drivers, than run the command bellow, it will import the drivers to the coldclone ISO. petool.exe -i c:\temp\coldclone.iso -d c:\temp\DRIVERS
Как ограничить IP-доступ к виртуальному центру
conf directory for tomcat and there is a file called server.xml If you put the following entry in that file it does the job allow="1.2.3.4,5.6.7.8,192.168.1.*"/> There is a different valve for limiting by domain name.
Создание и управление VMFS-стораджами
Сторадж создается только на SCSI-дисках (к которым относятся SCSI, SAS, FC, iSCSI) В отдельной партиции, ID партиции - "fb", начало партиции желательно выравнять на 128 блок (64Kb) esxcfg-vmhbadevs # выводит список лунов и соответствующих им /dev/sd* в SC vmhba1:0:13 /dev/sda vmhba1:0:14 /dev/sdb vmhba1:0:21 /dev/sdc fdisk /dev/sda # создаем primary партицию с ID "fb" n p 1 t 1 fb w fdisk /dev/sda # выставляем начало 1 партиции на 128-й блок (64-й килобайт) x b 1 128 w . . . fdisk -l /dev/sda Device Boot Start End Blocks Id System /dev/sda1 1 11 88326 fb Vmware VMFS esxcfg-info -s При создании стораджа указываем партицию, которую хотим отформатировать под VMFS3 vmkfstools -C vmfs3 -S StorageName vmhba1:0:13:1 Добавление экстенда к стораджу: vmkfstools -Z vmhba1:0:14:1 vmhba1:0:13:1 # -Z добавка голова vmkfstools -K name.vmdk #? не проверено - сплющить нулевые блоки в тонком диске
Работа со стораджами
ls -l /vmfs/volumes vdf vmkfstools -P StorageName vmkfstools -P -h StorageName # -h - выводить разнеры в Mb/Gb # переименование Стораджа (старый симлинк удалять и переименовывать НЕ НАДО) ln -sf /vmfs/volumes/storage-uuid /vmfs/volumes/NewStorageName
Файлы, из которых состоит VM
VM.vmx Конфиг-файл VM VM.vmdk Диск VM (конфиг файл диска) VM-flat.vmdk Цельный диск VM (preallocated - собственно данные) VM-f0001.vmdk Splitted диск VM (2Гб кусок splited preallocated диска) VM-s0001.vmdk Splitted growable диск VM (2Гб кусок расрастущего диска) VM.vmsd Словарь снапшота и заснапшоченых дисков VM.vmem VM memory mapped то file VM.nvram NVRAM Award-BIOS'а VM VM.vmx.lock Lock, создается при старте VM VM-delta.vmdk Снапшотная дельта VM-Snapshot8.vmsn Конфигурация снапшота No 8
Distribudet Lock Handling Host-блокировки на VMFS3
Хост-lock создается в heartbit-регионе, timestamp обновляются каждые 3 сек. Наличие лока проверяется 15 секунд - если за 5 проверок timestamp не обновился - значит владелец lock'а скончался, и его можно перехватить. Далее делается восстановление накатом журнала, и ставится свой lock.
Монтаж стораджей, и стораджи на LUN-снапшотах
ESX монтирует все корректные (с его точки зрения) стораджи с VMFS3 В заголовке VMFS3 указан UUID и номер LUN'а, на котором он создан. Если в заголовке VMFS3 указан не тот LUN, под которым мы его видим - значит это не оригинал, а RAID-овый снапшот, полученный в результате CA или BC Категорически недопустимо монтировать два стораджа, имеющих одинаковый UUID Автоматический монтаж управляется двумя Advanced Config-переменными LVM.DisallowSnapshotLUN, LVM.EnableResignature LVM.EnableResignature = 1 (default) если видим снапшотный LUN - прописываем ему в заголовок новый UUID и LUN, после этого он безболезненно монтируется LVM.DisallowSnapshotLUN = 1 либо просто запрещаем монтировать такой LUN LVM.DisallowSnapshotLUN = 0 (default 0) снапшотный LUN - таки монтируется LVM.EnableResignature = 0 если видим снапшотный LUN - заголовок не меняем Самый цирк случается, если хитровымученный RAID-массив один и тот же LUN двум разным хостам показывает под разным lun-номером. Тогда один из них всегда будет воспринимать этот LUN как заснапшоченый - и стремиться произвести с ним ресигнатуру - скорректировать заголовок, следом - второй хост захочет того-же - и так в вечном цикле. Именно для таких случаев выставляют LVM.EnableResignature = 0, LVM.DisallowSnapshotLUN = 0 Управление переменными: cat /proc/vmware/config/LVM/EnableResignature # посмотреть esxcfg-advcfg -g /LVM/EnableResignature # посмотреть esxcfg-advcfg -s 1 /LVM/EnableResignature # выставить в 1 esxcfg-rescan vmhba1 Либо (стремно) vi /etc/vmware/esx.conf /adv/LVM/EnableResignature = "1" /adv/Disk/MaskLUNs = "vmhba2:0:34-38;vmhba3:0:1,5,7-9" /adv/Disk/MaxLUN = "256" /adv/Disk/DiskSupportSparseLUN /adv/Disk/ShedNumReqOutstanding shutdown -r 0
Модули, драверы и их настройки
esxcfg-module -q # посмотреть статус и список модулей VMKERNEL cat /proc/scsi/qla2300/1 # посмотреть настройки 1-го контроллера типа qla2300 /proc/scsi/[draver]/[instance] esxcfg-boot -q vmkmod # boot-options vmkernel'a # сконфигурить длину очереди для QLogig FC esxcfg-module -s ql2maxqdepth=64 qla2300_707_vmw vi /etc/vmware/esx.conf /vmkernel/module/qla2300_707_vmw.o/options = ql2maxqdepth=64 vmkload_mod -s qla2300_707_vmw # детальные текущие настройки дравера Сразу несколько настроек для разных instansow драверa в одной команде: esxcfg-module -s "lpfc0_lun_queue_depth=16 lpfc0_lun_queue_depth=16" lpfcdd_7xx после любых настроек модулей выполнить команду esxcfg-boot -b esxcfg-boot -b # пересобирает init-ram-disk и его настройки Для гостевых Windows - удлинить таймаут по опознанию сбойнувшего диска Старт -- Рун -- регедит HKEY_LOCAL_MACHINE > System > CurrentControlSet > Services > Disk TimeOutValue = 60
Работаем с virtual-свитчами
esxcfg-nics -l # статус физических ethernet'ов esxcfg-nics -s 1000 -d full vmnic2 32 nics per host 32 nics per vSwitch 128 vSwitchs 512 PortGroups 1016 Ports per vSwitch 4096 Ports in all PortGroups (точнее 4096 - 128 - numvswith*8) esxcfg-vswitch -a vSwith2:32 # создать 24-портовый (32-8) v-свитч esxcfg-vswitch -D Production vSwith2 # оторвать портгруппу esxcfg-vswitch -A Production vSwith2 # создать в vSwith2 портгруппу Production esxcfg-vswitch -A Production -v 105 vSwith2 # создать в vSwith2 портгруппу Production с VLAN 105 esxcfg-vswitch -v 105 -p "Service Console" vSwitch0 # Назначить порт-группе Service Console VLAN 105 esxcfg-vswitch -L vmnic2 vSwith2 # подключить физический ethernet в vSwith2 esxcfg-vswitch -U vmnic2 vSwith2 # оторвать физический ethernet esxcfg-vswitch -l # просмотреть конфиг всех vSwitch esxcfg-vswitch -m 9000 vSwith1 # enable Jumbo frames в vSwitch1 esxcfg-vswitch -B listen vSwith1 # включить CiscoDiscoveryProtocol esxcfg-vswitch -B down vSwith1 # выключить CDP esxcfg-vswitch -b vSwith1 # проверить статус CDP esxcfg-vswif -l # Посмотреть IP-настройки Service Console # Назначить IP-адрес для Service Console esxcfg-vswif -a -i 192.168.31.36 -n 255.255.255.0 -m 1500 -p "Service Console" vswif0 esxcfg-vmknic -l # посмотреть статус VMkernel'ных IP esxcfg-vmknic -a -i IP -n NETMASK -m MTU -p PortGroupName # назначить IP для vmkernel # TSO включается по умолчанию, чтобы не включался - добавить -t esxcfg-route [gateway-IP] # default gateway для VMkernel esxcfg-route -l # посмотреть таблицу маршрутизации vmkernel cat /proc/vmware/net/tcpip/ifconfig vmping # ping с vmkernel'ного адреса
Как прописать себе права админа VC, если Администратор стал ReadOnly
VC SQL database table : VPX_ACCESS Then add another row : ID: 1 Principal : Administrators Role_ID : -1 ENTITY_ID : 1 FLAG : 3 Afterwards you need to restart the Virtual Center Services.
Как переименовать ESX-сервер 3.5
1. Update the following files with the correct server name /etc/hosts /etc/sysconfig/network /etc/vmware/esx.conf 2. Update the hostname as follows # hostname mateo0x.hp.local 3. Restart the network # service network restart 4. Restart the hostd daemon so that the VI client will get the updated hostname # service mgmt-vmware restart
Scripted installation KS file for ESXi4.1
Origin: http://www.kendrickcoleman.com/index.php?/Tech-Blog/esxi-41-kickstart-install-wip.html ########### cut here ################### rootpw changeme install url http://192.168.187.66/ESXi autopart --firstdisk --overwritevmfs reboot #Network install type network --bootproto=static --addvmportgroup=false --device=vmnic0 --ip=192.168.50.13 --netmask=255.255.255.0 --gateway=192.168.50.1 --nameserver=192.168.3.2 --hostname=ESXi3.FQDN accepteula %firstboot --unsupported --interpreter=busybox #Assign VLAN to Management PortGroup esxcfg-vswitch -v 50 -p 'Management Network' vSwitch0 #Add vMotion Portgroup to vSwitch0 esxcfg-vswitch -A vMotion vSwitch0 #Add pNIC vmnic6 to vSwitch0 esxcfg-vswitch -L vmnic6 vSwitch0 #Assign ip address to vMotion vmk1 esxcfg-vmknic -a -i 192.168.51.12 -n 255.255.255.0 -p vMotion #Assign VLAN to vMotion PortGroup esxcfg-vswitch -v 51 -p vMotion vSwitch0 sleep 10 #set vMotion to vmk vim-cmd hostsvc/vmotion/vnic_set vmk1 #Set NIC order policy for port groups vim-cmd hostsvc/net/portgroup_set --nicorderpolicy-active=vmnic0 --nicorderpolicy-standby=vmnic6 vSwitch0 'Management Network' vim-cmd hostsvc/net/portgroup_set --nicorderpolicy-active=vmnic6 --nicorderpolicy-standby=vmnic0 vSwitch0 vMotion #Add new vSwitch for IP Storage esxcfg-vswitch -a vSwitch_IP-SAN #Set MTU to 9000 for jumbo frames on vSwitch esxcfg-vswitch -m 9000 vSwitch_IP-SAN #Add Portgroup to vSwitch_IP-SAN esxcfg-vswitch -A NetApp_FAS2020a vSwitch_IP-SAN #Assign IP address to vmknic esxcfg-vmknic -a -i 192.168.52.12 -n 255.255.255.0 -m 9000 NetApp_FAS2020a #Add NICs to new vSwitch esxcfg-vswitch -L vmnic2 vSwitch_IP-SAN #Add NICs to new vSwitch esxcfg-vswitch -L vmnic7 vSwitch_IP-SAN vim-cmd hostsvc/net/refresh sleep 10 #Change LoadBalance for Etherchannel - WORKS WHEN TYPED IN CLI BUT NOT WORKING IN SCRIPT FOR SOME REASON vim-cmd hostsvc/net/vswitch_setpolicy --nicteaming-policy=loadbalance_ip vSwitch_IP-SAN #Add NFS datastores esxcfg-nas -a -o 192.168.52.101 -s /FAS2020a_Node1_NFS_A FAS2020a_Node1_NFS_A esxcfg-nas -a -o 192.168.52.101 -s /FAS2020a_Node1_NFS_B FAS2020a_Node1_NFS_B esxcfg-nas -a -o 192.168.52.102 -s /FAS2020a_Node2_NFS_A FAS2020a_Node2_NFS_A #Adding the FT Network esxcfg-vswitch -a vSwitch_FT esxcfg-vswitch -A Fault_Tolerance vSwitch_FT esxcfg-vswitch -L vmnic4 vSwitch_FT esxcfg-vswitch -L vmnic9 vSwitch_FT esxcfg-vmknic -a -i 192.168.55.12 -n 255.255.255.0 -p Fault_Tolerance vim-cmd hostsvc/net/portgroup_set --nicorderpolicy-active=vmnic4 --nicorderpolicy-standby=vmnic9 vSwitch_FT Fault_Tolerance vim-cmd hostsvc/advopt/update FT.Vmknic string vmk3 vim-cmd hostsvc/net/refresh #Set DNS vim-cmd hostsvc/net/dns_set --ip-addresses=192.168.3.23,192.168.3.2 # Set NFS advanced Configuration Settings esxcfg-advcfg -s 30 /Net/TcpipHeapSize esxcfg-advcfg -s 120 /Net/TcpipHeapMax esxcfg-advcfg -s 10 /NFS/HeartbeatMaxFailures esxcfg-advcfg -s 12 /NFS/HeartbeatFrequency esxcfg-advcfg -s 5 /NFS/HeartbeatTimeout esxcfg-advcfg -s 64 /NFS/MaxVolumes # NTP time config - NOT WORKING!! echo "Configuring NTP" echo restrict default kod nomodify notrap noquerynopeer > /etc/ntp.conf echo restrict 127.0.0.1 >> /etc/ntp.conf echo server 0.vmware.pool.ntp.org >> /etc/ntp.conf echo server 2.vmware.pool.net.org >> /etc/ntp.conf echo driftfile /var/lib/ntp/drift >> /etc/ntp.conf /sbin/chkconfig --level 345 ntpd on /etc/init.d/ntpd stop /etc/init.d/ntpd start #enable SSH TechSupportMode - shouldn't use this, was just a test vim-cmd hostsvc/enable_remote_tsm vim-cmd hostsvc/start_remote_tsm vim-cmd hostsvc/net/refresh #grep ^admins: /etc/group > /dev/null || groupadd admins #useradd -g admins -c LocalESXAccount LocalESX #echo mypassword | passwd --stdin LocalESX ########### cut here ###################
источник: http://lib.ru/unixhelp/vmware.txt_with-big-pictures.html
{jcomments on}
|