Назад | Перейти на главную страницу

Как правильно завершить работу Linux VMware Server Host

В нашей лаборатории есть сервер под управлением Ubuntu Linux 8.04.4 x64 с VMware Server 2.1, на котором размещены 4 виртуальные машины.

У меня серьезная озабоченность по поводу выключения хост-сервера. В основном, как обеспечить безопасное завершение работы гостевых виртуальных машин?

В консоли веб-интерфейса VMware я включил:

На всех виртуальных машинах установлены и правильно работают инструменты VMware. Все виртуальные машины перемещаются вверх в раздел «Указанный порядок» в «Порядке запуска», поэтому при повторном включении сервера все эти виртуальные машины должны снова запуститься в указанном порядке.

Когда я хотел выключить сервер, я использовал shutdown -h now команда. Основываясь на настройках, которые я ввел выше, я ожидал выключения через 4 минуты, так как есть возможность отложить выключение каждой виртуальной машины на 60 секунд. Однако это не что произошло. Вместо этого сервер отключится менее чем за минуту.

Когда я снова включил сервер, правильно загрузились только 2 виртуальные машины. Остальные 2 показали следующую ошибку:

Не удалось выполнить «Включение виртуальной машины»

Если эти проблемы не исчезнут, обратитесь к системному администратору.

Подробности: не удается открыть диск «[расположение в .vmdk]» или один из дисков моментальных снимков, от которых он зависит. Причина: не удалось заблокировать файл.

Очевидно, если эта ошибка произошла, то мне ясно, что виртуальные машины были не правильное выключение, или сервер отключился до того, как виртуальные машины были полностью выключены. Я исправил указанную выше ошибку, удалив файлы .lck в соответствующих каталогах виртуальных машин.

Как я узнаю, правильно ли были выключены виртуальные машины? Я проверил журналы VMware-server, но они, похоже, отображают только журналы, когда служба vmware-mgmt запущена в текущем сеансе. Я в основном использую виртуальные машины Linux, поэтому есть ли простой способ узнать, правильно ли был выключен сервер в Linux?

Спасибо всем за помощь!

Если вы сейчас используете shutdown -h, он немедленно отключится, независимо от «настроек по умолчанию», поскольку вы переопределите их с помощью параметра.

При этом, в прошлый раз, когда мы завершили работу нашей среды, мы сделали каждую виртуальную машину отдельно, подождали, пока все они не отобразятся как выключенные, а затем выключили хост (в данном случае ESXi). Это позволяет вам проверять наличие ошибок во время выключения виртуальных машин и, в нашем случае, выключать веб-серверы, а ЗАТЕМ серверы баз данных конкретного приложения, чтобы избежать ошибок.

То же самое делаем при запуске и еще раз убеждаемся в отсутствии ошибок.

Я думаю, что важно определить правильную процедуру выключения и запуска в случае производственных сред.

При этом, я думаю, вам нужно будет предоставить больше информации о том, что это за виртуальные машины. Я думаю, что VMware Server не сможет отличить выключение с ошибкой от выключения без.

P.S. почему бы не использовать ESXi для начала?

SSH в каждую виртуальную машину и выпуск shutdown -h now. Это правильный способ выключить Linux-машину, виртуальную или нет.