기존 VM에서 새 VM으로 워크로드 이동


특정 상황에서는 기존 가상 머신(VM) 인스턴스에서 새 VM으로 워크로드를 이동해야 합니다. 새 VM으로 이동하는 이유는 다음과 같습니다.

  • 운영체제를 새 출시 버전으로 업그레이드
  • x86 아키텍처에서 Arm 아키텍처로 전환
  • 최신 세대 VM 머신 계열로 업그레이드

이러한 경우 새 VM을 만들고 워크로드를 새 VM으로 이동해야 할 수 있습니다.

최신 VM 머신 시리즈로 업그레이드할 때 현재 VM의 운영체제가 새 세대에서 지원되고 현재 VM에서 새 머신 시리즈에서 지원되지 않는 기능이나 디스크 유형을 사용하지 않는 경우 VM을 새로운 머신 시리즈로 이동에 설명된 간단한 절차를 사용할 수도 있습니다.

새 VM으로 이동 준비

현재 VM을 새 VM으로 이동할 수 있습니다(예: n2d-standard-32에서 t2a-standard-32로 또는 m1-ultramem-160에서 m3-ultramem-128로). 마이그레이션을 시작하기 전에 다음 항목을 검토하고 해결합니다.

  1. 새 VM 머신 계열에 사용 가능한 리전 및 영역을 검토합니다. 일부 리전에서는 새 머신 계열을 현재 VM으로 사용하지 못할 수 있습니다. 필요에 따라 배포, 가용성, 재해 복구 계획을 조정합니다.
  2. 현재 VM의 운영체제 버전이 새 VM 머신 계열에서 지원되는지 확인합니다. 자세한 내용은 운영체제 세부정보를 참조하세요.
    • 새 VM에 새 버전의 운영체제가 필요한 경우 애플리케이션이 최신 OS 버전과 호환되는지 확인합니다.
    • 현재 운영체제에 Arm 및 Arm 이미지를 사용할 수 없으면 애플리케이션을 실행할 새 운영체제를 선택하고 애플리케이션이 새 운영체제와 호환되는지 확인합니다.
  3. 머신 계열 문서를 검토하여 새 VM에 사용할 수 있는 기능을 확인합니다. 새 VM 머신 계열은 커스텀 머신 유형 또는 보안 VM과 같이 현재 VM에서 사용하는 것과 동일한 기능을 지원하지 않을 수 있습니다.
  4. 새 VM 머신 계열에 대해 지원되는 인터페이스를 검토합니다. T2A 및 3세대 VM(예: M3 또는 C3)과 같은 새로운 VM 계열은 gVNIC 및 NVMe 인스턴스만 지원합니다. 애플리케이션에서 이러한 인터페이스를 지원하는지 확인합니다.
    1. SCSI 디스크 인터페이스를 사용하는 VM에서 NVMe 디스크 인터페이스만 지원하는 VM으로 마이그레이션할 경우 애플리케이션과 스크립트에서 sda1과 같이 기기 이름으로 연결된 디스크를 참조하지 않는지 확인합니다. 대신 디스크에 대해 /dev/disk/by-id/에 표시되는 심볼릭 링크를 사용합니다.
    2. Microsoft Windows를 실행하는 VM에서 마이그레이션하는 경우 2022년 5월 이전 생성된 VM에서 NVME 드라이버를 교체해야 합니다. 이는 현재 VM의 부팅 디스크와 새 VM을 만드는 데 사용되는 이전에 생성된 스냅샷 또는 커스텀 이미지에 적용됩니다.
    3. 기본(VirtIO) 네트워크 인터페이스를 사용한 1세대 또는 2세대 VM에서 gVNIC 네트워크 인터페이스만 지원하는 3세대 또는 T2A VM으로 마이그레이션하는 경우 다음 문제를을 해결해야 할 수 있습니다.
  5. 새 VM에 지원되는 디스크 유형을 검토합니다. M3 및 C3와 같은 최신 VM 계열은 pd-standard Persistent Disk 유형을 지원하지 않습니다. 현재 VM이 새 VM 계열에서 지원되지 않는 부팅 디스크 유형을 사용하는 경우 워크로드를 새 VM으로 이동에 설명된 대로 스냅샷을 사용하여 부팅 디스크를 새 디스크 유형으로 변경할 수 있습니다.
  6. VM에 로컬 SSD가 연결되었고 3세대 VM으로 이동하려면 새 머신 유형에 대해 로컬 SSD 디스크가 지원되는지 확인합니다.
  7. 새 VM에서 다른 아키텍처를 사용하는 경우 애플리케이션이나 프로그램이 새 아키텍처에서 실행될 수 있는지 또는 수정이 필요한지 확인합니다.
    • 애플리케이션이 최신 버전의 프로그래밍 언어로 작성된 경우 추가로 수정하지 않고도 Arm과 호환될 가능성이 높습니다.
    • Python, Ruby, 자바스크립트와 같은 인터프리트 언어를 실행하려면 Arm VM에 Arm과 호환되는 런타임 환경을 설치해야 합니다.
  8. 컴파일된 x86 바이너리는 Arm에서 실행될 수 없으며 컴파일된 Arm 바이너리는 x86 플랫폼에서 실행될 수 없습니다.
    • 일반적으로 소스 코드를 수정하지 않고 Arm에 바이너리를 다시 컴파일해야 합니다.
    • 또한 x86 VM에 사용된 버전에 해당하는 Arm이 포함되도록 패키지와 라이브러리를 업그레이드해야 할 수도 있습니다.

