-
1. Re: Как сделать пользователя для выключения ESXi?
RumataRus Jul 28, 2011 6:50 AM (in response to freddyb1)1 person found this helpfulПо использованию ИБП ничего не скажу, я сам использую другой способ.
freddyb1 wrote:
PS: А может кто-нибудь дать правильную ссылку на список ограничений бесплатного ESXi 4.1? Везде раскиданы куски инфы, то к одной версии ESXi, то к другой...
В частности,
1) хочу ставить ESXi 4.1 u1 на сервер с 2-мя 2-х ядерными процами Xeon5160. Все-ли ядра будут задействованы?
2) бесплатная версия гипервизора хоть каким-то образом обновляема, или нет? Ведь можно скачать bandle обновлений для ESXi 4.1 u1 build 348481, но можно ли эти обновления установить?
Вот ссылка Обзор VMware vSphere 4.1
В самом конце обзора - сравнение редакций.
Бесплатный ESXi 4.1 - это vSphere Hypervisor, соответственно те фичи, которых у него нет - это и есть ограничения.
Из этой таблицы следует, что задействовать все ядра своих Xeon5160 вы сможете.
Обновление vSphere Hypervisor возможно, процедура популярно с дальнейшими ссылками описана например в статье How to Patch free ESXi 4.1
-
2. Re: Как сделать пользователя для выключения ESXi?
EGarbuzov Jul 28, 2011 12:53 PM (in response to freddyb1)В VSphere client-e, выбрав мой хост, сделал:
1) в LocalUsers&Groups создал пользователя vikluchatel с паролем и добавил его в группу root.
2) В Permissions добавил пользователя vikluchatel и наделил правами администратора.
В окне создания пользователя не забыли поставить галочку “Grant shell access to this user”?
-
3. Re: Как сделать пользователя для выключения ESXi?
freddyb1 Jul 28, 2011 10:03 PM (in response to EGarbuzov)Галочки “Grant shell access to this user” там нет и в помине.
-
4. Re: Как сделать пользователя для выключения ESXi?
mayonnaise Jul 28, 2011 11:36 PM (in response to freddyb1)мне кажется проблема с доступом связана с тем, что изначально в консоль ESXi по ссш например можно зайти только под рутом. Если даже завести локального юзера через клиент на хосте и дать ему права админа, он не попадет на консоль. Надо сначала ему рками создать хомяк в /home и дать этому юзеру права на запись туда. А еще, на сколько помню, надо в файле /etc/passwd отредактировать для юзера строку, можно как у рута всё сделать.
-
5. Re: Как сделать пользователя для выключения ESXi?
EGarbuzov Jul 29, 2011 2:29 AM (in response to freddyb1)freddyb1 wrote:
Галочки “Grant shell access to this user” там нет и в помине.
Сорри, действительно теперь её там нет. Раньше была.
Тогда допилите это руками:
Необходимо поправить строчку с этом пользователем (например user4) в /etc/passwd
user4:x:504:0:Linux User,,,:/tmp:/bin/ash
Кроме того, необходимо добавить пользователя в /etc/security/access.conf
+:user4:ALL
Если настройки изчезнут после перезагрузки, выполните в конце дополнительно auto-backup.sh от рута.
-
6. Re: Как сделать пользователя для выключения ESXi?
freddyb1 Jul 29, 2011 2:55 AM (in response to EGarbuzov)Да, а, собственно, зачем мне нужен новый пользователь для выключения гипервизора, чем мне рут не подходит? Ведь этот новый пользователь должен обладать теми же правами, что и рут, тоже должен иметь админские права на гипервизор. А значит открытое указание его пароля в командном файле выключения гипервизора несёт такое же нарушение правил безопасности, что и указание пароля рута. Или я не прав?
P.S. Благодарю за указание на метод обновления, всё получилось. А у г-на Михеева в книге сказано, что esxupdate подходит только для ESX, не для ESXi, что оказалось неверно.
И сразу вопрос по обновлению: bundle обновления подойдёт для гипервизора, собранного специально для серверов HP?
-
7. Re: Как сделать пользователя для выключения ESXi?
EGarbuzov Jul 29, 2011 3:13 AM (in response to freddyb1)Ну, собственно, я вам написал как заставить работать тот сценарий, который вы сами выбрали
1) в LocalUsers&Groups создал пользователя vikluchatel с паролем и добавил его в группу root.
2) В Permissions добавил пользователя vikluchatel и наделил правами администратора.
Например, можно давать пользователю в Permission хоста не роль Administrator, специально созданную роль, умеющую только выключать хост.
С точки зрания прав этого пользователя в консоли, гуглите man по файлу access.conf и стандартные средства Linux, типа sudo.
-
8. Re: Как сделать пользователя для выключения ESXi?
freddyb1 Jul 29, 2011 4:09 AM (in response to EGarbuzov)Пользователю в Permission хоста кроме роли Administrator, можно давать только No access и Read-Only роли.
Все галки ниже пункта Assigned Role, где, видимо, и можно было-бы дать чётко определённые права, неактивны.
Это, наверное, ограничение , бесплатной версии.
Выходит, в бесплатной версии нет нормальной возможности завершать работу гипервизора от ИБП.
А может быть гипервизор и не надо корректно выключать, а достаточно выключить одни только ВМ?
Или в платной версии всё-таки есть специальные возможности для выключения от гипервизора от ИБП?
-
9. Re: Как сделать пользователя для выключения ESXi?
RumataRus Jul 29, 2011 4:35 AM (in response to freddyb1)freddyb1 wrote:
А может быть гипервизор и не надо корректно выключать, а достаточно выключить одни только ВМ?
Или в платной версии всё-таки есть специальные возможности для выключения от гипервизора от ИБП?
Выключать корректно надо и хост в том числе.
Другие возможности есть, например я использую решение ghettoHostShutdown41.pl и это не единственный вариант.
-
10. Re: Как сделать пользователя для выключения ESXi?
EGarbuzov Jul 29, 2011 4:50 AM (in response to freddyb1)freddyb1 wrote:
Пользователю в Permission хоста кроме роли Administrator, можно давать только No access и Read-Only роли.
Все галки ниже пункта Assigned Role, где, видимо, и можно было-бы дать чётко определённые права, неактивны.
Это, наверное, ограничение , бесплатной версии.
Нет, ролевая модель для разных лицензий не отличается. Administrator, Read-Only и No Access -- это три преднастроенные роли.
В клиенте в верхней строке выйдете на уровень Home и кликните по пиктограмме Roles. Далее вверху кнопка Add Role.
К сожалению, я не знаю всеобъемлющего документа по всем разрешениям в мастере создания роли, но разрешение несложных действий там должно быть более менее интуитивно понятно.
После того, как создатите кастомную роль, она станет доступна для выбора за закладке Permission.
-
Roles_in_ESXi_free.png 9.2 K
-
-
11. Re: Как сделать пользователя для выключения ESXi?
EGarbuzov Jul 29, 2011 5:00 AM (in response to RumataRus)vRumata wrote:
Выключать корректно надо и хост в том числе.
Другие возможности есть, например я использую решение ghettoHostShutdown41.pl и это не единственный вариант.
Rumata, если я правильно понял, то для ESXi free этот вариант тоже не проходит, т.к. скрипт скармливается vMA?
-
12. Re: Как сделать пользователя для выключения ESXi?
RumataRus Jul 29, 2011 5:10 AM (in response to EGarbuzov)Для бесплатной версии вариант не подходит, верно, но коллега спрашивал: "Или в платной версии всё-таки есть...".
-
13. Re: Как сделать пользователя для выключения ESXi?
freddyb1 Jul 31, 2011 11:59 PM (in response to RumataRus)К сожалению, так и не получилось выключить хост.
Для пользователя vikluchatel отредактировал /etc/passwd:
vikluchatel:x:500:0:Linux User,,,:/tmp:/bin/ash
и /etc/security/access.conf ,так что теперь он может входить по ssh на хост.
Но при попытке запустить
plink -ssh -l vikluchatel -pw пароль IP_адрес_хоста poweroff
получаю сообщение poweroff: no
и хост не выключается
при этом специальной роли я пока не назначал для этого пользователя, дал роль Administrator да и ещё добавил его в группу root.
-
14. Re: Как сделать пользователя для выключения ESXi?
Alexander1974 Aug 1, 2011 6:12 AM (in response to freddyb1)Не помню, умеет ли бесплатная версия PowerCLI, но если умеет - попробуйте. В свое время я остановился как раз на этом варианте. Когда-то давно, когда у меня было всего 2 хоста, и вообще - всё было очень скромно аналогичную задачу решал следующим образом:
UPS (Ippon, кстати, - довольно глючная и корявая консоль у него была) коннектил к физической машине, при сбое питания он должен был запустить пакетник (все конечно от имени админа физической машины) следующего содержания:
C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe -PSConsoleFile "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -ExecutionPolicy Unrestricted -NoExit -File "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\MyScripts\Shutdown_VMs_ESXi.ps1"
а сам скрипт Shutdown_VMs_ESXi.ps1 был такой:
$MyName = "имя пользователя, имеющего права гасить хост, например, root"
$MyPass = "Пароль этого пользователя"
$MyHosts = ("IP хоста 1", "IP хоста 2") | foreach {connect-viserver -server $_ -user $MyName -password $MyPass}
Get-VM | Where-Object {$_.PowerState -eq "PoweredOn" -and $_.Guest.State -eq "Running"} | Foreach-Object { Start-Sleep -Seconds 10
Suspend-VM -VM $_ -RunAsync -Confirm:$false}
$waittime = 480
$Time = 0
do { Start-Sleep -Seconds 1
$Time = $Time + 1
$timeleft = $waittime - $Time
$numvms = (Get-VM | Where-Object { $_.PowerState -eq "PoweredOn" }).Count
Write "Ожидаем завершения работы $numvms гостевых ОС или истечения $timeleft сек."
} until ((@(Get-VM | Where-Object { $_.PowerState -eq "poweredOn" }).Count) -eq 0 -or $Time -ge $waittime)
Get-VM | Where-Object {$_.PowerState -eq "PoweredOn"} | Stop-VM -RunAsync -Confirm:$false
Start-Sleep -Seconds 180
Get-VMHost | ForEach-Object {Get-View $_.ID} | Foreach {$_.ShutdownHost_Task($True)}Коряво, конечно - грехи молодости , но тем не менее - все это успешно работало, и даже несколько раз спасало от преждевременной кончины мои первые ВМки