기존 인프라에서 가상 서버 마이그레이션

클래식 인프라에서 가상 서버 인스턴스를 마이그레이션하여 IBM Cloud VPC 인프라 요구 사항을 충족할 수 있습니다. 그런 다음 인스턴스에서 이미지 템플릿을 생성하여 VPC 환경에 배포할 수 있습니다.

사용 중단됨 클래식 인프라에서 가상 서버 인스턴스를 마이그레이션하는 것은 LinuxONE ( s390x 프로세서 아키텍처)에서 지원되지 않습니다.

시작하기 전에

시작하기 전에 다음 전제 조건이 충족되는지 확인하세요.

기존 인프라에서 가상 서버 마이그레이션

클래식 인프라의 가상 서버와 연결된 이미지 템플릿을 IBM Cloud VPC 인프라로 마이그레이션하려면 다음 단계를 완료하세요. 사용자 정의 이미지를 IBM Cloud VPC에서 사용할 수 있는 경우 이를 사용하여 가상 서버를 작성할 수 있습니다.

다음 목록은 마이그레이션 단계에 대한 개요입니다.

  1. IBM Cloud VPC 인프라로 마이그레이션할 가상 서버의 경우 이미지 템플리트를 작성하십시오. 다음 마이그레이션 단계를 진행하기 전에 이미지 템플리트를 작성해야 합니다.
  2. 이미지 템플리트에서 백업 인스턴스로 사용할 가상 서버를 프로비저닝하십시오.
  3. IBM Cloud VPC에 배치하기 위한 요구사항을 충족하도록 백업 가상 서버를 사용자 정의하십시오.
  4. 수정한 가상 서버의 이미지 템플릿을 만듭니다.
  5. 이미지 템플리트를 IBM Cloud Object Storage로 내보내십시오.
  6. 사용자 정의 이미지를 IBM Cloud VPC 인프라로 가져오십시오.
  7. 사용자 지정 이미지를 사용하여 IBM Cloud VPC 에서 가상 서버를 만듭니다.

셸 스크립트를 사용하여 가상 서버를 마이그레이션하는 방법에 대한 자세한 내용은 vpc-tutorials를 참조하세요. 클래식에서 IBM Cloud VPC 로 마이그레이션하는 방법에 대한 자세한 내용은 시작하기 VPC+ Cloud Migration 을 참조하세요.

1단계 - 마이그레이션할 가상 서버 식별 및 이미지 템플릿 만들기

IBM Cloud VPC 인프라로 마이그레이션할 클래식 인프라의 가상 서버에서 이미지 템플리트를 작성할 수 있습니다. 이미지 템플리트는 기존 가상 서버의 이미지를 캡처합니다. 이미지 템플리트에 대한 다음 정보를 이해해야 합니다.

  • 단일 기본 부팅 볼륨(또는 디스크)과 관련 파일이 있는 이미지 템플릿만 IBM Cloud VPC 인프라로 가져올 수 있습니다.
  • 이미지 템플리트에는 기본 부트 디스크의 운영 체제와 사용자가 설치한 항목(예: PHP 또는 Python)이 포함됩니다. 이미지 템플릿의 데이터 용량은 10GB에서 250GB 사이입니다. 10GB 미만의 이미지는 10GB로 반올림됩니다.
  • IBM Cloud VPC 에서 가져온 사용자 지정 이미지를 사용하여 가상 서버를 만들면 새 프로필을 선택하고, SSH 키를 할당하고, 사용자 데이터를 지정하고, 네트워크 인터페이스를 구성할 수 있습니다.

이미지 템플릿을 사용자 지정 이미지로 IBM Cloud VPC 으로 가져올 때 이미지 템플릿의 보조 디스크 및 관련 파일은 지원되지 않습니다.

