= заметки о 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 S", 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 S", 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 -1 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"`