Как клонировать виртуальную машину при использовании VmWare Server
Сегодня занимался предрелизным тестированием нашего ПО и очень нужна был конструкция из трех отдельных серверов с запущенными MySQL’ями. После коротких раздумий я пришел к выводу, что проще всего будет использовать мою “старую” рабочую машину (на самом деле, это неплохой Sempron с 2Gb RAM, но сейчас я использую мой macbook в качечтве рабочей станции) и поставить на нее 3 отдельных виртуальных сервера. Конечно, как все админы, я ленивый и потому ставить Debian 3 раза подряд мне не показалось правильным решением
. Потому было принято решение создать одну машину, поставить на нее свежий Debian Etch и потом поискать варианты клонирования этой машины чтобы исаользовать ее в 3-х копиях. Когда все было закончено, я решил потратить сэкономленное время на то, чтобы написать эту небольшую заметку и рассказать, как простыми средствами создать клом машины в VmWare Server.
Во-первых, нам нужно найти, где именно располагаются файлы виртуальных машин в нашей системе. После недолгих поисков они были обнаружены в каталоге /var/lib/vmware/Virtual Machines. Для каждой из уже созданных в системе машин там находится один каталог, имя которого совпадает с именем машины. В моем случае я хотел склонировать машину db1 в db2 и, позже, в db3.
Я скопировал каталог db1 со всеми файлами в отдельный каталог:
1 | scoundrel@scoundrel-desktop:/var/lib/vmware/Virtual Machines$ cp -ax db1 db2 |
Следующим шагом было переименования файлов дисковых образов (возможно, этот шаг был не обязательным, но я решил, что так будет правильнее). Для управления файлами дисковых образов vmware вы можете использовать утилиту vmware-diskmanager которая расположена в каталоге скриптов vmware (в моем случае – /vmware/bin):
1 | scoundrel@scoundrel-desktop:/var/lib/vmware/Virtual Machines/db2$ /vmware/bin/vmware-vdiskmanager -n db1.vmdk db2.vmdk |
Следующим (и, на самом деле, последним) шагом было переименование конфигурафионного файла виртуальной машины и смена имени дискового образа в этом файле:
1 2 | scoundrel@scoundrel-desktop:/var/lib/vmware/Virtual Machines/db2$ mv db1 db2 scoundrel@scoundrel-desktop:/var/lib/vmware/Virtual Machines/db2$ sed -i 's/db1.vmdk/db2.vmdk/' db2 |
Вот и все! Теперь мы можем запустить созданную машину с помощью VMware server console, она спросит нас о смене UUID (который совпадает с MAC-адресом машины) и после смены uuid эта машина сможет получить новый IP адрес от dhcp-сервера (в моем случае – от wifi-роутера). Как всегда, процесс настройки всей этой конструкции оказался простым и интерсным. Оставайтесь на связи и в следующей заметке я расскажу вам почему не стоит использовать конфиг-файл MySQL (my.cnf) для настройки репликации между серверами.
Related posts:
- Как получить “не зависящий от провайдера” IP-адрес для домашнего сервера?
- Обзор Типичных Конфигураций Для Nginx
- Nginx – Маленький, Но Очень Мощный И Эффективный Web-Сервер
- Hosting Tricks: Как делегировать управление сабдоменом внешнему DNS-серверу
- Сбор Статиcтики О Работе Сервера nginx При Помощи rrdtool

11 Responses to this entry
[...] Как клонировать виртуальную машину при использовании VmWare Server – Алексей Ковырин делится личным опытом [...]
[...] Continue reading about virtual machines cloning with Vmware Server… [...]
[...] Continue reading about virtual machines cloning with Vmware Server… [...]
I can confirm it is not mandatory to rename vm disk.
So cloning VMs could be even faster!!
[...] http://blog.kovyrin.net/2007/04/08/how-to-clone-virtual-machine-with-vmware-server/trackback/ [...]
I am using vmware-server-1.0.4-56528 on Ubuntu 7.10 and I cannot find the vmware-diskmanager utility. In fact, there is no /vmware/bin on my system. I built vmware-server and vmware-mui from sources, is there another package I should have downloaded?
Would-be Cloner:
find / | grep vmware-diskmanager
I appreciate this-you got me started on fixing my issue. Keep on!
[...] per scontato il punto 1), eseguiamo la procedura del punto 2) secondo quanto scritto in questo link e aggiungiamo la nuova virtual machine al server vmware (punto [...]
great write up. one quick note to more recent virtual server users, configs now have a .vmx extension on the end so you would do:
mv db1.vmx db2.vmx
sed -i ‘s/db1.vmdk/db2.vmdk/’ db2.vmx
in step three.
You might like to try running:
vmware-vdiskmanager
Look in /usr/bin
Also..might need to run with sudo