Различные GUI-интерфейсы управления и мониторинга хост-сервера и виртуальных серверов это конечно здорово. Но что делать если для решения возникшей проблемы возможностей этих инструментов недостадочно? Правильно, классический подход в юниксе — командная строка. В статье рассмотерны некоторые команды ESXI, которые могут быть полезны администратору
Команды Linux shell
Как-никак ESXI — это все-таки линукс, хоть и сильно переделаный. Значит у администратора не должно возникнуть затруднений
find/cat/grep – Поиск файлов или текста в файле. Команда find ищет конкретный файл или файлы по шаблону. cat отображает содержимое файла, в то время как grep используется в качестве фильтра для поиска нужного текста в пределах одного или группы файлов
Список всех delta — дисков ВМ
find /path/to/vm/folder –iname "*delta*"
Вывод записей содержащих слово error из лога hostd.log
cat hostd.log | grep error
head/tail – Просмотре содержимого файла. В то время как команда cat подходит для отображения всего содержимого файла, head и tail могу показать содержимое в начале или в конце файла, пропуская середину. tail -f полезнен во время поиска неисправностей, отображает записи в лог онлайн
tail -f /var/log/vmkernel.log
less – отображает сождержимое файлов постранично. Позволяет прокручивать вывод вверх, вниз
cat /var/log/vpxa.log | less
df/vdf – Информация о свободном и занятом дисковом пространстве
ps/kill – Работа с процессами внутри ESXi хоста. ps отображает запущеные процессы включая идентификатор каждого процесса. kill убивает/завершает процесс по номеру идентификатора
vi – Это классический консольный редактор файлов. Работает в двух режимах: командном и редактирования. Еще раз напоминаю о необходимости изучить vi
Команды ESXI
Абсолютно специфические команды, которые не встретить ни в одном линуксе
services.sh – Выполняет stop, start, restart сервисов ESXI хоста
services.sh restart
/etc/init.d – В этой папке находятся скрипты запуска, остановки всех сервисов
Перегрузка vCenter Agent на хосте
/etc/init.d/vpxa restart
Просмотр всех запущеных сервисов
cat /etc/chkconfig.db
vmkping – Напоминает классический ping, однако дает возможность отсылки ICMP — пакетов через определенный интерфейс
Пингуем хост 10.10.10.1 через интерфейс vmk1
vmkping –I vmk1 10.10.10.1
vmkfstools – Управляет VMFS разделами. Позволяет создавать, клонировать, расширять, переименовывать, удалять VMDK файлы
Клонируем test.vmdk в testclone.vmdk
vmkfstools –i test.vmdk testclone.vmdk
esxtop – Аналог top из мира юникс
vscsiStats – Отображает информацию о дисковом I/O виртуальных машин
vim-cmd – Включает в себя внутренние команды, которые позволяют конечному пользователю работать с vSphere API
dcui – VMware Direct User Console Interface (DCUI) интерфейс, который Вы видите на мониторе после загрузки ESXI хоста. Представляет крайне ограниченные возможности: настройка сети, смена пароля пользователя root, включить/отключить доступ по ssh, перегрузить все сервисы хост-сервера (то что делает services.sh restart) и т.д.
Вникаем в esxcli
Возможности esxcli настолько велики, что невозможно классифицировать ее как одну команду. Она позволяет контролировать практически все, что предлагает ESXi. Ниже перечислены некоторые (но, конечно, не все) из часто используемых
esxcli hardware – Отображает информацию о железе ESXI хоста
Список CPU хост-сервера
esxcli hardware cpu list
Кратко об опертивной памяти хост-сервера
esxcli hardware memory get
esxcli network – Работает со всем, что касается Vsphere сети, в том числе виртуальными коммутаторами, сетевыми интерфейсами VMkernel, фаерволом и физическими сетевоми интерфейсами (NIC)
ВМ и сетевые порты
esxcli network vm list
Статистика по интерфейсу vmnic0
esxcli network nic stats get -n vmnic0
esxcli software – Используется для установки, апдейта удаления ПО хост-сервера
Список установленного ПО
esxcli software vib list
Установка из zip-архива
esxcli software vib install -d /tmp/vmware-esx-provider-lsiprovider.zip
Установка vib-пакета
esxcli software vib install -v /tmp/vmware-esx-storcli-1.20.15.vib
Обновление установленного пакета
esxcli software vib update -v /tmp/ESXi500-201111001.vib
Удаление пакета
esxcli software vib remove -n lsiprovider
esxcli storage – Предоставляет ряд команд для работы с дисковым хринилищем
Отображает данные о дисковом хранилище
esxcli storage core device list
esxcli system – Эти команды предоставляют расширенные возможности. Например
Вводим хост-сервер в режим обслуживания
esxcli system maintenanceMode set –enabled yes/no
Конфигурирование и информация syslog
esxcli system syslog
esxcli vm – Команды управления ВМ
Список запущеных ВМ
esxcli vm process list
Выключение, либо принудительное выключение ВМ
esxcli vm process kill
esxcli esxcli – Выводит полный список команд esxcli
esxcli esxcli command list
Конечно, приведенные выше команды и примеры это не все, что ESXi может предложить. Устранение проблем связанных с использованием ESXi при помощи командной строки может быть непростой задачей, но имея твердое понимание этих команд, Вы сможете решить практически любой вопрос

- Системный администратор с 2000 года
- Участник Freelancehunt, Хабр Q&A, cyberforum
- Кейсы