문제

VMWare 서버(1.0.x)를 백업하는 가장 좋은 방법은 무엇입니까?문제의 가상 머신은 우리의 개발 환경이며 메인 네트워크에서 격리되어 실행됩니다(따라서 가상 서버에서 실제 서버로 데이터를 복사할 수는 없습니다).

이미지 파일은 서버가 실행 중일 때 일반적으로 사용 중이며 잠겨 있으므로 머신이 실행 중인 상태에서 백업하기가 어렵습니다.

현재:저는 떠날 때 서버를 수동으로 일시 중지하고 자정에 실행되어 이미지를 원격 NAS에 robocopy하는 예약된 작업을 수행합니다.

이상적으로는 가상 머신을 일시 중지하는 것을 기억하지 않고도 이 작업을 수행할 수 있는 더 좋은 방법이 있습니까?

도움이 되었습니까?

해결책

VMWare 서버에는 콘솔을 통해 수행할 수 있는 거의 모든 작업을 수행하는 데 사용할 수 있는 명령줄 도구 "vmware-cmd"가 포함되어 있습니다.

이 경우 백업을 시작하기 전에 간단히 "vmware-cmd susepend"를 스크립트에 추가하고, 백업이 완료된 후 "vmware-cmd start"를 추가하면 됩니다.

우리는 자동화된 DB 업그레이드를 실행할 수 있는 알려진 환경을 제공하기 위해 빌드 시스템의 일부로 vmware-server를 사용합니다. 따라서 결국 각 빌드의 일부로 상태를 롤백하고(CruiseControl에 의해 구동됨) 이 인터페이스가 매우 견고하다는 것을 알게 되었습니다. .

Usage: /usr/bin/vmware-cmd <options> <vm-cfg-path> <vm-action> <arguments>
       /usr/bin/vmware-cmd -s <options> <server-action> <arguments>

  Options:
    Connection Options:
       -H <host>       specifies an alternative host (if set, -U and -P must also be set)
       -O <port>       specifies an alternative port
       -U <username>   specifies a user
       -P <password>   specifies a password
    General Options:
       -h More detailed help.
       -q Quiet. Minimal output
       -v Verbose.

  Server Operations:
    /usr/bin/vmware-cmd -l 
    /usr/bin/vmware-cmd -s register <config_file_path>
    /usr/bin/vmware-cmd -s unregister <config_file_path>
    /usr/bin/vmware-cmd -s getresource <variable>
    /usr/bin/vmware-cmd -s setresource <variable> <value>

  VM Operations:
    /usr/bin/vmware-cmd <cfg> getconnectedusers
    /usr/bin/vmware-cmd <cfg> getstate
    /usr/bin/vmware-cmd <cfg> start <powerop_mode>
    /usr/bin/vmware-cmd <cfg> stop <powerop_mode>
    /usr/bin/vmware-cmd <cfg> reset <powerop_mode>
    /usr/bin/vmware-cmd <cfg> suspend <powerop_mode>
    /usr/bin/vmware-cmd <cfg> setconfig <variable> <value>
    /usr/bin/vmware-cmd <cfg> getconfig <variable>
    /usr/bin/vmware-cmd <cfg> setguestinfo <variable> <value>
    /usr/bin/vmware-cmd <cfg> getguestinfo <variable>
    /usr/bin/vmware-cmd <cfg> getid
    /usr/bin/vmware-cmd <cfg> getpid
    /usr/bin/vmware-cmd <cfg> getproductinfo <prodinfo>
    /usr/bin/vmware-cmd <cfg> connectdevice <device_name>
    /usr/bin/vmware-cmd <cfg> disconnectdevice <device_name>
    /usr/bin/vmware-cmd <cfg> getconfigfile
    /usr/bin/vmware-cmd <cfg> getheartbeat
    /usr/bin/vmware-cmd <cfg> getuptime
    /usr/bin/vmware-cmd <cfg> getremoteconnections
    /usr/bin/vmware-cmd <cfg> gettoolslastactive
    /usr/bin/vmware-cmd <cfg> getresource <variable>
    /usr/bin/vmware-cmd <cfg> setresource <variable> <value>
    /usr/bin/vmware-cmd <cfg> setrunasuser <username> <password>
    /usr/bin/vmware-cmd <cfg> getrunasuser
    /usr/bin/vmware-cmd <cfg> getcapabilities
    /usr/bin/vmware-cmd <cfg> addredo <disk_device_name>
    /usr/bin/vmware-cmd <cfg> commit <disk_device_name> <level> <freeze> <wait>
    /usr/bin/vmware-cmd <cfg> answer

다른 팁

rsync를 살펴볼 가치가 있나요?큰 이미지 파일의 일부만 변경되는 경우 rsync가 변경 사항을 복사하는 가장 빠른 방법일 수 있습니다.

여기에서 vmware server 2에서 VM을 백업하기 위한 따라하기 쉬운 가이드를 찾았습니다. VMware 서버 2 백업

제가 정확하게 기억한다면 VMWare Server에는 Perl이나 COM을 통해 사용할 수 있는 스크립팅 인터페이스가 있습니다.이를 사용하여 백업을 실행하기 전에 VM을 자동으로 일시 중지할 수 있습니다.

백업 소프트웨어가 섀도 복사본을 인식하는 경우에도 작동할 수 있습니다.

잠긴 VM 파일을 복사하는 (에헴) Hobocopy라는 도구가 있습니다.VM의 스냅샷을 찍은 다음 VMDK를 백업하는 것이 좋습니다.그런 다음 복사가 완료된 후 스냅샷을 병합합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top