Compute Engine 인스턴스 수명 주기

이 문서에서는 Compute Engine 인스턴스의 수명 주기에 대해 설명하며, 생성부터 삭제까지 거칠 수 있는 다양한 상태를 다룹니다. 하나 이상의 인스턴스의 상태를 확인하는 방법을 알아보려면 다음을 참조하세요.

인스턴스의 수명 주기를 이해하면 다음을 더 효과적으로 수행할 수 있습니다.

  • 인스턴스 문제 해결

  • 인스턴스 리소스 관리

  • 인스턴스 마이그레이션 계획

인스턴스 상태

컴퓨팅 인스턴스는 수명 주기에 따라 여러 상태로 전환될 수 있습니다. 인스턴스를 만들 때 Compute Engine은 인스턴스를 시작할 리소스를 프로비저닝합니다. 이후 인스턴스가 스테이징으로 이동하여 첫 부팅을 준비합니다. 인스턴스가 시작되면 실행 중인 것으로 간주됩니다. 실행 중인 인스턴스는 삭제될 때까지 반복적으로 중지 및 재시작 또는 일시중지 및 재개를 반복할 수 있습니다.

다음 다이어그램은 Compute Engine가 인스턴스에 설정할 수 있는 다양한 상태를 보여줍니다.

Compute Engine 인스턴스의 다양한 상태를 보여주는 플로우 차트

앞의 다이어그램에 표시된 상태는 다음과 같습니다.

  • PENDING: 대기 시간(requestValidForDuration)이 90초 이상인 독립형 flex-start VM을 만든 후 VM 상태가 PENDING으로 변경됩니다. 이 상태에서 Compute Engine은 대기 시간이 끝날 때까지 VM을 시작하는 데 필요한 리소스를 획득하려고 시도합니다. 이 시간 내에 Compute Engine에서 리소스를 획득하고 해당 리소스에 대한 할당량이 충분하면 VM 상태가 PROVISIONING으로 변경됩니다. 그렇지 않으면 오류가 발생하고 Compute Engine에서 flex-start VM을 삭제합니다. VM이 더 이상 필요하지 않은 경우 대기 시간이 끝나기 전에 선택적으로 flex-start VM을 삭제할 수 있습니다.

  • PROVISIONING: 인스턴스를 만들거나 다시 시작하거나 재개한 후 Compute Engine에서 인스턴스에 리소스를 할당합니다.

  • STAGING: Compute Engine에서 다음 이유 중 하나로 인해 첫 번째 부팅을 위해 인스턴스를 준비하고 있습니다.

    • Compute Engine에서 여전히 인스턴스를 만들고 구성하는 중입니다.

    • 사용자 또는 예약된 작업에서 인스턴스 재시작 또는 재개를 요청했습니다.

    이 상태에서는 인스턴스가 아직 실행되고 있지 않습니다.

  • RUNNING: Compute Engine에서 인스턴스를 부팅 중이거나 인스턴스가 실행 중입니다. 이 상태에서는 인스턴스를 중지하거나, 정지하거나, 삭제할 수 있습니다. 또한 Compute Engine은 예약된 작업을 위해 인스턴스를 중지하거나 삭제할 수 있으며, 하드웨어 오류가 발생하고 인스턴스가 관리형 인스턴스 그룹(MIG)의 일부인 경우 인스턴스를 복구할 수 있습니다.

  • PENDING_STOP: 인스턴스가 단계적으로 종료되고 있습니다. 이 종료 프로세스는 단계적 종료를 사용 설정하고 인스턴스 중지 또는 삭제를 요청했거나 Compute Engine에서 예약된 중지 또는 삭제를 위해 자동으로 종료하는 경우에만 발생합니다. 다음 중 하나가 발생하면 인스턴스 상태가 STOPPING으로 변경됩니다.

    • 단계적 종료를 수동으로 종료합니다.

    • 단계적 종료 기간이 타임아웃됩니다. 아직 실행 중인 작업이 있으면 Compute Engine에서 강제로 중지합니다.

  • STOPPING: 인스턴스가 게스트 OS를 종료합니다. 이는 다음 시나리오에서 발생합니다.

    • 사용자 또는 예약된 작업에서 인스턴스 중지 또는 삭제를 요청했습니다.

    • 하드웨어 오류가 발생했습니다.

    게스트 OS 종료를 건너뛰도록 인스턴스를 구성하지 않는 한 종료 시간은 인스턴스 유형에 따라 달라집니다. 하지만 하드웨어 오류로 인해 인스턴스가 중지되면 종료 시간이 예상 길이와 다를 수 있습니다. 게스트 OS가 종료된 후 실행 중인 작업에 따라 Compute Engine은 다음 중 하나를 실행합니다.

    • Compute Engine이 중지 작업을 완료하고 인스턴스 상태를 TERMINATED로 변경합니다.

    • Compute Engine에서 인스턴스와 연결된 모든 리소스를 삭제합니다.

  • TERMINATED: Compute Engine에서 중지 작업을 완료했습니다. 연결된 리소스는 사용자가 분리하지 않는 한 연결된 상태로 유지됩니다. 이 상태에서는 다시 시작하거나 삭제할 때까지 인스턴스가 중지된 상태로 유지됩니다. 인스턴스 재시작을 요청했지만 Compute Engine에서 요청된 리소스를 할당할 수 없는 경우 재시작 요청이 실패하고 인스턴스가 TERMINATED 상태로 유지됩니다. 그렇지 않으면 재시작 요청이 성공하고 인스턴스 상태가 PROVISIONING으로 변경됩니다.

  • REPAIRING: Compute Engine에서 인스턴스를 복구합니다. Compute Engine은 내부 오류가 발생하거나 유지보수로 인해 인스턴스의 호스트 서버를 사용할 수 없는 경우 인스턴스를 복구합니다. 인스턴스가 복구되는 동안은 다음과 같은 상황이 발생합니다.

    Compute Engine에서 인스턴스를 성공적으로 복구하면 복구 작업이 시작되기 전의 원래 상태로 인스턴스 상태가 반환됩니다. 이 상태는 STAGING, RUNNING, SUSPENDING 또는 STOPPING일 수 있습니다. 복구 작업이 완료된 후 인스턴스가 자동으로 다시 시작되도록(automaticRestart) 구성된 경우 복구 프로세스 중에 인스턴스를 선택적으로 중지할 수 있습니다. 이 작업은 복구가 완료된 후 인스턴스가 자동으로 다시 시작되는 것을 방지하여 인스턴스를 TERMINATED 상태로 유지합니다.

  • SUSPENDING: 사용자가 인스턴스 일시중지를 요청한 후 Compute Engine에서 인스턴스 일시중지 작업을 시작했습니다. 이 상태에서는 일시중지 작업이 완료될 때까지 기다릴 수 밖에 없습니다.

  • SUSPENDED: Compute Engine에서 일시중지 작업을 완료했습니다. 이 상태에서는 인스턴스를 재개하거나 삭제할 수 있습니다. 인스턴스 재개를 요청했지만 Compute Engine에서 요청한 리소스를 할당할 수 없는 경우 재개 요청이 실패하고 인스턴스가 SUSPENDED 상태로 유지됩니다. 그렇지 않으면 재개 요청이 성공하고 인스턴스 상태가 PROVISIONING으로 변경됩니다. 인스턴스는 최대 60일 동안 SUSPENDED 상태로 유지될 수 있습니다. 이 시간이 지나면 Compute Engine에서 인스턴스 상태를 TERMINATED로 변경합니다.