마이그레이션하려는 가상 서버의 이미지 템플릿을 만들려면 다음 단계를 완료하세요.

  1. IBM Cloud 콘솔 의 대시보드에서 탐색 메뉴 메뉴 아이콘 > 인프라 > 클래식 인프라 > 디바이스 > 장치 목록 를 클릭하여 이미지 템플릿을 만듭니다.
  2. 사용하려는 가상 서버를 클릭합니다.
  3. 조치 메뉴에서 이미지 템플리트 작성을 선택하십시오. 쉽게 인식할 수 있는 이름으로 지정해야 합니다. 자세한 정보는 이미지 템플리트 작성을 참조하십시오.

2단계 - 이미지 템플릿을 찾아 가상 서버 프로비저닝하기

작성한 이미지 템플리트에서 가상 서버를 프로비저닝하십시오. 이 인스턴스는 백업입니다. 이 백업 가상 서버를 사용자 정의하여 IBM Cloud VPC의 요구사항을 충족시킬 수 있습니다.

이미지 템플릿에서 새 가상 서버를 만들려면 다음 단계를 완료하세요.

  1. 디바이스 > 관리 > 이미지 를 클릭하여 작성한 이미지 템플리트를 찾으십시오.
  2. 이미지 템플릿의 작업 아이콘 작업 아이콘을 클릭하고 공용 가상 서버 인스턴스 주문을 선택하여 이미지 템플릿에서 가상 서버를 프로비저닝합니다.

3단계 - 다음 용도로 가상 서버 사용자 지정 IBM Cloud VPC

IBM Cloud VPC 인프라에 대한 이미지를 준비하려면 다음 사용자 정의를 완료하십시오. 일부 사용자 지정 요구 사항은 이미 클래식 인프라 가상 서버 인스턴스에서 충족되었을 수 있습니다.

Linux 가상 서버 사용자 정의

Linux 인스턴스에서 사용자 정의하려면 Linux 사용자 정의 이미지 작성 의 지시사항을 따르십시오. 인스턴스는 다음 요구사항을 충족해야 합니다.

  • 커널 명령줄에는 다음 인수가 있습니다: nomodeset, nofb, vga=normal, console=ttyS0.
  • Virtio 드라이버 및 Virtio에 필요한 코드가 설치되었습니다.
  • 이미지가 cloud-init를 사용하도록 설정되어 있습니다.
  • 마운트된 모든 보조 스토리지 볼륨의 경우, fstab 항목 nofail 을 포함해야 합니다.

Windows 인스턴스 사용자 정의

