Чао VMware ESXi, Здравей Proxmox cluster

vmware esxi logoПривет,

От 2012та година насам имам един Intel сървър с VMware ESXi 4.1. От много време насам мисля как най-лесно и безболезнено мога да мигрирам виртуалните машини от него към Proxmox и да го преинсталирам с последната версия на Proxmox 4.2.

Оказа се, че конвертирането от VMware (vmdk) към Proxmox (qcow2 или raw) не е кой знае колко сложно. Общо взето се използва командата qemu-img convert.

Ето и пример :

qemu-img convert alpha_4-flat.vmdk -O qcow2 alpha.qcow2

или повече инфо тук.

Принципът е следния :

  1. Логваме се през SSH към VMware сървъра и влизаме в datastore папката където се съхраняват нашите виртуални машини.
  2. Намираме виртуалната ни машина, чиито файл трябва да завършва на -flat.vmdk : alpha_4-flat.vmdk.
  3. Прехвърляме файла на proxmox сървъра и конвертираме.
  4. Създаваме нова виртуална машина през proxmox уеб интерфейса със същите параметри като старата.
  5. През SSH на proxmox сървъра влизаме в директория /var/lib/vz/images/100/ (100 е ID-то на виртуалната ни машина) и заместваме съществуващия файл с нашия конвертиран такъв.
  6. Стартираме новата ни виртуална машина и всичко трябва да е наред!

Чао VMware ESXi, Здравей Proxmox cluster

До тук всичко е точно, обаче аз се сблъсках с няколко трудности.

Всичките ми виртуални машини тръгнаха без проблем без една – първата ми такава ( личният ми мейл и nagios сървър).

При нея се оказа, че файла който се беше във VMware datastore директорията беше с име : -delta.vmdk . В началото не му обърнах внимание и пробвах да го конвертирам като другите.

Тук забелязох, че самото конвертиране става изключително бавно – 120gb виртуална машина се конвертираха за 20 минути – тук отне около 3 часа за 70gb виртуалка.

Също така, след опит за стартиране, даваше грешки и нищо не тръгваше.

Разковничето беше точно в найменованието alpha-000001-delta.vmdk  : това бил snapshot, а съпътстващия към него alpha-000001.vmdk беше нещо като конфигурационен файл със следната информация :


# Disk DescriptorFile

version=1

encoding="UTF-8"

CID=267fc8aa

parentCID=63ba628c

isNativeSnapshot="no"

createType="vmfsSparse"

parentFileNameHint="alpha.vmdk"

# Extent description

RW 146800640 VMFSSPARSE "alpha-000001-delta.vmdk"

# The Disk Data Base

#DDB

ddb.longContentID = "d96475000b5c9ee92ef952f8267fc8aa"

Тук интересното беше точно : createType=”vmfsSparse” .

При останалите виртуални машини при които този проблем не съществуваше, за createType пишеше : createType=”vmfs”.

Оказа се, че навремето когато още съм си играл да тествам ESXi съм направил главния дял на сървъра ми като snapshot и съответно нямаше как да го конвертирам към qcow2 за да го прехвърля на proxmox-a.

Аз обаче открих начин – лесен, бърз и простичък… 🙂 чрез любимата ми команда – dd!

Създадох си още един дял голям колкото първия ми проблемен.

Стартирах виртуалката на ESXi сървъра от едно debian-netinstall.iso. Пуснах rescue mode, и се логнах в root терминал-а. След това клонирах целия хард диск :

dd if=/dev/sda of=/dev/sde bs=64K conv=noerror,sync

като тук е много важно да не се обърка кой от кой да се клонира, че после става лоша работа! 🙂

След това прехвърлих новият vmdk файл на proxmox сървъра и го конвертирах. Този път всичко мина стандартно бързо, и след като приключи конвертирането, го сложих в директорията на сървъра и пуснах виртуалката – воала! Всичко тръгна!!

Мнението ми за proxmox:

Като цяло на доста места поддържам proxmox сървъри, и смея да твърдя че са доста стабилни! Това което следва, е да конфигурирам останалите 2 физически машини в един общ cluster, за да мога да използвам функцията му HA – High availability.

Proxmox е съвременен, стабилен и безплатен вариянт за облчна инфраструктура (cloud).

Мнението ми за VMware ESXi:

Много стабилно! Обаче, при безплатните версии яките неща ги няма, а ако искаш да си ги закупиш, трябва да се изръсиш с МНОГО пари!

 

И за накрая, искам да благодаря на VMware за наистина много стабилната система! За 4 години никога не съм имал абсолютно никакъв проблем с нея!

Благодаря!