하드웨어 고장

드물지만 예상치 못한 중단, 하드웨어 오류, 기타 시스템 문제로 인해 컴퓨팅 인스턴스가 실패할 수 있습니다. 영구 스토리지 볼륨을 사용하고, 정기적으로 데이터를 백업하고, 단일 인스턴스 오류가 치명적인 영향을 주지 않도록 시스템을 설계하여 하드웨어 장애를 완화하는 것이 좋습니다. 자세한 내용은 강력한 시스템 설계 방법을 참조하세요.

인스턴스가 실패하면 Compute Engine은 동일한 부팅 디스크, 메타데이터, 인스턴스 설정을 사용하여 인스턴스를 자동으로 다시 시작합니다. 인스턴스의 자동 다시 시작 동작을 수정하려면 컴퓨팅 인스턴스의 호스트 유지보수 정책 설정을 참조하세요.

가격 책정

컴퓨팅 인스턴스의 요금은 다음과 같이 청구됩니다.

  • CPU 사용량의 경우 인스턴스가 다음 상태일 때 요금이 청구됩니다.

    • RUNNING

    • PENDING_STOP

  • 메모리 사용량의 경우 인스턴스가 다음 상태일 때 요금이 청구됩니다.

    • RUNNING

    • PENDING_STOP

    • SUSPENDING

    • SUSPENDED

  • 디스크나 외부 IP 주소와 같이 연결된 리소스의 경우 인스턴스 상태와 관계없이 리소스가 존재하는 동안 요금이 청구됩니다.

자세한 내용은 VM 인스턴스 가격 책정을 참조하세요.

다음 단계