2013-02-02 5 views
2

Я пытаюсь вернуть виртуальную машину в предыдущий снимок каждый день или ночь. К сожалению, я не нашел способа сделать это так, как хочу.ESXi 5.1 возвращается к снимку ежедневно или каждую ночь

Вот некоторые вещи, которые я пытался и что не укладывалось:

- snapshot.action=autoRevert --> The VM has to HALT, REBOOT doesn't work the same. I don't want to power on my VM manually. 

- snapshot.action=autoRevert on a running snapshot. I tried this, thinking it might work and resolve the first issue. But when i HALT my VM, the snapshot is reverted but the VM is placed in a suspended state... 

- PowerCLI script : I don't want to have a Windows machine running just for this little thing. 

- NonPersistent disk : same thing as the first issue : VM needs to HALT, not REBOOT. 

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

ответ

7

Раньше я настраивал скрипты, которые вернули виртуальные машины к конкретным моментальным снимкам через SSH-сервер на моем хосте ESXi. Как только sshd включен, вы можете удаленно запустить vim-cmd через SSH. Это было на ESXi 4.x, но я предполагаю, что это можно сделать и в более новых версиях.

Загвоздка в том, что я должен был включить так называемый «режим Tech Support», чтобы получить SSHD работает, как описано в VMware KB: kb.vmware.com/kb/1017910

Процедура, которую я использовал, был сначала посмотреть идентификатор ВМ в вопросе, запустив:

vim-cmd vmsvc/getallvms 

Затем вы можете просмотреть снимок дерева ВМ, передавая ее идентификатор этой команды (в этом примере используется VM с ID 80):

vim-cmd vmsvc/get.snapshotinfo 80 

Наконец, вы можете использовать клиент SSH для удаленного возврата ВМ к произвольному снимку, передавая идентификаторы виртуальных машин и моментальных снимков в «snapshot.revert»:

ssh [email protected]_VMWARE_HOST vim-cmd vmsvc/snapshot.revert VM_ID 0 SNAPSHOT_ID 

Еще одна вещь, чтобы отметить, что вы можете настроить аутентификация открытого ключа между сервером ESXi и машиной, на которой запущены ваши сценарии, чтобы последнему не пришлось использовать пароль.

Единственное недовольство этим подходом состояло в том, что я не сразу видел способ сохранить файл authorized_keys на сервере ESXi между перезагрузками - если сервер ESXi необходимо перезагрузить, вам придется перестроить файл authorized_keys прежде чем открытый ключ будет работать снова.

+0

Спасибо, это прекрасно. – mimipc