이 문서에서는 Compute Engine 인스턴스를 중지하거나 다시 시작하는 방법을 설명합니다. 인스턴스 중지의 영향과 인스턴스 정지, 중지, 재설정 간의 차이점에 대해 자세히 알아보려면 Compute Engine 인스턴스 정지, 중지 또는 재설정을 참고하세요.
인스턴스를 중지하면 더 이상 사용하지 않거나 속성을 수정할 때 유용합니다(예: 머신 유형을 변경하거나 연결된 디스크 및 마운트된 디스크를 삭제하는 경우). 인스턴스를 중지한 후에는 다음 작업을 할 수 있습니다.
다시 시작하여 워크로드를 재개합니다.
더 이상 필요하지 않은 경우 삭제합니다.
인스턴스 중지 또는 다시 시작을 자동화하려면 다음을 참고하세요.
시작하기 전에
-
아직 인증을 설정하지 않았다면 설정합니다.
인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다.
로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음 옵션 중 하나를 선택하여 Compute Engine에 인증하면 됩니다.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
인스턴스를 중지하려면 인스턴스에서
compute.instances.stop
를 실행합니다. -
게스트 OS 내에서 인스턴스 중지: 인스턴스 수준 공개 SSH 키를 사용하는 경우 인스턴스에서
compute.instances.setMetadata
-
인스턴스를 다시 시작하려면 인스턴스에 대한
compute.instances.start
권한을 사용합니다. -
암호화 키를 사용하는 인스턴스 다시 시작: 인스턴스에서
compute.instances.startWithEncryptionKey
-
로컬 SSD 디스크가 연결되지 않은 인스턴스를 한 번에 하나 이상 중지할 수 있습니다.
-
로컬 SSD 디스크가 연결된 인스턴스를 하나 이상 중지할 때 해당 디스크의 데이터를 삭제하거나 보존(미리보기)하도록 선택할 수 있습니다.
-
게스트 OS 내에서 인스턴스를 중지할 수 있습니다. 이는 인스턴스에 연결되어 있거나 인스턴스가 중지되기 전에 실행해야 하는 종료 스크립트가 있는 경우에 유용합니다. 그러나 로컬 SSD 디스크의 데이터를 영구 저장소 볼륨에 수동으로 백업하지 않으면 게스트 OS 내에서 인스턴스를 중지하면 연결된 로컬 SSD 디스크의 데이터가 삭제됩니다.
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
중지할 실행 중인 인스턴스를 선택합니다.
중지를 클릭한 다음 중지를 클릭하여 확인합니다.
INSTANCE_NAMES
: 공백으로 구분된 인스턴스 이름 목록입니다(예:instance-01 instance-02 instance-03
).ZONE
: 인스턴스가 있는 영역입니다.INSTANCE_NAME
: 인스턴스 이름입니다.PROJECT_ID
: 인스턴스가 있는 프로젝트의 ID입니다.ZONE
: 인스턴스가 있는 영역입니다.인스턴스에 연결된 로컬 SSD 디스크의 데이터를 보존하려면 gcloud CLI 또는 REST API를 사용하여 인스턴스를 중지합니다.
인스턴스를 여러 개 동시에 중지하려면 Google Cloud 콘솔을 사용하거나 같은 영역에 있는 인스턴스의 경우 gcloud CLI를 사용합니다.
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
중지할 실행 중인 인스턴스를 선택합니다.
중지를 클릭한 다음 중지를 클릭하여 확인합니다.
로컬 SSD 데이터를 삭제하려면
--discard-local-ssd=true
플래그와 함께gcloud compute instances stop
명령어를 사용합니다.gcloud compute instances stop INSTANCE_NAMES \ --discard-local-ssd=true \ --zone=ZONE
로컬 SSD 데이터를 보존하려면
--discard-local-ssd=false
플래그와 함께gcloud beta compute instances stop
명령어를 사용합니다.gcloud beta compute instances stop INSTANCE_NAMES \ --discard-local-ssd=false \ --zone=ZONE
INSTANCE_NAMES
: 공백으로 구분된 인스턴스 이름 목록입니다(예:instance-01 instance-02 instance-03
).ZONE
: 인스턴스가 있는 영역입니다.로컬 SSD 데이터를 삭제하려면
instances.stop
메서드에POST
요청을 보냅니다. 요청 URL에true
로 설정된discardLocalSsd
쿼리 매개변수를 포함합니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop?discardLocalSsd=true
로컬 SSD 데이터를 보존하려면
beta.instances.stop
메서드에POST
요청을 보냅니다. 요청 URL에false
로 설정된discardLocalSsd
쿼리 매개변수를 포함합니다.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop?discardLocalSsd=false
PROJECT_ID
: 인스턴스가 있는 프로젝트의 ID입니다.ZONE
: 인스턴스가 있는 영역입니다.INSTANCE_NAME
: 인스턴스 이름입니다.아직 연결하지 않았다면 인스턴스에 연결합니다.
인스턴스를 중지하려면 다음 방법 중 하나를 선택합니다.
게스트 OS를 종료하기 전에 인스턴스에서 종료 스크립트를 실행할 수 있도록 허용하는 완전 종료의 경우 다음 명령어를 실행합니다.
sudo shutdown -h now
그렇지 않은 경우 강제 종료하려면 다음 명령어를 실행합니다.
sudo poweroff
아직 연결하지 않았다면 다음 방법 중 하나를 사용하여 인스턴스에 연결합니다.
인스턴스를 중지하려면 다음 방법 중 하나를 선택합니다.
게스트 OS를 종료하기 전에 인스턴스에서 종료 스크립트를 실행할 수 있도록 허용하는 완전 종료의 경우 다음 명령어를 실행합니다.
shutdown /s
그렇지 않은 경우 강제 종료하려면 다음 명령어를 실행합니다.
shutdown /f
인스턴스에 암호화된 디스크가 연결되어 있지 않으면 암호화된 디스크가 없는 인스턴스 다시 시작을 참고하세요.
그렇지 않은 경우 암호화된 디스크가 있는 인스턴스 다시 시작을 참고하세요.
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
인스턴스를 하나 이상 선택합니다.
시작/재개를 클릭합니다.
INSTANCE_NAMES
: 공백으로 구분된 인스턴스 이름 목록입니다(예:instance-01 instance-02 instance-03
).ZONE
: 인스턴스가 있는 영역입니다.INSTANCE_NAME
: 다시 시작할 인스턴스의 이름입니다.PROJECT_ID
: 인스턴스가 있는 프로젝트의 ID입니다.ZONE
: 인스턴스가 있는 영역입니다.Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
다시 시작할 인스턴스를 선택합니다.
시작/재개를 클릭합니다.
인스턴스에 연결된 각 암호화된 디스크의 암호화 키를 지정한 다음 시작을 클릭합니다.
INSTANCE_NAMES
: 공백으로 구분된 인스턴스 이름 목록입니다(예:instance-01 instance-02 instance-03
).ENCRYPTION_KEY_FILE
: 고객 제공 암호화 키가 포함된 JSON 파일의 상대 경로입니다. 인스턴스가 동일한 고객 제공 암호화 키를 사용하는 경우에만 여러 인스턴스를 동시에 다시 시작할 수 있습니다.ZONE
: 인스턴스가 있는 영역입니다.PROJECT_ID
: 인스턴스가 있는 프로젝트의 ID입니다.ZONE
: 인스턴스가 있는 영역입니다.INSTANCE_NAME
: 인스턴스 이름입니다.DISK_URL
: 고객 제공 암호화 키로 암호화된 연결 디스크의 전체 리소스 이름에 해당하는 리소스 URL입니다.ENCRYPTION_TYPE
: 사용 중인 디스크 암호화 유형이며 다음rawKey
,kmsKeyName
,rsaEncryptedKey
중 하나일 수 있습니다.rsaEncryptedKey
유형을 사용하는 경우beta.instances.startWithEncryptionKey
메서드에POST
요청을 실행합니다.ENCRYPTION_KEY
: 인스턴스에 연결된 영구 디스크를 암호화하는 데 사용되는 암호화 키입니다.rawKey
또는rsaEncryptedKey
키는 base64로 인코딩되어야 합니다. 또한rsaEncryptedKey
키를 준비하려면 RSA 키 래핑을 참고하세요.
Go
로컬 개발 환경에서 이 페이지의 Go 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
자세한 내용은 다음을 참조하세요: Set up authentication for a local development environment.
Java
로컬 개발 환경에서 이 페이지의 Java 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
자세한 내용은 다음을 참조하세요: Set up authentication for a local development environment.
Node.js
로컬 개발 환경에서 이 페이지의 Node.js 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
자세한 내용은 다음을 참조하세요: Set up authentication for a local development environment.
PHP
로컬 개발 환경에서 이 페이지의 PHP 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
자세한 내용은 다음을 참조하세요: Set up authentication for a local development environment.
Python
로컬 개발 환경에서 이 페이지의 Python 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
자세한 내용은 다음을 참조하세요: Set up authentication for a local development environment.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참고하세요.
필요한 역할
컴퓨팅 인스턴스를 중지하고 다시 시작하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 인스턴스 관리자 (v1) (
roles/compute.instanceAdmin.v1
) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.이 사전 정의된 역할에는 컴퓨팅 인스턴스를 중지하고 다시 시작하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
컴퓨팅 인스턴스를 중지하고 다시 시작하려면 다음 권한이 필요합니다.
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
인스턴스 중지
컴퓨팅 인스턴스를 중지하고 Compute Engine에서 상태를
TERMINATED
로 변경하면 인스턴스는 연결된 리소스, 구성 설정, 내부 IP 주소, MAC 주소, 메타데이터를 유지합니다. 그러나 인스턴스는 메모리 내 데이터와 애플리케이션 상태를 잃게 됩니다. 이를 유지해야 하는 경우 대신 인스턴스를 일시중지합니다.다음 방법을 사용하여 인스턴스를 중지할 수 있습니다. 선택하는 방법은 인스턴스에 로컬 SSD 디스크가 연결되어 있는지와 종료 스크립트를 처리하는 방법에 따라 다릅니다.
인스턴스를 중지한 후 필요하면 인스턴스를 다시 시작하거나 더 이상 필요하지 않으면 인스턴스를 삭제할 수 있습니다.
로컬 SSD 디스크가 없는 인스턴스 중지
여러 컴퓨팅 인스턴스를 동시에 중지하거나 개별 인스턴스를 중지할 수 있습니다. 인스턴스가 여러 개인 경우 Google Cloud 콘솔을 사용하거나 같은 영역에 있는 인스턴스의 경우 Google Cloud CLI를 사용합니다. 개별 인스턴스의 경우 다음 옵션 중 하나를 선택합니다.
콘솔
gcloud
단일 영역에서 인스턴스를 하나 이상 중지하려면
gcloud compute instances stop
명령어를 사용합니다.gcloud compute instances stop INSTANCE_NAMES \ --zone=ZONE
다음을 바꿉니다.
Go
자바
Node.js
PHP
Python
REST
인스턴스를 중지하려면
instances.stop
메서드에POST
요청을 보냅니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop
다음을 바꿉니다.
로컬 SSD 디스크를 사용하는 인스턴스 중지
동시에 중지할 컴퓨팅 인스턴스의 수와 연결된 로컬 SSD 디스크의 데이터를 보존해야 하는지 여부에 따라 다음을 실행합니다.
로컬 SSD 디스크가 연결된 인스턴스를 하나 이상 중지하려면 다음 옵션 중 하나를 선택합니다.
콘솔
gcloud
로컬 SSD 디스크가 연결된 단일 영역에서 하나 이상의 인스턴스를 중지할 때는 다음과 같이 로컬 SSD 데이터를 삭제할지 또는 보존할지 지정합니다.
다음을 바꿉니다.
REST
로컬 SSD 디스크가 연결된 인스턴스를 중지할 때 다음과 같이 로컬 SSD 데이터를 삭제할지 보존할지 지정합니다.
다음을 바꿉니다.
게스트 OS에서 인스턴스 중지
로컬 SSD 디스크가 연결된 컴퓨팅 인스턴스를 중지하는 경우 게스트 OS 내에서 인스턴스를 중지하면 로컬 SSD 데이터가 삭제됩니다. 로컬 SSD 데이터를 보존하려면 인스턴스를 중지하기 전에 연결된 Google Cloud Hyperdisk 또는 Persistent Disk 볼륨, Cloud Storage와 같은 영구 저장소 옵션에 데이터를 수동으로 복사해야 합니다.
게스트 OS 내에서 인스턴스를 중지하려면 다음 옵션 중 하나를 선택합니다.
Linux
Windows
인스턴스 다시 시작
완전히 중지된 컴퓨팅 인스턴스(인스턴스 상태가
TERMINATED
인 경우)를 다시 시작할 수 있습니다.인스턴스를 중지할 때 로컬 SSD 디스크의 데이터를 보존하도록 선택한 경우 인스턴스를 다시 시작한 후 로컬 SSD 디스크를 다시 마운트해야 할 수 있습니다. 로컬 SSD 디스크를 마운트하는 방법에 관한 자세한 내용은 로컬 SSD 기기 포맷 및 마운트를 참고하세요.
인스턴스를 다시 시작하려면 인스턴스에 암호화된 디스크가 연결되어 있는지 여부에 따라 다음 방법 중 하나를 사용하세요.
암호화된 디스크가 없는 인스턴스 다시 시작
여러 개의 컴퓨팅 인스턴스를 동시에 다시 시작하거나 개별 인스턴스를 다시 시작할 수 있습니다. 인스턴스가 여러 개인 경우 Google Cloud 콘솔을 사용하거나 같은 영역에 있는 인스턴스의 경우 gcloud CLI를 사용합니다. 개별 인스턴스의 경우 다음 옵션 중 하나를 선택합니다.
콘솔
gcloud
단일 영역에서 인스턴스를 하나 이상 다시 시작하려면
gcloud compute instances start
명령어를 사용합니다.gcloud compute instances start INSTANCE_NAMES \ --zone=ZONE
다음을 바꿉니다.
Go
자바
Node.js
PHP
Python
REST
인스턴스를 다시 시작하려면
instances.start
메서드에POST
요청을 실행합니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/start
다음을 바꿉니다.
암호화된 디스크가 있는 인스턴스 다시 시작
고객 제공 암호화 키를 사용하여 암호화된 디스크가 연결된 중지된 컴퓨팅 인스턴스를 다시 시작할 때는 암호화 키 정보를 제공해야 합니다.
인스턴스 여러 개를 동시에 다시 시작하려면 Google Cloud 콘솔을 사용하거나 같은 영역에 있는 인스턴스의 경우 gcloud CLI를 사용합니다. 그렇지 않은 경우 단일 인스턴스를 다시 시작하려면 다음 옵션 중 하나를 선택합니다.
콘솔
gcloud
암호화된 디스크를 사용하는 단일 영역에서 인스턴스 하나 이상을 다시 시작하려면
--csek-key-file
플래그와 함께gcloud compute instances start
명령어를 사용합니다. RSA 래핑 키를 사용하는 경우--csek-key-file
플래그와 함께gcloud beta compute instances start
명령어를 대신 사용합니다.gcloud compute instances start INSTANCE_NAMES \ --csek-key-file=ENCRYPTION_KEY_FILE \ --zone=ZONE
다음을 바꿉니다.
Go
자바
Node.js
PHP
Python
REST
암호화된 디스크를 사용하는 인스턴스를 다시 시작하려면
instances.startWithEncryptionKey
메서드에POST
요청을 실행합니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/startWithEncryptionKey { "disks": [ { "source": "DISK_URL", "diskEncryptionKey": { "ENCRYPTION_TYPE": "ENCRYPTION_KEY" } } ] }
다음을 바꿉니다.
다음 단계
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2024-12-22(UTC)
-