Windows 가상 서버에서 다음 사용자 지정을 완료하여 IBM Cloud VPC 에 대한 이미지를 준비합니다.

  1. 원격 데스크톱을 사용하여 클래식 Windows 서버에 액세스합니다.

  2. 이 서버에 Windows VirtIO 드라이버를 다운로드하여 설치하십시오. virtio-win 드라이버 파일은 다음 단계를 통해 기존 IBM Cloud VPC 가상 서버에서 가져올 수 있습니다.

    Red Hat 에서 구한 드라이버는 Microsoft에서 인증한 드라이버이므로 라이선스가 있는 RHEL 버전 8 또는 9 인스턴스에서 드라이버를 구할 것을 권장합니다. 최소 권장되는 Red Hat virtio-win 패키지 버전은 virtio-win-1.9.24 입니다. 그러나 최신 패키지를 사용하는 것이 가장 좋습니다.

    Red Hat virtio-win-1.9.24 ISO에는 다음과 같은 특정 드라이버 버전이 포함되어 있습니다.

    100.84.104.19500 oem10.inf \vioprot.inf_amd64_af0659efdaba9e4b\vioprot.inf
    100.90.104.21400 oem11.inf \viofs.inf_amd64_c6f785e21f3f6f80\viofs.inf
    100.85.104.20200 oem12.inf \viogpudo.inf_amd64_b19dcf9947e73e5a\viogpudo.inf
    100.85.104.19900 oem13.inf \vioinput.inf_amd64_4505a789e17b5f89\vioinput.inf
    100.81.104.17500 oem14.inf \viorng.inf_amd64_ef304eab276a3e61\viorng.inf
    100.85.104.19900 oem15.inf \vioser.inf_amd64_cb4783c018c10eba\vioser.inf
    100.90.104.21500 oem2.inf  \vioscsi.inf_amd64_02a46a7a223648d1\vioscsi.inf
    100.90.104.21500 oem3.inf  \viostor.inf_amd64_520417bbc533faba\viostor.inf
    100.85.104.20700 oem4.inf  \balloon.inf_amd64_afa8c93081df5458\balloon.inf
    100.90.104.21400 oem5.inf  \netkvm.inf_amd64_0efff05c07fcee39\netkvm.inf
    100.85.104.19900 oem6.inf  \pvpanic.inf_amd64_b7028360ef636f8b\pvpanic.inf
    10.0.0.21000     oem9.inf  \qxldod.inf_amd64_6199f9ecf2339133\qxldod.inf
    
    1. IBM Cloud VPC에서 기존 RHEL 가상 서버를 프로비저닝하거나 액세스하여 필수 virtio-win 드라이버를 확보하십시오.

    2. IBM Cloud VPC에서 프로비저닝한 RHEL 가상 서버에서 다음 명령을 실행하여 virtio-win 패키지를 설치하십시오. 이 예제에서 virtio-win 패키지는 RHEL 버전 8에 설치됩니다.

      yum install virtio-win
      ```      {: pre}
      
      The output looks like the following example.
      
      ```text {: screen}
      Installed: virtio-win-1.9.24-2.el8_5.noarch
      
    3. /usr/share/virtio-win 디렉토리의 virtio-win ISO에 액세스하십시오.

      cd /usr/share/virtio-win/
      
    4. WinSCP 유틸리티를 사용하여 RHEL VPC 서버에서 Classic Windows 서버로 virtio-win ISO 파일 (예: virtio-win-1.9.24.iso ) 을 복사하십시오.

    5. 다운로드된 ISO를 찾아 두 번 클릭하여 마운트하십시오.

    6. 마운트된 ISO에서 virtio-win-guest-tools.exe 을 실행하여 설치를 완료합니다.

      1. 다운로드된 ISO를 찾아 두 번 클릭하여 마운트하십시오.
      2. 마운트된 ISO에서 virtio-win-guest-tools.exe 을 실행하여 설치를 완료합니다.
  3. Cloudbase-Init 설치 패키지에서 cloudbase-init를 설치하고 구성하십시오.

  4. 다음 값과 일치하도록 cloudbase-init.conf 파일 (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init.conf) 을 수정하십시오. 파일에서 다른 컨텐츠를 제거하지 마십시오.

    [DEFAULT]
    #  "cloudbase-init.conf" is used for every boot
    config_drive_types=vfat,iso
    config_drive_locations=hdd,partition
    activate_windows=true
    kms_host=kms.adn.networklayer.com:1688
    mtu_use_dhcp_config=false
    real_time_clock_utc=false
    bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe
    mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\
    debug=true
    log_dir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\
    log_file=cloudbase-init.log
    default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN,requests=WARN
    local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\
    metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService,
    # enabled plugins - executed in order
    plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin,
              cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin,
              cloudbaseinit.plugins.windows.licensing.WindowsLicensingPlugin,
              cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin,
              cloudbaseinit.plugins.common.userdata.UserDataPlugin,
              cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin
    

    사용자 지정 이미지에 대한 자체 라이선스를 가져오려는 경우 cloudbase-init.conf 파일에서 다음 줄을 제거하세요.

    activate_windows=true
    kms_host=kms.adn.networklayer.com:1688
    
  5. 다음 값과 일치하도록 cloudbase-init-unattend.conf 파일 (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init-unattend.conf) 을 수정하십시오. 파일에서 다른 컨텐츠를 제거하지 마십시오.

    [DEFAULT]
    #  "cloudbase-init-unattend.conf" is used during the Sysprep phase
    username=Administrator
    inject_user_password=true
    first_logon_behaviour=no
    config_drive_types=vfat
    config_drive_locations=hdd
    allow_reboot=false
    stop_service_on_exit=false
    mtu_use_dhcp_config=false
    bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe
    mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\
    debug=true
    log_dir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\
    log_file=cloudbase-init-unattend.log
    default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN,requests=WARN
    local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\
    metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService,
    # enabled plugins - executed in order
     plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin,
              cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin,
              cloudbaseinit.plugins.windows.createuser.CreateUserPlugin,
              cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin,
              cloudbaseinit.plugins.common.setuserpassword.SetUserPasswordPlugin,
              cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin
    
  6. Unattend.xml 파일 (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\Unattend.xml) 을 수정하고 PersistAllDeviceInstalls 값을 false 로 설정하십시오.

  7. 명령 프롬프트에서 다음 명령을 사용하여 Sysprep 를 실행하십시오.

    C:\Windows\System32\Sysprep\Sysprep.exe /oobe /generalize /shutdown "/unattend:C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\Unattend.xml"
    

    이 명령은 시스템을 종료합니다.