새 VM으로 워크로드 이동

워크로드를 새 VM으로 이동하려면 먼저 새 VM을 만든 후 워크로드를 새 VM으로 이동합니다.

  1. 이 페이지에서 새로운 VM으로 이동 준비 단계를 완료합니다.
  2. 기존 VM에 보존하려는 데이터가 포함된 로컬 SSD 디스크가 사용되는 경우 이러한 디스크의 콘텐츠를 지원되는 영구 디스크 유형으로 이동합니다.
  3. 현재 VM에 부팅 디스크로 pd-standard 영구 디스크가 사용되는 경우 다음 단계에 따라 pd-standard 디스크를 지원하지 않는 VM으로 이동합니다.

    1. 매우 적은 수의 VM을 마이그레이션하는 경우:
      1. 현재 VM의 pd-standard 부팅 디스크에 대한 스냅샷을 만듭니다.
      2. 부팅 디스크 스냅샷에서 VM 만들기. 새 VM을 만들 때 부팅 디스크에 지원되는 디스크 유형(예: PD-Balanced(pd-balanced) 또는 PD-SSD(pd-ssd)) 중 하나를 선택합니다.
    2. 여러 VM을 마이그레이션하는 경우 커스텀 이미지를 사용하여 새 VM을 만듭니다.
      1. 현재 VM의 pd-standard 부팅 디스크에 대한 스냅샷을 만듭니다.
      2. 디스크 스냅샷을 소스로 사용하여 커스텀 이미지를 만듭니다.
      3. 커스텀 이미지를 사용하여 VM 만들기 새 VM을 만들 때 부팅 디스크에 지원되는 디스크 유형(예: PD-Balanced(pd-balanced) 또는 PD-SSD(pd-ssd)) 중 하나를 선택합니다.
  4. 현재 VM이 새 VM 머신 계열에서 지원되는 부팅 디스크 유형을 사용하는 경우 Arm VM 인스턴스 만들기 및 시작 또는VM 인스턴스 만들기 및 시작의 안내에 따라 사양에 맞게 새 VM을 구성합니다.

  5. 새 VM에서 워크로드를 지원하는 데 필요한 사용자, 드라이버, 패키지, 파일 디렉터리를 구성합니다.

  6. 비부팅 Persistent Disk를 이전 VM에서 새 VM으로 이동합니다.

    • 새 VM 머신 계열에서 지원되는 디스크 유형의 경우 이전 VM에서 Persistent Disk를 분리하고 새 VM에 추가하면 됩니다.
    • 새 VM 머신 계열에서 지원되지 않는 디스크 유형의 경우 디스크의 스냅샷을 만들고 크기가 같거나 더 큰 새 디스크를 새 VM에 추가하고 새 디스크에 스냅샷을 복원할 수 있습니다.
    • 원래 VM을 삭제하지 않았으면 또는 한 VM에서 다른 VM으로 파일을 전송하면 됩니다.
  7. 수정된 애플리케이션 및 프로그램을 새 VM에 설치합니다. 필요한 경우 새 운영체제나 아키텍처에서 프로그램을 다시 컴파일합니다.

  8. 새 VM에 원래 VM과 연결된 모든 고정 IP 주소를 재할당합니다.

  9. 선택사항: Persistent Disk에 저장된 데이터를 로컬 SSD로 다시 이동합니다.

x86 VM에서 Arm VM으로 워크로드를 이동할 때 문제가 발생하면 기술계정 관리자(TAM) 또는 Google Professional Services Organization(PSO)에 지원을 문의하세요.

다음 단계