= заметки о `vmware` [[PageOutline(2-3,содержание)]] == обновление esxi 5 и выше === онлайн просмотр обновлений [http://www.vmware.com/patchmgr/download.portal тут], инструкция по офлайн обновлению [http://kb.vmware.com/kb/2008939 тут]. разрешаем httpClient на гипервизоре: {{{#!bash esxcli network firewall ruleset set -e true -r httpClient }}} [[br]] смотрим что появилось новенького: {{{#!bash esxcli software sources profile list \ -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml }}} [[br]] после выбора обновления запускаем установку: {{{#!bash esxcli software profile update \ -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml \ -p ESXi-5.5.0-20150402001-standard }}} [[br]] после обновления ребут обязателен: {{{#!bash reboot -f }}} [[br]] запрещаем httpClient на гипервизоре, ибо нефиг: {{{#!bash esxcli network firewall ruleset set -e false -r httpClient }}} === оффлайн {{{#!bash esxcli software vib update -d /vmfs/volumes/d91/ESXi550-201512001.zip }}} [[br]] == обмануть vsan о ssd {{{#!bash disk2ssd=naa.618e7283727cafd01d42561a0fb1680a export disk2ssd esxcli storage nmp satp rule add --satp=VMW_SATP_LOCAL --device ${disk2ssd} --option "enable_local enable_ssd" esxcli storage core claiming unclaim --type=device --device ${disk2ssd} esxcli storage core claimrule load esxcli storage core claimrule run esxcli storage core claiming reclaim -d ${disk2ssd} }}} проверка результата: {{{#!bash esxcli storage core device list | grep -i -E "^naa|ssd|local" }}} [[br]] == графики vsphere после отключения ipv6 вместо отображения данных рисуют ошибку. лечится [http://kb.vmware.com/kb/2118223 так]. == vcsa 6.0 dns/ntp: {{{#!bash appliancesh # рутовый пароль dns.hostname.get dns.domains.list dns.servers.get ntp.get }}} [[br]] == добровольный выход esxi из vsan {{{#!bash esxcli vsan storage list esxcli vsan storage automode set --enabled false esxcli vsan storage remove -s [SSD-DEVICE-ID] esxcli vsan cluster leave esxcli vsan cluster get }}} [http://kb.vmware.com/kb/2072347 подробности] [[br]] == сменить ip-адрес у vcsa из консоли {{{#!bash /opt/vmware/share/vami/vami_config_net }}} [[br]] == таймауты vcsa * [http://kb.vmware.com/kb/1004790 системные операции]; * [http://kb.vmware.com/kb/2040626 для веб-морды]; * shell-таймаут: удалить `/etc/profile.d/tmout.sh` или закомментарить его содержимое; [[br]] == слабый пароль пользователю esxi pam запрещает давать локальным пользователям esxi слишком простые пароли. чтобы разрешить (временно, до перезагрузки) задание слабого пароля: в `/etc/pam.d/system-auth` в строчке `password requisite /lib/security/$ISA/pam_passwdqc.so retry=3 min=8,8,8,7,6` заменить на `min=6,6,6,0,0` [[br]] == отключение hotplug для сетевушек и дисков чтобы гостевая венда не предлагала извлечь сетевые карты и диски внутри виртуалки, [http://kb.vmware.com/kb/1012225 нужно добавить] в .vmx строчку: {{{#!nginx devices.hotplug = "false" }}} весьма неприятно, что при экспорте/импорте виртуальной машины через файл эта настройка исчезнет. [[br]] == получение списка алертов с почтовыми уведомлениями например, для копирования в новый или другой vcenter. {{{#!bash Connect-VIServer Get-AlarmDefinition | Select Name,@{ n = "Action"; e = { $_ | Get-AlarmAction | Where { $_.ActionType -eq "SendEmail" } } } | Where-Object { $_.Action -match "SendEmail" } }}} полезные: {{{ Health status changed alarm Host error Host hardware fan status Host hardware power status Host hardware system board status Host hardware temperature status Host hardware voltage host health Host IPMI System Event Log status Host memory usage Migration error vSphere HA virtual machine failover failed }}} [[br]] == snmp в esxi v1,2c: {{{#!bash esxcli system snmp set --communities public esxcli system snmp set --enable true esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 10.0.0.0/8 esxcli network firewall ruleset set --ruleset-id snmp --enabled true /etc/init.d/snmpd restart }}} v3: {{{#!bash esxcli system snmp set --authentication MD5 esxcli system snmp set --privacy AES128 esxcli system snmp hash -r -A password1 -X password2 esxcli system snmp set --users cacti/hash_from_prev_command1/hash_from_prev_command2/priv esxcli system snmp set --enable true snmpwalk -v3 -u cacti -l AuthPriv -a MD5 -A password1 -x AES -X password2 esxi.host }}} [[br]] == в esxi 5.1: `Found extra CIM-XML Indication Subscription` после применения host profile * host profile → detach (сначала можно попробовать без этого); * `esxcli system snmp set --enable false`; * host profile → attach, remediate; [[br]] == сохранение и восстановление конфигурации esxi 5 и выше {{{#!bash vim-cmd hostsvc/firmware/sync_config vim-cmd hostsvc/firmware/backup_config vim-cmd hostsvc/maintenance_mode_enter vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz }}} [[br]] == `permission denied` при попытке запуска `vmware remote console` у пользователя с ограниченным доступом нужно добавить пользователя в глобальную группу и этой группе навесить роль с единственным разрешением `virtual machine` -> `interaction` -> `console interaction` в каждый из esxi узлов. либо, если лениво, глобально на весь кластер с галочкой `propagate to children`. [[br]] == нет `/dev/disk/by-id/wwn-*` внутри виртуалки c линуксом добавить в advanced параметры виртуальной машины `disk.EnableUUID` = `TRUE` [[br]] == заплатка для виртуалок на ненадёжном сторедже для el6 `/etc/udev/rules.d/99-vmware-scsi-udev.rules`: {{{#!bash # # VMware SCSI devices Timeout adjustment # # Modify the timeout value for VMware SCSI devices so that # in the event of a failover, we don't time out. # See Bug 271286 for more information. ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware ", ATTRS{model}=="Virtual disk*", RUN+="/bin/sh -c 'echo 777 >/sys$DEVPATH/timeout'" ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware, ", ATTRS{model}=="VMware Virtual*", RUN+="/bin/sh -c 'echo 777 >/sys$DEVPATH/timeout'" }}} для el7 `/usr/lib/udev/rules.d/99-vmware-scsi-udev.rules`: {{{#!bash # # VMware SCSI devices Timeout adjustment # # Modify the timeout value for VMware SCSI devices so that # in the event of a failover, we don't time out. # See Bug 271286 for more information. ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*" , ATTRS{model}=="Virtual disk*", RUN+="/bin/sh -c 'echo 777 >/sys$DEVPATH/device/timeout'" ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*" , ATTRS{model}=="VMware Virtual*", RUN+="/bin/sh -c 'echo 777 >/sys$DEVPATH/device/timeout'" }}} и не забыть `udevadm trigger`. [[br]] == ошибка `requirement cannot be satisfied within the ImageProfile` вместо обновления [https://communities.vmware.com/thread/471204 нужно] вытащить нужный vib и обновления, установить его через `esxcli software vib install -v /tmp/xxxxxxxxxxx.vib` и после этого повторить обновление. [[br]] == последовательность интерфейсов в `esxi` иногда в `esxi` интерфейсы располагаются не в той последовательности, которую ожидают профили хостов. это можно поправить в `/etc/vmware/esx.conf`. на текущий момент (`esxi 5.5u3`) править нужно в двух местах: 1. `/vmkdevmgr/pci/s00000004.00/alias = "vmnic0"`; 1. `/device/000:138:00.0/vmkname = "vmnic0"`; [[br]] == изменение картинки на вход в `vcsa` `/usr/lib/vmware-sso/vmware-sts/webapps/websso/resources/css`: {{{#!diff diff -u login.css.orig login.css --- login.css.orig 2016-02-12 02:33:12.000000000 +0000 +++ login.css 2017-01-04 06:56:02.000000000 +0000 @@ -18,7 +18,8 @@ background: -ms-linear-gradient(top, #3a8dc8 0%,#183a62 100%); /* IE10+ */ background: linear-gradient(to bottom, #3a8dc8 0%,#183a62 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a8dc8', endColorstr='#183a62',GradientType=0 ); /* IE6-9 */ - + background-image: url(../../resources/img/ghost.gif); + background-size: cover; background-repeat:no-repeat; margin: 0; font-size:12px; }}} `/usr/lib/vmware-sso/vmware-sts/webapps/websso/WEB-INF/views`: {{{#!diff diff -u unpentry.jsp.orig unpentry.jsp --- unpentry.jsp.orig 2017-01-04 07:00:51.000000000 +0000 +++ unpentry.jsp 2017-01-04 07:00:55.000000000 +0000 @@ -80,7 +80,7 @@ //var _cspId = createCspPluginObject(); if (isVCLogin()) { - document.write(""); +// document.write(""); document.write(""); } }}} `/usr/lib/vmware-sso/vmware-sts/webapps/websso/resources/js`: {{{#!diff --- websso.js.orig Fri Feb 12 07:33:12 2016 +++ websso.js Mon May 30 14:07:38 2016 @@ -70,7 +70,7 @@ var smartcardIDEle = document.getElementById("smartcardID"); smartcardIDEle.parentNode.removeChild(smartcardIDEle); // Disable login button on page load unless smartcard authn is on - $('#submit').prop('disabled',true); + $('#submit').prop('disabled', false); } //Remove windows session or smartcard authn checkbox if the corresponding authn type was not turned on @@ -342,7 +342,7 @@ }; var enableLoginButton = function enableLoginButton() { - +/* var userEle = document.getElementById('username'); var sspiEle = document.getElementById('sspiCheckbox'); var smartcardEle = document.getElementById('smartcardCheckbox'); @@ -352,7 +352,7 @@ $('#submit').prop('disabled', false); } else { $('#submit').prop('disabled', true); - } + }*/ }; }}} [[br]] == отключение протухания рутового пароля в vcsa без доступа в `https://appliance:5480` {{{#!bash chage -l root chage -M 99999 root chage -l root }}} [[br]] == обновление vcsa 6.0 * скачать [https://my.vmware.com/group/vmware/patch обновление] вида `*-patch-FP.iso`; * примонтировать к виртуалке; * запустить `/bin/appliancesh`, если запущен обычный шел; * либо сразу `software-packages install --iso --acceptEulas`; * либо: {{{#!bash software-packages stage --iso --acceptEulas software-packages list --staged software-packages install --staged }}} * `shutdown reboot -r "updated"`