오류 처리

Migrate to Containers는 마이그레이션 중에 두 가지 유형의 오류(retryableterminal)를 감지할 수 있습니다. Migrate to Containers에서 오류를 감지하면 수행하는 작업은 감지된 오류 유형에 따라 달라집니다.

  • Retryable 오류: Migrate to Containers에서 작업을 다시 시도합니다. 감지되면 작업 상태가 다시 시도하는 중으로 설정됩니다.

  • Terminal 오류: 이러한 유형의 오류를 해결하려면 일반적으로 수동 개입이 필요하므로 Migrate to Containers는 작업을 중지합니다. 감지되면 작업 상태가 오류로 설정됩니다.

작업 상태 보기

migctl 도구나 Google Cloud Console을 사용하여 마이그레이션 진행 상태를 봅니다. Google Cloud Console에서 마이그레이션의 상태 열을 사용하여 현재 마이그레이션 상태를 확인합니다.

다음 migctl 명령어를 사용할 수도 있습니다.

migctl migration status my-migration

출력 형식은 다음과 같습니다.

NAME            CURRENT-OPERATION       PROGRESS        STEP            STATUS   AGE
my-migration    GenerateArtifacts       [1/1]           ExtractImage    Retrying 12m2s

migctl을 사용하면 상세 상태 출력을 얻을 수도 있습니다. 상세 출력 하단에는 이벤트 목록과 추가 오류 정보가 있습니다. 예를 들어 다음 명령어는 마이그레이션의 상세 상태를 가져오기 위해 -v 옵션을 지정합니다.

migctl migration status my-migration -v

출력에는 오류를 진단하는 데 도움이 되는 이벤트 및 오류 메시지가 포함됩니다.

Events:
  Type     Reason             Age                     From                                           Message
  ----     ------             ----                    ----                                           -------
  Warning  GetInstanceFailed  2m39s (x91 over 5h32m)  SourceSnapshot sourcesnapshot-58a2405a-603ba2  Failed quering VM my-vm, with error: googleapi: got HTTP response code 404 with body:

이 예시에서 메시지는 my-vm이라는 VM을 찾을 수 없음을 나타냅니다.

Retryable 오류

재시도 가능한 오류는 작업을 다시 시도하거나 사용자 개입을 통해 해결될 수 있는 오류 유형입니다. 재시도하여 작업이 성공하면 처리가 계속됩니다.

예를 들어 Compute Engine VM에 대해 마이그레이션을 만들기 전에 VM을 먼저 종료해야 합니다. VM이 종료되지 않았는데 마이그레이션을 실행하려고 하면 Migrate to Containers에서 오류를 감지하고 마이그레이션을 재시도합니다. Migrate to Containers는 VM을 종료하거나 마이그레이션을 취소할 때까지 작업을 계속 재시도합니다.

Terminal 오류

Terminal 오류는 작업을 재시도하여 해결할 수 없는 오류입니다. 일반적으로 Terminal 오류는 사용자 상호작용으로만 해결됩니다.

Terminal 오류를 처리하는 방법은 오류 및 마이그레이션 프로세스에서 오류가 발생한 위치에 따라 다릅니다.

  • 마이그레이션 생성 시 Terminal 오류가 발생하면 마이그레이션을 삭제하고 오류를 수정한 후 마이그레이션을 다시 만들어야 합니다.

  • 마이그레이션 실행 작업에서 마이그레이션 아티팩트를 생성할 때 Terminal 오류가 발생하면 오류를 수동으로 해결하고 작업을 재시도할 수 있습니다.

예를 들어 VM에 IIS를 설치하지 않고 Windows IIS 애플리케이션을 마이그레이션하려고 한다고 합시다. 이 시나리오에서는 Migrate to Containers를 사용하기 위해 Windows IIS 애플리케이션에 Microsoft IIS 7 이상이 설치되어 있어야 하기 때문에 터미널 오류가 발생합니다. 마이그레이션을 진행하려면 VM에서 이 문제를 해결해야 합니다.

Terminal 오류는 오류 상태를 표시하며 오류 진단에 사용할 수 있는 오류 관련 추가 정보를 표시할 수 있습니다.