Конец VMware vSphere Management Assistant - пользуйтесь vCLI и другими интерфейсами.
Вслед за снятием с продаж продукта VMware vSphere Data Protection, компания VMware напомнила нам о том, что вскоре прекратится выпуск продукта VMware vSphere Management Assistant (vMA), который пока еще доступен для скачивания (версия 6.5, которая вышла вместе с vSphere 6.5). Об этом было объявлено еще в мае прошлого года при выпуске обновления vSphere 6.0:
Напомним, что этот продукт позволяет централизованно управлять хост-серверами VMware ESXi за счет автоматизации операций системных администраторов. По-сути, vSphere Management Assistant представляет собой "вынесенную" за пределы серверов ESXi сервисную консоль (консольную ОС), которая для виртуальной инфраструктуры присутствует в единственном экземпляре, но централизованно исполняет сценарии на хостах, используя различные интерфейсы VMware vSphere.
Теперь вместо vMA предлагается использовать интерфейсы vCLI и PowerCLI. В целом, этот подход выглядит достаточно логичным - большинство функций удаленного управления платформой взяли на себя эти фреймворки, а сами ESXi и vCenter отлично управляются через стандартные средства и API.
Сама VMware предлагает использовать интерфейс vSphere Command Line Interface (vCLI) в качестве альтернативы vMA. Между тем, она заявляет о том, что команды esxcfg- и vicfg- также будут выведены из эксплуатации (deprecated). Поэтому администраторам vSphere стоит проверить, не используются ли эти две команды в старых скриптах для управления виртуальной инфраструктурой (подробнее о заменах для этих команд - тут).
Вот какие еще предлагаются альтернативы интерфейсу vCLI и устаревшему модулю vMA:
- Фреймворк PowerCLI и средство кроссплатформенного использования PowerCLI Core.
- Docker Container с VMware Tools внутри и интегрированными в него нужными административными интерфейсами. Эта штука называется vmware-utils и содержит в себе множество зашитых интерфейсов, а именно:
- vSphere CLI 6.5
- PowerCLI Core 1.0
- vSphere Management SDK 6.5
- vSphere SDK for Perl 6.5
- vSphere SDK for Ruby (rbvmomi)
- vSphere SDK for Python (pyvmomi)
- vSphere Automation SDK for Ruby 6.5
- vSphere Automation SDK for Python 6.5
- vSphere Automation SDK for Perl 6.5
- vSphere Automation SDK for Java 6.5
- VSAN Management SDK for Ruby 6.5
- VSAN Management SDK for Python 6.5
- VSAN Management SDK for Java 6.5
- VSAN Management SDK for Perl 6.5
- Virtual Disk Development Kit (VDDK) 6.5
- OVFTool 4.2
- PowerCLI Community Repository
- PowerCLI Core Docker Container Samples
- William Lam's vGhetto Script Repository
- Pyvmomi Community Samples
- Docker Client v1.12.3
- Docker Compose v1.8.1
Подробнее о vmware-utils можно почитать вот тут.
Ну а пока VMware vSphere Management Assistant все еще доступен для скачивания по этой ссылке. Таги: VMware, vSphere, vMA, vCLI, PowerCLI, Update
Как создать задачу крон (планировщика) в VMware vSphere Management Assistant (vMA).
Как знают многие администраторы VMware vSphere, есть такое удобное средство vSphere Management Assistant (vMA), которое представляет собой виртуальный модуль (готовую виртуальную машину), средствами которой очень удобно управлять скриптами, исполняемыми на нескольких хостах VMware ESXi через интерфейс ESXCLI или Perl.
При выполнении различных сценариев на Linux-машине vMA иногда требуется создать задачу планировщика (крон-таску), чтобы запустить скрипт в назначенное время. Ниже мы опишем, как это нужно делать.
1. Чтобы запускать скрипты без аутентификации, нужно добавить хосты ESXi в vi-fastpass. Вы можете добавить только хосты ESXi, либо хост vCenter Server (или всех их). Используйте команду vifp addserver в интерактивном режиме (конфигурация сохраняется при перезагрузках):
vi-admin@vma:~> vifp addserver esx1.virten.local --username root --password 'vmware'
vi-admin@vma:~> vifp addserver esx2.virten.local --username root --password 'vmware'
vi-admin@vma:~> vifp addserver esx3.virten.local --username root --password 'vmware'
vi-admin@vma:~> vifp addserver vcsa.virten.local --username root --password 'vmware'
Используйте команду vifp listservers для того, чтобы посмотреть список сконфигурированных хостов для быстрого доступа:
vi-admin@vma:~> vifp listservers
esx1.virten.local ESXi
esx2.virten.local ESXi
esx3.virten.local ESXi
vcsa.virten.local vCenter
2. Используйте механизм vi-fastpass внутри скрипта. Это делается вот так (сценарий размещайте, где написано #do something):
#!/usr/bin/perl -w
use VMware::VIRuntime;
use VMware::VmaTargetLib;
my $service_content;
my @targets = VmaTargetLib::enumerate_targets();
foreach my $target(@targets) {
$target->login();
$service_content = Vim::get_service_content();
#do something
$target->logout();
}
Также примеры скриптов можно найти в папке /opt/vmware/vma/samples/perl:
vi-admin@vma:~> ls -l /opt/vmware/vma/samples/perl
total 24
-r--r--r-- 1 root root 2660 Jul 15 2013 README
-r-xr-xr-x 1 root root 9023 Jul 15 2013 bulkAddServers.pl
-r-xr-xr-x 1 root root 1282 Jul 15 2013 listTargets.pl
-r-xr-xr-x 1 root root 2452 Jul 15 2013 mcli.pl
Для примера также посмотрите скрипты отсюда (можете на них и поэкспериментировать, например, с esxcfg-perf.pl).
3. Создаем таску в кроне (cron job).
Синтаксис команды прост:
* * * * * command
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
Открываем крон в режиме редактирования:
vi-admin@vma:~> crontab -e
Нажмите <i>, чтобы перейти в режим вставки в crontab, после чего добавьте нужный путь к библиотеке и команду:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/vmware/vma/lib64:/opt/vmware/vma/lib
*/5 * * * * /home/vi-admin/scripts/esxi-perf.pl
Затем выходим из режима редактирования, нажав <ESC> : w q <ENTER>
Если при выполнении команды вы получаете вот такую ошибку:
vi-admin@vma:~> crontab -e
-bash: /usr/bin/crontab: Permission denied
То вам нужно предварительно выполнить sudo (юзер vi-admin в vMA 5.5 не имеет пермиссий на crontab):
vi-admin@vma:~> ll /usr/bin/crontab
-rwsr-x--- 1 root trusted 40432 Apr 2 2013 /usr/bin/crontab
vi-admin@vma:~> sudo chmod +rx /usr/bin/crontab
vi-admin@vma:~> ll /usr/bin/crontab
-rwsr-xr-x 1 root trusted 40432 Apr 2 2013 /usr/bin/crontab
4. Если крон-таска упадет, то вывод ошибок будет направляться сюда:
/var/mail/vi-admin
Вывод ошибки может быть таким:
Can’t load ‘/usr/lib/perl5/site_perl/5.10.0/libvmatargetlib_perl.so’ for module vmatargetlib_perl: libtypes.so: cannot open shared object file: No such file or directory at /usr/lib/perl5/5.10.0/x86_64-linux-thread-multi/DynaLoader.pm line 203.
at /usr/lib/perl5/site_perl/5.10.0/VMware/VmaTargetLib.pm line 10
Compilation failed in require at /usr/lib/perl5/site_perl/5.10.0/VMware/VIFPLib.pm line 9.
BEGIN failed–compilation aborted at /usr/lib/perl5/site_perl/5.10.0/VMware/VIFPLib.pm line 9.
Compilation failed in require at /home/vi-admin/graphite/esxi-perf-graphite.pl line 5.
BEGIN failed–compilation aborted at /home/vi-admin/graphite/esxi-perf-graphite.pl line 5.
Это значит вы некорректно добавили путь к библиотеке (/opt/vmware/vma/lib64:/opt/vmware/vma/lib ).
Если же вы получаете вот такую ошибку:
“Server version unavailable at ‘https://[host]:443/sdk/vimService.wsdl’ at /usr/lib/perl5/5.10.0/VMware/VICommon.pm line 545.”
Это из-за непрошедшей SSL-аутентификации. Если у вас нет валидных SSL-сертификатов, отключите авторизацию через SSL в вашем скрипте:
# Disable SSL Verification
export PERL_LWP_SSL_VERIFY_HOSTNAME=0
Таги: VMware, vMA, vSphere, Management, VMachines, ESXi
Как сбросить пароль в VMware vSphere 5 Management Assistant (vMA).
Достаточно давно мы уже описывали средство централизованного администрирования хост-серверами VMware vSphere - vSphere Management Assistant (vMA). По сути, vMA - это вынесенная "сервисная консоль" за пределы хост-серверов ESXi в отдельный виртуальный модуль (Virtual Appliance), с которого удобно выполнять консольные команды RCLI (например, мониторинга - resxtop), а также хранить и запускать различные скрипты. Сегодня мы расскажем о том, как восстновить (сбросить) пароль на виртуальном модуле vMA.
Итак, загружаем VMware vMA 5, устанавливаем выбор на пункте меню "SUSE Linux Enterprise Server 11 SP1 for VMware" и нажимаем кнопку <e>:
В появившемся далее экране выбираем строчку с "kernel /vmlinuz" и снова нажимаем <e>:
В следующем экране, в строке ввода, вбиваем init=/bin/bash:
После нажатия <Enter>, вы вернетесь в педыдущее окно, где нужно нажать <b> для загрузки vMA. После загрузки вводим команду, которой и устанавливаем новый пароль:
# passwd vi-admin
Пароль установить непросто. Он должен соответствовать следующим политикам:
- Не менее 8 символовEight characters
- Хотя бы один символ в верхнем регистре
- Хотя бы один - в нижнем
- Хотя бы одна цифра
- Хотя бы один спецсимвол (#, $ и т.п.)
Понятно, что такой пароль никому не удобен. Поменять его можно командой:
# sudo passwd vi-admin
vMA будет жаловаться, однако пароль сменит:
Таги: VMware, vSphere, vMA, ESXi
Как использовать возможности VMware vSphere Management Assistant (vMA).
Компания VMware предоставляет пользователям бесплатное средство VMware vSphere Management Assistant (vMA), которое позволяет централизованно управлять хост-серверами VMware ESX за счет автоматизации операций системных администраторов. По-сути, vSphere Management Assistant представляет собой "вынесенную" за пределы серверов ESX сервисную консоль (консольную ОС), которая для виртуальной инфраструктуры присутствует в единственном экземпляре, но централизованно исполняет сценарии на хостах... Таги: VMware, vSphere, Management Assistant, vMA, ESX, Обучение, VIMA, SDK, CLI
Команды удаленной командной строки (RCLI) и их аналоги в Service Console (CLI) в VMware vSphere / ESX 4.
Как известно, вместе с сервером виртуализации VMware ESX в составе пакета VMware vSphere идет консольная операционная система (Service Console), с помощью которой из интерфейса командной строки (Command Line Interface, CLI) можно управлять сервером виртуализации. Для бесплатного продукта VMware ESXi такой ОС не предусмотрено, поэтому им можно управлять удаленно, через, соответственно, удаленный интерфейс командной строки. Этот интерфейс называется RCLI (Remote Command Line Interface) и доступен как в виде пакета для Windows и Linux, так и в виде готовой виртуальной машины vSphere Management Assistant (vMA).
В приведенной ниже таблице указан список команд CLI для сервера VMware ESX, а также соответствующий им список команд RCLI для управления сервером VMware ESXi. Для ESX обычно импользуются команды вида esxcfg-***, для ESXi эти команды выглядят как vicfg-***. В колонке "Команда RCLI" приведены команды, которые можно выполнять из vMA для vSphere или RCLI, в колонках "Доступность в ESXi 4" и "Доступность в ESX 4" сказано, может ли команда выполняться на сервере локально. В колонке "Доступность через VC 4" сказано, может ли команда выполняться через GUI на vCenter посредством vSphere Client. Столбец "Аналог в CLI" говорит о том, какая команда используется в Service Console для выполнения данной операции.
Итак, команды CLI и RCLI для управления VMware vSphere в части сервера ESX:
Номер
| Команда RCLI (ESXi)
| Доступность в ESXi 4
| Доступность в ESX 4
| Доступность через VC 4
| Аналог в CLI (ESX)
| Описание (для чего используется)
|
1 |
esxcli |
да |
да |
нет |
esxcli |
Управление модулями pluggable storage architecture (PSA) & native multipathing (NMP) - доступ по нескольким путям. |
2 |
resxtop |
да |
да |
да |
esxtop |
Производит мониторинг системных ресурсов в реальном времени в интерактивном или пакетном режимах. Поддерживается только для Linux. |
3 |
svmotion |
нет |
нет |
да |
|
Динамически переносит работающую виртуальную машину на другое хранилище за счет технологии Storage VMotion. С ключом --interactive работает в интерактивном режиме. |
4 |
vicfg-advcfg |
да |
да |
да |
esxcfg-advcfg |
Дополнительное управление CIM-провайдерами (ESXi) или расширенными настройками ESX / ESXi. Использовать нужно с осторожностью. |
5 |
vicfg-cfgbackup |
да |
нет |
нет |
esxcfg-cfgbackup |
Создает резервную копию ESXi и восстанавливает ее. |
6 |
vicfg-dns |
да |
да |
да |
esxcfg-dns |
Управляет конфигурацией DNS на сервере ESX / ESXi. |
7 |
vicfg-dumppart |
да |
да |
да |
esxcfg-dumppart |
Управляет диагностическими разделами. |
8 |
vicfg-iscsi |
да |
да |
да |
esxcfg-hwiscsi и esxcfg-swiscsi |
Управляет хранилищем iSCSI (software и hardware). |
9 |
vicfg-module |
да |
да |
да |
esxcfg-module |
Управляет модулями ядра VMkernel. |
10 |
vicfg-mpath |
да |
да |
да |
esxcfg-mpath |
Используется для взаимодействия с дисковыми массивами и вывода информации о путях. |
11 |
vicfg-mpath35 |
нет |
нет |
нет |
|
Используется для взаимодействия с дисковыми массивами хостов ESX 3.5. |
12 |
vicfg-nas |
да |
да |
да |
esxcfg-nas |
Управляет доступом к NFS / NAS хранилищам. |
13 |
vicfg-nics |
да |
да |
да |
esxcfg-nics |
Управляет физическими интерфейсами хоста ESX / ESXi. |
14 |
vicfg-ntp |
да |
да |
да |
esxcfg-ntp |
Настройки сервера времени по протоколу NTP. |
15 |
vicfg-rescan |
да |
да |
да |
esxcfg-rescan |
Сканирование массива и обнаружение новых LUN или томов VMFS. |
16 |
vicfg-route |
да |
да |
да |
esxcfg-route |
Управляет маршрутизацией на хосте ESX / ESXi. |
17 |
vicfg-scsidevs |
да |
да |
да |
esxcfg-scsidevs |
Выводит информацию о доступных устройствах и LUN. Замена команды esxcfg-vmhbadevs в ESX 3.5. |
18 |
vicfg-snmp |
да |
да |
нет |
esxcfg-snmp |
Управляет агентом SNMP на хосте ESX / ESXi. |
19 |
vicfg-syslog |
да |
нет |
да |
esxcfg-syslog |
Для хостов ESXi можно настроить удаленный Syslog-сервер и порт для соединения. |
20 |
vicfg-user |
да |
да |
нет |
|
Управляет списком локальных пользователей ESXi. |
21 |
vicfg-vmknic |
да |
да |
да |
esxcfg-vmknic |
Управляет виртуальными адаптерами хоста ESX / ESXi (VMkernel NICs). |
22 |
vicfg-volume |
да |
да |
да |
esxcfg-volume |
Переподписка (resignaturing) томов VMFS, монтирование томов VMFS опознающихся как снапшоты (snapshots). |
23 |
vicfg-vswitch |
да |
да |
да |
esxcfg-vswitch |
Добавление, удаление и изменение настроек виртуальных коммутаторов (vSwitch) |
24 |
vifs |
да |
да |
нет |
|
Операции с файлами (получение и Upload) |
25 |
vihostupdate |
да |
да |
нет |
|
Управляет обновлениями на хосте ESXi. |
26 |
vihostupdate35 |
нет |
нет |
нет |
|
Управляет обновлениями на хосте ESXi 3.5. |
27 |
vmkfstools |
да |
да |
нет |
vmkfstools |
Управляет виртуальными дисками, файловыми системами, томами и устройствами. |
28 |
vmware-cmd |
да |
да |
да |
vmware-cmd |
Управление состоянием ВМ удаленно (включение, выключение, снапшоты) |
Таги: VMware, vSphere, CLI, RCLI, vMA, ESX, vCenter, ESXi
Путеводитель по интерфейсам администрирования, управления и разработки VMware vSphere.
С VMware vSphere работают не только системные администраторы посредством vSphere Client в небольших окружениях, но и Enterprise-администраторы в виртуальных окружениях из сотен виртуальных машин, где без средств автоматизации не обойтись. Кроме того, разработчики программного обеспечения для VMware пишут свои командные сценарии и плагины, которые облегчают жизнь системным администраторам. Сегодня мы поговорим о том, какие интерфейсы предлагает нам VMware для автоматизации операций с такими продуктами, как VMware vSphere, Workstation, Server и другими. Таги: VMware, vSphere, ESX, vMA, PowerCLI, PowerShell, Studio, Workstation, Server, Player
|