별도의 두 컴퓨터간에 VirtualBox VM 유지 관리 및 동기화


13

작업중 인 프로젝트가있는 VirtualBox VM이 있습니다. 이 VM을 두 대의 별도 컴퓨터에서 사용할 수 있기를 원하므로 당시에 작업 할 수 있습니다. VM 전송, 복제 및 백업에 대한 답변을 보았지만 두 개의 사본이 있고 동기화 상태를 유지하는 것에 대해서는 아무것도 없습니다.

여러 컴퓨터에서 단일 VM 이미지를 유지하는 가장 쉬운 방법 (가장 적은 단계 또는 가장 간단한 단계) 또는 가장 좋은 방법 (문제의 위험이 가장 적은 방법)은 무엇입니까?

두 컴퓨터 중 하나에 USB 포트가 거의 없으므로 USB 드라이브에서 VM을 실행하지 않는 것이 이상적이지만, 이것이 가장 좋을 경우 취할 것입니다 (실제로는 확실하지 않습니다) USB 드라이브에서 VM을 실행하는 데 문제가있는 경우). 그러나 컴퓨터간에 파일을 전송하기 위해 USB 드라이브를 사용할 계획입니다.

답변:


10

여기 두 가지 옵션이 있다고 생각합니다. 첫 번째 옵션은 두 컴퓨터 모두에 Virtualbox를 설치할 때 VM이 저장되는 폴더를 휴대용 또는 원격 하드 드라이브에 설정하는 것입니다. 사용하려는 컴퓨터가 네트워크에서 서로 연결된 경우 공유 폴더를 사용할 수 있습니다. 그렇지 않은 경우 유일한 해결책은 USB 펜 드라이브 또는 외장 하드 드라이브라는 것입니다. 폴더를 설정하려면로 이동하십시오 File > Preferences > General > Default Machine Folder. USB 키의 속도는 전체 성능을 제한 할 수 있습니다.

두 번째 솔루션은 펜 드라이브 또는 이와 유사한 기능이 필요하지만 (VM 파일 만 가지고 다니기 위해) 필요한 VM을 가져갈 때마다 수동으로 내보내고 가져 오는 것입니다. 당신은 VM을 선택하여이 작업을 수행하고 함께 갈 수 File > Export ApplianceFile > Import Appliance. 내 보내면 .ova 형식의 파일이 생성되고 VM을 사용하는 데 필요한 모든 파일이 포함 된 아카이브이며 다른 설치로 가져 와서 두 번째 컴퓨터에서 동일한 VM을 갖게됩니다. 이렇게하면 펜 드라이브를 사용하여 파일을 간단히 휴대 할 수 있으며, 다시 가져올 때 컴퓨터에서 저장하고 액세스하므로 USB 속도는 문제가되지 않습니다.


5

정확히 같은 문제에 직면하여 해결했다고 생각합니다.

A와 B라는 두 대의 컴퓨터가 있다고 가정합니다. A에서 vm을 생성 / 준비합니다. 그 후 스냅 샷을 만들거나 연결된 클론을 생성합니다 (두 단계가 다르지만 단계가 다르면 하나를 제공 할 수 있습니다).

이제 B에 Virtualbox를 새로 설치했는지 확인하십시오. ~ / .VirtualBox 및 ~ / VirtualBox VM을 USB를 사용하여 A에서 B로 복사하십시오 (멀리 떨어진 사이트에 있음).

이제 스냅 샷 방식을 선택한 경우 ~ / VirtualBox VMs / YourVM / Snapshots 폴더가 충분히 커질 때까지 동기화하십시오. 더 커지면 A에서 다른 스냅 샷을 생성하고 YourVM 폴더를 B에 한 번 복사 한 다음이 새 스냅 샷 파일 만 Snapshots 폴더에 동기화하십시오.

A 또는 B에서 스냅 샷을 만들거나 연결된 클론을 만들면이 의식이 깨져 경고를받습니다.

5.0.20에서 테스트


매우 호기심 많은 답변. 오늘도이 작업을 수행 하시겠습니까? 아니면 더 나은 방법이 있습니까?
l --''''''--------- '' '' '' '' '' '' '

4

이 스레드는 1 년 전이라는 것을 알고 있지만 두 위치간에 하나의 VM을 공유하는 문제에 대한 Google의 검색 결과입니다.

VirtualBox를 사용하면 RDP를 사용하여 실행중인 VM에 원격으로 연결할 수 있습니다. VM을 계속 실행하지 않으려면 원격으로 시작할 수있는 방법을 준비하십시오.

"다중 연결 허용"옵션이 있으므로 다른 위치에서 연결하기 전에 한 위치에서 연결을 끊을 필요조차 없습니다.

자신의 VM을 호스팅 할 수없는 경우 빠른 Google 검색에서 VirtulaBox 이미지를 호스팅 할 공급자를 찾았습니다.