4단계-사용자 정의된 가상 서버의 이미지 템플리트 작성

백업 가상 서버에서 사용자 정의가 완료되면 다음 단계를 사용하여 새 이미지 템플리트를 작성하십시오.

  1. IBM Cloud 콘솔의 대시보드에서 메뉴 아이콘 > 인프라 > 클래식 인프라 > 디바이스 > 디바이스 목록을 클릭하여 이미지 템플릿을 만듭니다.
  2. 이전에 사용자 정의한 백업 가상 서버를 클릭하십시오.
  3. 조치 메뉴에서 이미지 템플리트 작성을 선택하십시오. 다음 단계를 진행하기 전에 이미지 템플리트를 작성해야 합니다.

5단계 - 이미지 템플릿을 다음 주소로 내보내기 IBM Cloud Object Storage

수정한 가상 서버에서 만든 이미지 템플릿을 IBM Cloud Object Storage 으로 내보내려면 다음 단계를 완료합니다.

  1. 장치 > 관리 > 이미지를 클릭하여 이미지 템플릿 페이지에서 생성한 새 이미지 템플릿을 찾습니다.
  2. 이미지 템플릿 페이지에서 내보내려는 이미지 템플릿의 ...을 클릭하고 IBM Cloud Object Storage 으로 내보내기를 선택합니다. 자세한 정보는 IBM Cloud Object Storage로 내보내기를 참조하십시오.

6단계 - IBM Cloud VPC 인프라로 사용자 정의 이미지 가져오기

  1. IBM Cloud 콘솔에서 탐색 메뉴 아이콘 메뉴 아이콘 인프라 > 인프라 VPC 아이콘 > 계산 > 이미지를 클릭합니다.
  2. 사용자 정의 이미지 탭에서 사용자 정의 이미지 가져오기를 클릭하십시오. 자세한 정보는 사용자 정의 이미지 가져오기를 참조하십시오.

7단계-사용자 정의 이미지를 사용하여 IBM Cloud VPC 에서 가상 서버 작성

가져온 이미지를 VPC용 이미지 페이지의 사용자 지정 이미지 탭에서 사용할 수 있게 되면 이를 사용하여 IBM Cloud VPC 인프라에서 가상 서버 인스턴스를 만들 수 있습니다.

  1. 사용자 지정 이미지 탭에서 가져온 사용자 지정 이미지의 이름을 찾아 작업 추가 작업 아이콘을 클릭한 다음 새 가상 서버를 선택합니다.
  2. IBM Cloud 콘솔에서 탐색 메뉴 아이콘 메뉴 아이콘 인프라 > 인프라 VPC 아이콘 > 컴퓨팅 > 가상 서버 인스턴스로 이동합니다.
  3. 가상 서버 인스턴스 페이지에서 조치 추가 조치 아이콘 을 클릭하십시오. 가상 서버에 액세스하기 전에 가상 서버를 중지한 후 시작하십시오.
  4. 인바운드 및 아웃바운드 보안 그룹을 작성하여 RDP 트래픽 포트 3389에 대한 액세스를 제공하십시오. 자세한 정보는 리소스에 대한 보안 그룹 설정 을 참조하십시오.
  5. 유동 IP를 사용하여 Windows및 RDP에 액세스할 수 있도록 비밀번호를 생성하려면 Windows 인스턴스에 연결 을 참조하십시오.