가상 머신에서 서버를 실행하면 확장성, 합리적인 자원 사용, 고 가용성, 부하 분산, 편리한 관리, 데이터 보호 기능 등의 여러 가지 이점이 있습니다. 이러한 이유로 물리적 서버 중 일부를 가상 머신으로 이관하고자 할 수 있습니다. 이 과정은 물리적에서 가상으로의 변환으로 알려져 있으며 P2V라는 약어로 지칭됩니다.
VMware는 가상화 솔루션을 제공하는 IT 세계의 선도 업체 중 하나이며, Linux는 서버에서 실행되는 가장 신뢰할 수 있는 운영 체제 중 하나입니다. 이 블로그 글에서는 Linux 서버 백업의 중요성과 vSphere의 ESXi 호스트에서 실행되는 가상 머신(VM)으로 물리적 Linux 서버를 변환하는 방법에 대해 설명합니다. Ubuntu 18을 예시로 한 VMware P2V Linux 변환의 두 가지 다른 방법이 고려됩니다.
방법 1 – VMware vCenter Converter 사용
VMware vCenter Converter Standalone은 Windows에 설치할 수 있는 무료 애플리케이션으로, Windows 물리 머신, Linux 물리 머신, Hyper-V VM, VMware VM 및 Red Hat KVM 또는 RHEL XEN에서 실행되는 VM을 변환할 수 있습니다. 지원되는 대상 유형에는 미관리 ESXi 호스트용 VM, vCenter Server로 관리되는 ESXi 호스트용 VM, VMware Workstation용 VM, VMware Fusion용 VM이 포함됩니다.
Hyper-V VM을 ESXi 호스트에 있는 VMware VM으로 변환하는 방법은 이 블로그 글에서 설명되어 있습니다.
작동 원리
단계 1. VMware Converter는 소스 Linux 머신에 SSH를 통해 연결하고 가상 디스크 및 파티션과 같은 복사할 구성 요소를 선택할 수 있도록 합니다. 소스 물리적 Linux 머신의 선택한 구성 요소와 대상 VM의 구성된 설정에 따라 변환기가 도우미 VM을 생성합니다.
단계 2. 필요한 모든 구성 요소가 선택되고 도우미 VM의 네트워크 설정이 구성되면 VMware Converter는 대상 ESXi 호스트 및 데이터 저장소에 도우미 VM을 생성합니다. 그런 다음 변환기는 도우미 VM ISO 이미지에서 부팅하는 도우미 VM을 시작하고 변환 프로세스가 완료될 때까지 소스 Linux 머신에서 대상 VM으로 모든 필요한 데이터를 복사합니다.
A helper VM is deployed from the Linux-based ISO image stored on the file system of the Windows machine on which the converter is installed. The location of converter-helper-vm.iso and converter-helper-vm-x64.iso files used to boot a helper VM on an ESXi host is “C:\Program Files (x86)\VMware\VMware vCenter Converter Standalone\” by default.
대상 VM에 데이터를 복사한 후에 변환 작업을 위해 적절한 옵션이 선택되었다면 VMware Converter에 의해 VM을 재구성할 수 있습니다.
시스템 요구 사항
VMware 변환기를 사용하여 VMware P2V Linux 변환을 수행하려면 준수해야 할 몇 가지 요구 사항이 있습니다:
- A physical machine running Linux must be powered on.
- ESXi 호스트가 켜져 있고 네트워크를 통해 접근할 수 있어야 합니다. vCenter Converter Standalone 클라이언트 및 서버는 서로 접근할 수 있어야 합니다. 네트워크 통신에는 기본적으로 TCP 포트 22, 443, 902가 사용됩니다.
- GRUB 부트 로더는 변환 대상이 되는 물리적인 Linux 기계에서 사용되어야 합니다. LILO는 지원되지 않습니다.
- 광학 디스크는 광학 디스크 드라이브에서 추출되어야 합니다.
- SSH 서버는 물리적인 Linux 기계(원본 기계)에 구성되어야 합니다.
참고: SSH 서버는 다음 명령을 사용하여 Ubuntu Linux에 설치할 수 있습니다:
apt-get install openssh-server
SSH를 통한 비밀번호를 사용하여 사용자에 대한 원격 액세스는 다음과 같이 sshd_config 파일을 편집하여 구성할 수 있습니다:
vim /etc/ssh/sshd_config
문자열을 생성하거나 주석 처리하십시오:
PasswordAuthentication yes
구성 파일을 저장하십시오
:wq
sshd 데몬(서비스)을 다시 시작하십시오
service sshd restart
VMware Converter Linux P2V 변환: 단계별 안내
Linux P2V 변환을 수행하려면 다음 단계를 수행하십시오:
1. 공식 웹 사이트에서 VMware vCenter Converter Standalone을 다운로드하십시오.
2. 네트워크를 통해 Linux 머신에 연결할 수 있는 Windows 머신에 컨버터를 설치하십시오. 설치 과정은 간단합니다. EXE 파일을 실행하고 설치 마법사의 권장 사항을 따르기만 하면 됩니다. 오늘의 예에서는 VMware Converter 6.2를 사용합니다.
3. VMware vCenter Converter Standalone을 실행하십시오.
4. 기계 변환을 클릭하십시오.
5. 소스 시스템. 열려 있는 기계 변환 마법사에서 소스 시스템을 선택하십시오. 켜기와 원격 Linux 머신을 선택하십시오. 원격 Linux 머신에 대한 IP 주소, 사용자 이름 및 비밀번호를 지정하십시오. Linux 머신에 SSH 서버가 구성되어 있어야 하며 방화벽이 이 단계에서 SSH 연결을 차단해서는 안됩니다. 그렇지 않으면 오류 메시지가 표시됩니다: 소스 머신에 SSH를 할 수 없음. 방화벽이 소스 머신의 SSH 데몬 액세스를 차단하는지 확인하십시오. 지정한 사용자는 로그인/비밀번호 조합 또는 개인 키 파일을 사용하여 SSH를 통해 Linux 콘솔에 로그인할 수 있어야 합니다. 이 예제에서는 비밀번호가 있는 user1 사용자가 사용됩니다.
5.1. 소스 세부 정보 보기를 클릭하여 VMware 가상 머신으로 변환해야 하는 원격 Linux 머신의 세부 정보를 확인하십시오. 계속하려면 다음을 클릭하고 다음 단계로 이동하십시오.
보안 경고(원격 호스트 썸프린트 경고)가 표시되면 예를 클릭하여 연결하십시오.
때로 변환기가 원격 리눅스 소스 머신에서 명령을 실행할 수 없어 다음과 같은 경고가 표시됩니다: 원격 머신에 SSH로 로그인한 상태에서 sudo를 비밀번호 입력 없이 실행할 수 있는지 확인하십시오. Unable to query the live Linux source machine. Make sure that you can run sudo without entering a password when logged in to the source machine over SSH as your_username.
이 경우, /etc/sudoers 파일을 편집하여 사용자가 비밀번호를 입력하지 않고도 sudo를 실행할 수 있도록해야 합니다. /etc/sudoers 파일을 수동으로 편집하는 대신 다음 명령을 사용하십시오:
visudo
파일의 끝에 다음과 같이 줄을 추가하십시오:
user1 ALL=(ALL) NOPASSWD: ALL
user1은 사용자의 이름입니다. 사용자 이름을 입력해야 합니다. 파일을 저장하려면 Ctrl+X를 누르고 Y(예)를 누르십시오.
6. 대상 시스템. 대상 시스템을 선택하세요. 기본적으로 대상 유형은 물리적 Linux 머신을 변환하는 경우 VMware Infrastructure 가상 머신으로 정의됩니다. 이는 물리적 Linux 머신을 VMware VM으로 변환하는 유일한 옵션입니다. 이것은 대상 VM이 ESXi 서버에서 실행되거나 VMware vSphere 클러스터에서 실행됨을 의미합니다. 변환된 VM을 실행하려는 ESXi 호스트가 vCenter에 의해 관리되는 경우, vCenter 서버의 IP 주소를 선택하고 vCenter 관리자 또는 vCenter 서버를 관리하는 권한이 있는 다른 사용자의 자격 증명을 정의하세요.
참고: VMware vCenter Converter Standalone로 물리적 Linux 머신을 VMware Workstation 형식의 VM으로 변환할 수 없습니다.
인증서 경고가 표시되는 경우 무시를 선택하여 계속 진행할 수 있습니다.
7. 대상 가상 머신. 가상 머신을 저장할 데이터 센터를 선택하고 대상 VM의 이름을 입력하세요. 예를 들어, Ubuntu18-04-vm입니다.
8. 목적지 위치. 가상 머신을 실행할 ESXi 호스트와 가상 머신 파일을 저장할 데이터 스토어를 선택하십시오. 또한 가상 머신 버전을 선택할 수 있습니다. 기본적으로 가장 높은 지원되는 가상 머신 버전이 선택됩니다. 이 경우 ESXi 6.5를 사용하므로 버전 13입니다.
9. 옵션. 이 단계에서 다양한 변환 옵션을 편집할 수 있습니다.
복사할 데이터. 모든 볼륨 또는 사용자 정의 볼륨을 선택하여 복사하고 가상 디스크 프로비저닝 유형 (두꺼운 또는 얇은 프로비저닝)을 선택할 수 있습니다. 또한 각 가상 디스크를 다른 데이터 스토어에 저장할 수 있습니다. “최적화된 파티션 레이아웃 생성” 확인란을 선택해 두십시오. 이 옵션은 디스크 파티션의 정렬을 최적화하는 데 사용됩니다.
장치. 메모리 탭에서 목적지 VM에 필요한 메모리 양을 설정하십시오. 기타 탭에서 디스크 컨트롤러, 프로세서 및 프로세서 코어 수를 설정하십시오.
네트워크. 가상 머신에 연결할 가상 네트워크 어댑터의 수를 선택한 다음 각 네트워크 어댑터를 연결할 가상 네트워크, 네트워크 컨트롤러 유형을 선택하고 필요한 경우 “전원 켜기 시 연결” 확인란을 선택하십시오.
고급 옵션. 변환 후 설정은 이 섹션에 있습니다. 우리의 경우, 물리적 Linux 서버를 VMware 가상 머신으로 변환하는 경우, 대상 가상 머신 옵션 재구성만 사용할 수 있습니다. 이 옵션은 부팅 로더를 구성하고, 운영 체제에서 사용하는 드라이버를 VMware 가상 환경에서 보다 최적화되도록 업데이트합니다(적절한 가상 하드웨어로).
도우미 VM 네트워크. Linux 서버를 VM으로 변환하는 과정에서 VMware vCenter Converter는 대상 호스트/데이터 스토어에 도우미 VM을 생성합니다. 도우미 VM은 소스 물리적 머신에 네트워크를 통해 액세스해야 모든 파일을 복제할 수 있습니다. 이 섹션에서는 도우미 VM의 네트워크 연결에 사용되는 IP 주소, 넷마스크, 게이트웨이 및 DNS 서버를 구성할 수 있습니다.
10. 요약. P2V Linux 변환에 대한 모든 변환 설정을 확인하고 모든 것이 올바른지 확인한 후, 변환 프로세스를 시작하려면 완료를 누르세요.
11. 변환 프로세스가 완료될 때까지 기다리십시오. 변환 시간은 소스 Linux 머신의 디스크에 저장된 데이터 양에 따라 다릅니다. 변환이 완료되면 VMware vCenter Converter에서 변환 작업의 완료 상태를 볼 수 있으며, VMware vSphere Client, VMware Host Client 또는 VMware Workstation 인터페이스에서 대상 Linux 가상 머신을 시작할 수 있습니다.
그러나 때때로 Linux 머신의 P2V конVERSION 과정이 97% 에서 에러로 끝날 수 있습니다:
FAILED: 변환 중 오류가 발생했습니다: ‘GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh를 리턴 코드: 127로 실패하였고, 메시지: fatsal: kernel이 too old 입니다 Error vmware-updateGrub.sh를 chroot를 통해 /mnt/p2v-src-root 내에서 실행하는 중 Command:
chroot ” /mnt/p2v-src-root ” /vmware-updateGrub.sh “GRUB2” “(hd0)” “(hd0,1)” /vmware-device.map “grub2-install”
이슈는 대상 VM 上 VMware vCenter Converter가 적절하게 설정하지 않은 GRUB 引导 로더가 原因입니다. 変換 后勤 Linux 가상 머신을 시작하려고 하면, 다음과 같은 에러가 발생합니다: OS 로딩 에러 .
VMware Converter Linux 이슈를 해결하는 方法
1. Ubuntu 설치 媒体로 부팅하여 구救助 디스크로 사용해야 합니다. VM 설정을 VMware vSphere Client, VMware Host Client 또는 VMware Workstation을 사용하여 수정하십시오 (VM > Edit Settings).
2. Hardware 설정에서, 가상 머신의 CD / DVD 드라이브를 선택하고 Ubuntu 설치 가능한 媒体를 선택하십시오. 우리의 예에서는, 변환后勤 Linux VM가 위치하고 있는 ESXi 호스트가 다음과 같이 데이터 스토어에서 assessble하게 하는 Ubuntu 18.04 설치 ISO 디스크 이미지를 사용합니다. Connect at Power On 폼을 표시하는 것을 잊지 마십시오.
3. VM을 시작한 후 F2 키를 depressed 하여 VM BIOS 설정 화면을 진입하세요. CD-ROM 를 引导 部分의 的首부 device로 설정하세요.
그 다음 退出 > 退出 저장 변경 을 클릭하세요.
대신적으로, VM을 시작한 다음 Esc KEY를 눌러 F2 KEY를 대신 引导 순서를 한번 바꿀 수 있습니다.
4. Ubuntu 설치 媒体로 引导 한 후 Ubuntu 시험을 어 clicking 화면에서 선택하세요. Live DVD로 Ubuntu가 引导되고 Ubuntu 桌面이 나타나기 전까지 기다렸다가 시작하세요.
5. Ubuntu Console을 오픈하고 root 권한을 얻습니다.
sudo -i
6. 사용 가능한 디스크들을 목록에 기재합니다.
ls -al /dev/sd*
fdisk -l
우리의 예제에서는, 사물 기기에 Ubuntu가 설치 되어 있는 경우 가장 간단한 디스크 분할 계획을 사용합니다. 전체 디스크를 표현하는 /dev/sda1 분할이라는 것을 기억하세요. Linux이 引导되는 분할을 감지하고 /boot/ 디렉터리를 갖추고 있는지 확인하세요. /boot/ 디렉터리에 마ount되는지 여부를 검사하는 것도 가능합니다.
7. parted 를 사용하여 Linux을 引导하는 분할을 찾을 수 있습니다:
parted /dev/sda
unit MB
p free
Linux이 引导되는 분할을 보여줍니다 (그 문자열에 引导 기능이 있는지 여부를 보여줍니다). 그 다음 parted을 종료합니다.
quit
주의: 수동 的分区 계획을 사용하고 별도의 引导分区을 Linux에 引导하는 경우, 您的分区 목록이 다릅니다. 그러나 마찬가지로 引导 값이 있는 分区을 찾는 것이 중요합니다.
8. RAM 디스크에 디렉터리를 생성하고 Ubuntu가 사용하는 的分区을 마운트 합니다. Ubuntu가 單独의 分区에 安装되어 있으면, 다음과 같은 명령어를 사용하세요:
mkdir /mnt/ubuntu18
mount /dev/sda1 /mnt/ubuntu18
주의: Ubuntu가 다양한 分区을 사용하는 경우, 분리된 디렉터리를 생성하고 각 分区을 적절한 디렉터리에 마운트 합니다:
mkdir /mnt/ubuntu18/boot
mkdir/mnt/ubuntu18/root
mount /dev/sda1 /mnt/ubuntu18/boot
mount /dev/sda2 /mnt/ubuntu18/root
그 외에도 마찬가지입니다.
9. Vim (텍스트 编辑器)를 安装합니다.
apt-get install vim
10. 각 디스크 分区의 디스크 식별자를 확인합니다. /boot 디렉터리(また는 /boot 디렉터리에 마운트 된 分区)를 포함하는 分区의 UUID를 알아야 합니다. 이 UUID를 기억하십시오. 우리의 사례에서, 이 分区은 /dev/sda1입니다.
blkid
11. インストールされたUbuntuインスタンスが使用している仮想ディスク上の/etc/fstabファイルを編集します。/etc/fstabファイルは、Ubuntuのルートファイルシステムをマウントした一時的なディレクトリにあります(/mnt/ubuntu18/etc/fstab)。
vim /mnt/ubuntu18/etc/fstab
/etc/fstabにある各パーティションのUUIDを変更して、Linuxの起動時にパーティションを自動的にマウントできるようにします。 physical Linux machine上で使用される旧いUUID値を新しい仮想マシン上で使用される新しいUUID値に変更します。現在の簡単な例では、一つの/dev/sda1パーティションしか使用されておらず、ルート(/)ディレクトリにマウントする必要があります。したがって、2516177b-e9a9-4502-bdae-a3626fe3ab0aをdd05b02c-8772-4ec2-9340-2473ec8c2f8bに変更する必要があります。
変更を保存し、vimを終了します。
:wq
Note: Linuxが複数のパーティションを使用している場合、他のパーティションのUUID値を変更する必要があるか、sda2、sda3、sdb1、sdb2などを定義して、Linuxの起動時にこれらのパーティションを自動的にマウントできるようにする必要があるかもしれません。
12. /boot/grub/ 디렉터리에 있는 GRUB 구성 파일을 편집합니다. /boot/ 디렉터리의 파일을 포함하는 パーtition을 临时的な 디렉터리에 마운트 했다고 기억하십시오. 물리적인 Linux 머신을 가상 머신으로 변경하면 목적지 VM에서 디스크의 UUID가 변경되며, 이 이유로 부트 로더(GRUB)가 필요한 パーtition에서 부팅할 수 없습니다. 우리의 경우, grub.cfg 파일을 다음 명령어를 사용하여 편집합니다:
vim /mnt/ubuntu18/boot/grub/grub.cfg
13. 旧的 UUID를 새로운 UUID로 대체합니다. 구성 파일에서 UUID가 여러 번 나오며, 이러한 값을 manuel로 편집하는 것은 convience가 없습니다. 텍스트 편집기 vim를 사용하여 Souce Text를 타켓 Text로 자동으로 대체할 수 있습니다. 이를 실행하기 위해서는 다음과 같은 명령어를 사용합니다:
:%s/source_text/target_text/g
%s는 전체 텍스트 파일에서 일치하는 모든 값을 대체하도록 하는 것을 의미합니다.
현재 예에서는 다음과 같은 명령어를 사용합니다:
:%s/2516177b-e9a9-4502-bdae-a3626fe3ab0a/dd05b02c-8772-4ec2-9340-2473ec8c2f8b/g
:wq!
Note: Linux이 다른 여러 parallelograms partition을 사용하고 있으면 grub.cfg 파일에 언급되는 모든 partition의 UUID 값을 대체합니다.
14. 이제 GRUB를 부팅 로더에 다시 설치해야 합니다. 부팅 로더가 이전에 설치된 동일한 디렉토리에 설치합니다. 우리의 예에서 GRUB는 /boot 디렉토리에 설치되었고, /boot 디렉토리는 현재 임시로 /mnt/ubuntu18/boot에서 접근 가능합니다. Ubuntu를 부팅하기 위해 사용된 디스크는 /dev/sda입니다.
grub-install –boot-directory=/mnt/ubuntu18/boot /dev/sda
15. 이전에 마운트된 모든 파티션을 마운트 해제합니다:
umount /dev/sda1
16. 가상 머신을 종료합니다
init 0
17. VM 설정에서 CD-ROM이 아닌 가상 하드 디스크에서 부팅할 수 있도록 부트 설정을 다시 구성합니다.
18. VM을 켭니다.
19. 이제 VM은 ESXi 호스트에서 GRUB가 있는 가상 하드 디스크에서 부팅할 수 있습니다.
따라서 VMware vCenter Converter Standalone를 사용하여 VMware P2V Linux 변환을 수행하는 방법을 알게 되었습니다. 유감스럽게도 VMware 컨버터 Linux 버전은 제공되지 않지만, Linux 머신만 사용하여 물리적 Linux 서버를 VMware VM으로 변환하려면 두 번째 P2V Linux 변환 방법에 익숙해져야 합니다.
방법 2 – VMware 컨버터 없이 VMware P2V Linux 변환
ESXi 형식의 가상 머신으로 물리적인 Linux 머신을 변환하는 두 번째 방법은 VMware vCenter Converter Standalone을 필요로하지 않습니다. 이 방법은 사용자 및 관리자들이 환경에 Windows 머신을 갖고 있지 않은 경우에 사용할 수 있습니다 (기억하시다시피, VMware vCenter Converter는 Windows에만 설치할 수 있습니다). 두 번째 VMware P2V Linux 변환 방법의 아이디어는 다음과 같습니다:
- 물리적인 Linux 서버에서 사용하는 물리적 디스크의 이미지를 dd 유틸리티를 사용하여 생성합니다.
- 결과 이미지를 vmdk 형식의 이미지로 변환합니다.
- 기존 가상 디스크를 사용하여 VMware Workstation에서 새로운 VM을 생성합니다 (Linux 또는 Windows에서 실행될 수 있음).
- VMware Workstation 형식의 VM을 OVF 템플릿으로 내보냅니다.
- OVF 템플릿에서 ESXi 호스트에 새로운 VM을 생성합니다.
예제에서는 변환해야 할 물리적 머신에 Ubuntu 18이 설치되어 있으며, 대상으로 ESXi 6.5 및 vCenter 6.5를 사용하며, P2V Linux 변환 프로세스에서 전환 지점으로 VMware Workstation 15를 사용합니다.
단계별 안내
1. 물리적 Linux 서버에서 각 물리적 디스크 (/dev/sda, /dev/sdb 등)에 대해 dd (데이터 복제) 유틸리티를 실행하고 각 디스크의 이미지를 생성합니다. USB 하드 디스크 드라이브를 물리적 Linux 머신에 연결하고 dd 유틸리티로 생성된 이미지를 해당 USB HDD에 저장할 수 있습니다. 나중에 해당 USB HDD를 VM을 생성해야하는 머신에 연결할 수 있습니다. 현재 예에서 Linux이 사용하는 모든 파티션은 /dev/sda 디스크에 있습니다.
dd if=/dev/sda of=/media/user1/data/sda.img bs=8M conv=sync,noerror status=progress
다음과 같습니다:
if=/dev/sda – 전체 물리적 디스크인 입력 파일입니다;
of=/media/user1/data/sda.img – 외부 디스크에 위치한 출력 이미지 파일의 경로입니다.
bs=8M – 블록 크기는 8MB입니다. 이 옵션은 dd가 기본적으로 512바이트 단위로 데이터를 복사하기 때문에 속도를 높입니다.
conv=sync,noerror – 소스 디스크(파일)에서 데이터를 읽을 때 dd가 오류가 발생하면 중지되지 않도록 사용됩니다.
status=progress – 작업 진행 상황을 콘솔에 표시하기 위해 이 옵션을 사용합니다.
2. 하드웨어 에뮬레이션을 위한 오픈 소스 응용 프로그램인 qemu를 설치합니다. qemu는 Linux 기반의 어떤 기계에도 설치할 수 있습니다.
apt-get install qemu
3. Linux 콘솔에서 이전에 생성한 img 파일이 있는 디렉토리로 이동합니다. dd 유틸리티로 만든 디스크 이미지를 vmdk 형식으로 변환합니다. 이 작업에는 Qemu를 사용할 수 있습니다. 이 예제에서는 하나의 디스크 이미지를 변환합니다:
qemu-img convert -o compat6 sda.img -O vmdk sda-vmware.vmdk
이제 디스크 이미지는 vmdk 형식으로 변환되어 VMware Workstation에서 열 준비가 되었습니다. 기억하시다시피, VMDK 가상 디스크의 형식은 VMware Workstation 및 VMware ESXi에서 다릅니다. VMDK 파일 형식에 대한 자세한 내용은 여기에서 설명되어 있습니다. VMware Workstation에서 VM을 OVF 템플릿으로 내보내고, 그런 다음 OVF 템플릿에서 ESXi 호스트로 VM을 가져와야 합니다.
VMware Workstation이 컴퓨터에 설치되어 있는지 확인하십시오. 이 예에서는 Ubuntu 18에서 실행되는 기계에 VMware Workstation 15가 설치되어 있지만, P2V Linux 변환 방법에는 사용되지 않는 소스 Linux 기계에는 설치되어 있지 않습니다(이 방법으로는 Windows를 사용하지 않습니다). VMware Workstation이 설치된 Windows 기계의 알고리즘도 유사합니다.
4. 예를 들어 VMware Workstation이 설치된 기계에 새 디렉터리를 만듭니다. 예: /vms/P2V_Linux
mkdir /vms/P2V_Linux
5. qemu에 의해 변환된 vmdk 파일을 해당 디렉터리로 복사합니다. 이 경우에는 sda-vmware.vmdk 파일을 해당 디렉터리로 복사합니다.
6. VMware Workstation에서 새 가상 머신을 생성합니다:
파일 > 새 가상 머신
A New Virtual Machine Wizard is opened. You should pass all the configuration steps of this wizard:
가상 머신 구성. 고급 사용자 정의(Custom)를 선택하여 고급 옵션을 구성할 수 있도록 합니다. 계속하려면 다음을 클릭합니다.
가상 머신 하드웨어 호환성. 필요한 가상 머신 하드웨어 버전을 선택하십시오. 예를 들어, Workstation 15.x.
게스트 운영 시스템 설치. 나중에 운영 시스템을 설치할 것입니다 을 선택하십시오.
게스트 운영 시스템. Linux을 선택하고, 다운 안 메뉴에서 Ubuntu 64-bit을 선택하십시오.
가상 머신 이름. 가상 머신의 이름을 입력하고 그 위치를 지정하십시오. 이 예에서, VM 이름은 P2V Linux이고 그 위치는 /vms/P2V_Linux_VM/
프로세서 구성. 가상 머신에 사용할 프로세서 수와 프로세서 코어 수를 Configuration used on your physical Linux machine that you are converting to a VMware VM에 따라 선택하십시오.
가상 머신 메모리. 가상 머신에 할당할 메모리의 양을 설정하십시오. 이는 실제 Linux 컴퓨터의 메모리 양과 적절하게 지정되어야 합니다.
네트워크 연결. 예를 들어 桥接 네트워크 유형을 선택하십시오. 근본 Linux 서버가 지금 연결되어 있는지 확인하여 네트워크 충돌을 방지하십시오.
I/O Controller Types. Select the recommended value. In this example, SCSI Controller: LSI Logic (Recommended) is selected.
가상 디스크 유형. 建议される 디스크 유형을 선택하십시오. 우리의 경우, 이는 SCSI (Recommended)입니다.
디스크 선택. 이미 존재하는 가상 디스크를 사용 옵션을 선택하십시오.
이미 존재하는 디스크 선택. yours converted /dev/sda disk의 적절한 vmdk file를 찾아봅니다. 현재 예에서는 sda-vmware.vmdk 파일을 이미 존재하는 가상 디스크로 선택합니다.
참고: 원본 물리 리눅스 서버에 여러 개의 하드 디스크가 있고 변환 후 여러 개의 VMDK 파일이 있는 경우, vmdk 파일 중에서 /dev/sda 디스크에서 변환된 첫 번째 파일을 선택하십시오. 가상 머신 생성 후 가상 머신 설정을 편집하여 다른 디스크를 수동으로 추가하십시오.
호환성을 높이려면 기존 형식 유지을 선택하십시오.
가상 머신 생성 준비 완료. 구성 요약을 확인하고 모두 올바른지 확인한 후 완료을 선택하십시오.
가상 머신을 생성한 후에 가상 머신을 시작하기 전에 가상 머신 구성을 확인할 수 있습니다.
참고:여러 개의 물리 디스크를 가상 디스크로 변환한 경우 다음 단계를 수행하여 나머지 가상 디스크를 추가하십시오:
- VM > 설정을 클릭하십시오
- 하드웨어 탭에서 추가를 클릭하십시오
- 하드 디스크를 선택하십시오
- 권장 옵션인 (SCSI인 경우)를 선택하십시오
- 기존 가상 디스크 사용를 선택하십시오
- 가상 디스크 파일을 선택하십시오
7. VMware Workstation에서 가상 머신을 켜십시오 (필요한 가상 디스크가 모두 가상 머신 구성에 추가되었는지 확인하십시오).
8. 가상 머신에서 실행되는 Linux 게스트에서 네트워크 연결을 확인하십시오:
ifconfig
9. 가상 머신에서 Linux에 VMware Tools를 설치하십시오. Ubuntu에서는 가상 ISO 디스크 이미지 또는 온라인 소프트웨어 저장소에서 VMware Tools를 설치할 수 있습니다.
apt-get install open-vm-tools
10. 만약 모든 것이 올바르다면, 가상 머신을 종료하고 ESXi 호스트로 가상 머신을 마이그레이션하기 위해 OVF 템플릿을 생성할 준비를 하십시오.
11. VMware Workstation의 GUI에서 파일 > OVF로 내보내기를 클릭하십시오.
12. OVF 파일을 Linux 가상 머신과 동일한 디렉토리에 저장하십시오. 현재 예시에서는 OVF 템플릿을 /vms/P2V_Linux_VM/에 저장하였습니다.
13. 웹 브라우저에서 VMware vSphere Client를 엽니다.
14. 호스트 및 클러스터로 이동한 다음, 변환 후 VM을 실행할 ESXi 호스트를 선택하십시오.
15. 템플릿에서 VM 생성. 작업 > OVF 템플릿 배포를 클릭하십시오.
A new window of the Deploy OVF Template wizard is opened and contains 7 steps:
1. OVF 템플릿 선택. 로컬 파일을 클릭한 다음 찾아보기를 클릭하십시오. 두 개의 파일을 선택해야 합니다 – VM 템플릿의 OVF 파일과 가상 디스크의 VMDK 파일(들). 한 개의 OVF 템플릿 파일만 선택하면 파일이 누락되었음과 파일명이 표시되는 메시지가 표시됩니다. 파일은 VMware vSphere Client를 열어둔 컴퓨터에서 접근 가능해야 합니다(파일은 로컬 디스크, SMB 또는 NFS 공유 등에 저장되어야 함).
2. 이름과 폴더 선택. 고유한 VM 이름과 대상 위치(데이터센터 또는 VM 폴더)를 지정하십시오. 현재 예시에서 VM 이름은 P2V_Linux입니다.
3. 컴퓨팅 리소스 선택. 이 단계에서는 VM이 실행될 ESXi 호스트 또는 클러스터를 선택해야 합니다.
이 단계에서 오류가 발생할 수 있습니다: 선택한 템플릿에 문제가 발견되었습니다. 세부 정보: -1:-1:VALUE_ILLEGAL: [vmx-16] 중에서 지원되는 하드웨어 버전이 없습니다; 지원되는 것: [vmx-04, vmx-07, vmx-08, vmx-09, vmx-10, vmx-11, vmx-12, vmx-13].
이 오류는 VM 템플릿에서 설정된 하드웨어 버전이 ESXi 호스트에서 지원하는 하드웨어 버전보다 높을 때 발생할 수 있습니다.
이 문제를 해결하려면 텍스트 편집기에서 OVF 파일을 편집하십시오. Linux에서는 Vim을 사용할 수 있습니다. OVF 템플릿이 있는 디렉터리로 이동하여 파일을 편집하십시오:
vim P2V_Linux.ovf
vmx-xx와 같은 문자열을 찾으십시오. 여기서 xx는 VM 하드웨어 버전의 숫자입니다. ESXi 6.5에서 지원하는 가장 높은 하드웨어 버전은 13이며, 저희 템플릿에는 VM 하드웨어 버전 16이 설정되어 있습니다.
Vim에서 필요한 텍스트를 찾으려면 탐색 모드에서 다음을 입력하십시오:
/vmx-
vmx-16을(를) 예를 들어 vmx-12로 수정하고 OVF 파일을 저장하십시오.
OVF 파일에서 변경 사항을 저장한 후 VMware vSphere Client로 돌아가 Next를 클릭하여 OVF 템플릿 배포 마법사의 컴퓨팅 리소스 선택 단계로 돌아가십시오.
4. 세부 정보 검토. 이 단계에서 템플릿 세부 정보를 확인할 수 있습니다.
5. 저장소 선택. VM의 구성 및 디스크 파일을 저장할 대상 데이터스토어를 선택하고 가상 디스크 형식 (Lazy Zeroed Thick, Eager Zeroed Thick 또는 Thin Provision)을 선택하십시오.
6. 네트워크 선택을 선택하십시오. 가상 네트워크 어댑터에 대해 각 네트워크를 선택합니다. 각 네트워크 어댑터를 적절한 네트워크에 연결하기 위해 구성해야 합니다.
7. 완료하기 준비를 선택하십시오. 구성을 다 확인한 다음 다음을 클릭하여 VM 생성을 시작합니다.
새 VM이 blueprint을 따라 생성되고 나면 기다리십시오.
16. OVF blueprint에서 VM 이mport가 끝나면, ESXi 호스트에서 VM을 켠다 전원을 부여하십시오. 이 部落格 글에서 VM blueprint에 대해 자세히 읽어보십시오. “VM 引导 때 이 가상 장치를 연결하시려는 것인가요?” 이란 massage를 얻었다면, VM 引导 때 해당 장치를 연결하고자 하는지 여부를 확인합니다. 각 시기마다 VM 引导 과정에서 해당 장치를 연결하지 않겠다는 의사로 아니요를 클릭하십시오.
A physical Linux server has been converted to a virtual machine without using Windows and VMware vCenter Converter Standalone. The process of VMware P2V Linux conversion was explained on an example of Ubuntu Linux. If you need to convert physical servers running other Linux distributions such as SUSE or Red Hat to VMware virtual machines, use the same algorithm, but keep in mind that some commands and locations of configuration files can be different. Instead of using apt-get package manager in SUSE, you should use zypper and in Red Had use yum. You may need to reconfigure network settings of the virtual machine such as an IP address, default gateway, DNS server, etc.
결론
물리적인 Linux 서버를 VMware 가상 计算机로 convert하는 것은 여러 방법을 사용할 수 있습니다 – VMware vCenter Converter Standalone을 사용하여 Windows 计算机이 필요한 것과, VMware Workstation과 함께 사용하여 Linux 도구를 사용하는 것입니다. 이러한 방법 어느 하나에서도 VM 구성을 수동으로 编辑할 수 있습니다. 첫 번째 방법을 사용할 때, P2V Linux 변환의 목적地에 어떠한 ESXi 호스트도 사용할 수 있지만, 두 번째 방법은 물리적인 Linux 计算机을 VMware ESXi와 VMware Workstation 형식의 모두에 変換할 수 있습니다.
Source:
https://www.nakivo.com/blog/vmware-p2v-linux-conversion-comprehensive-walkthrough/