나는이 모든 것을 시도하지 않았습니다 ...


4

Sekhemty의 답변이 원하는 것을 할 수있는 유일한 방법이라고 생각합니다.

그러나 왜 가상 머신을 이동해야합니까? 왜 프로젝트를 옮기지 않습니까? 개인 git에서 프로젝트를 설정하고 필요에 따라 밀고 당기십시오.

기계 일관성을 유지해야하고 많이 변경하는 경우, 또 다른 방법은 방랑자와 요리사 / 인형 설정을 사용하는 것입니다. 이것은 요리사 (루비 보석)와 꼭두각시 (나는 꼭두각시를 사용하지 않았습니다)를 사용하여 VM에 포함하고 설치하려는 것을 vagrant에게 알려줍니다.

스크립트, 요리사 또는 꼭두각시를 사용하여 작동하며 VM을 시작할 때 방랑자가이 스크립트를 읽습니다. 설치하고 싶은 것이 있으면 스크립트에 추가하십시오. 아직 설치되지 않은 경우 "유기"할 때 설치됩니다! 그것에 익숙해지기까지 시간이 걸렸으며, 학습 곡선이 가파르 지 만 일단 익숙해지면 매우 효율적이며 전체 VM 대신 스크립트 파일을 이동해야합니다.

http://red-badger.com/blog/2013/02/21/automating-your-infrastructure-with-vagrant-chef-from-development-to-the-cloud/


2
코드 (리포지토리로 이동)와 구성에 관한 것이 아닙니다. VM이 내 개발 환경이기 때문입니다. VirtualBox를 사용하기 시작하여 Windows를 실행하는 컴퓨터에서 Ubuntu에서 작업 할 수 있습니다. 이것은 환경의 사본을 옮기는 것보다 환경을 옮기는 것이 덜 편리한 경우 일관된 개발 환경을 제공합니다.
rsgoheen

그렇다면 유랑하고 요리사 / 인형이 최고인 것 같습니다. 이렇게하면 개발 환경에서 무언가를 변경해야하는 경우 VM을 내보내고 가져올 필요가 없으며 스크립트에 설치 한 항목 만 추가하면 방랑자가 시작시 VM에 VM을 빌드합니다. vagrant는 "base-box (OS)"에서 작동하고 스크립트가 알려주는 것 위에 빌드하기 때문에 다양한 개발 빌드 인스턴스를 갖는 데 매우 편리합니다. 하나의 공간.
boundless08

2

두 컴퓨터간에 가상 머신 이미지를 재 동기화 할 수 있습니다.


2
조금 더 자세히 설명하면 더 나은 답변이 될 것입니다. 정교하게 할 수 있습니까?
Dave M

2

VM을 등록하고 설정을 조정 한 후, KISS 원칙에 따라, 단지 양측이 전원이 꺼진 상태에서 파일.rsync*.vdi

rsync -aPh <path-to-vm>/<diskname>.vdi <remote>:<path-to-vm>/

물론 충돌을 "병합"할 수있는 방법이 없으므로 VM을 변경하고 이러한 변경 사항을 반영하는 방법에 대해 훈련을 받아야합니다.

한편, 대부분의 개인 데이터는 NAS에 저장하여 항상 최신 상태이며 모든 컴퓨터에서 액세스 할 수 있습니다. 또한 스왑 파티션 또는 기타 임시 저장소를 포함하도록 시스템의 .vdi 크기를 늘리지 않도록 추가 .vdi 디스크를 마운트 할 수 있습니다.

Windows에있는 경우 ssh 및 rsync 프로그램에 cygwin (또는 msys2)을 설치해야합니다.


1

사용 사례에 따라 가능한 해결책 중 하나는 cjpembo의 답변에 대한 변형입니다.

별도의 두 컴퓨터가 모두 같은 위치에있는 동일한 LAN에있는 경우 ESXi 서버 또는 유사한 컴퓨터에서 하나의 VM을 실행하고 관리 도구 (또는 SSH)의 원격 콘솔 기능을 사용하여 액세스 할 수 있습니다. 다른 두 컴퓨터에서

VM을 사용하려는 컴퓨터 중 하나가 이동하는 랩톱 인 경우에는 특히 "호스트"와 "게스트"간에 많은 양의 데이터를 공유해야하는 경우 솔루션이 아닐 수 있습니다. 환경.

VM이 상대적으로 독립적 인 경우 VMware의 원격 콘솔 기능이 매우 효율적이므로 VM에서 비디오를 재생하지 않으면 원격으로도 충분하게 작동 할 수 있습니다.


0

usb c 디스크의 외부 ssd를 사용하여 이것을 달성했습니다. VM은 ssd 디스크에 있으며 두 랩톱의 가상 상자 설정에서 참조됩니다. USB 3.1 Gen2 Type-C (10Gbps), 540MB / s 모델을 사용했는데 성능이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.