머신 이미지를 사용하여 Compute Engine에서 실행되는 VM 인스턴스에 대한 여러 디스크에 관련된 모든 구성, 메타데이터, 권한, 데이터를 저장합니다. 머신 이미지를 만드는 데 사용하는 VM 인스턴스를 소스 VM 인스턴스라고 합니다.
머신 이미지 사용할 때와 사용 방법에 대한 상세 설명은 머신 이미지를 참조하세요.
이 문서에서는 소스 VM 인스턴스에서 머신 이미지를 만드는 단계를 설명합니다.
시작하기 전에
-
아직 인증을 설정하지 않았다면 설정합니다.
인증은 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
-
Google Cloud CLI를 설치합니다. 설치 후 다음 명령어를 실행하여 Google Cloud CLI를 초기화합니다.
gcloud init외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
- Set a default region and zone.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Google Cloud CLI를 설치합니다. 설치 후 다음 명령어를 실행하여 Google Cloud CLI를 초기화합니다.
gcloud init외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참조하세요.
-
제한 및 제약사항
- 특정 인스턴스의 머신 이미지는 60분마다 최대 6번 만들 수 있습니다.
- Cloud Key Management Service(Cloud KMS) 또는 고객 제공 암호화 키(CSEK)를 사용하여 머신 이미지를 보호할 수 있습니다. 암호화 키는 디스크의 콘텐츠를 보호합니다. 그러나 메타데이터는 보호되지 않습니다.
- CSEK를 사용하여 머신 이미지를 보호하는 경우 머신 이미지 생성 중에 모든 디스크 데이터의 전체 사본이 저장됩니다. 그 외 모든 시나리오에서는 디스크 데이터가 다른 사본에 저장됩니다.
다음과 같은 소스 VM에서는 머신 이미지를 만들 수 없습니다.
- 200TB가 넘는 디스크가 연결되어 있습니다.
- 연결된 디스크가 없습니다.
- 연결된 Hyperdisk 볼륨이 있습니다.
z3-highmem-192-highlssd-metal을 제외한 Z3 머신 유형을 사용합니다.- C3D, H3 또는 A3 머신 유형을 사용합니다.
머신 이미지 생성을 지원하지 않는 인스턴스의 경우 커스텀 이미지 만들기에 설명된 대로 인스턴스의 부팅 디스크에서 OS 이미지를 대신 만들 수 있습니다.
머신 이미지에서 지원하지 않는 인스턴스 및 디스크 속성
VM 인스턴스에서 머신 이미지를 만들거나 머신 이미지에서 VM 인스턴스를 만들 때 다음 인스턴스 및 디스크 속성은 보존되거나 복원되지 않습니다.
disks.architecturedisks.descriptiondisks.labelsdisks.lockeddisks.multiWriterdisks.onUpdateActiondisks.provisionedIopsdisks.shieldedInstanceInitialStatedisks.sourceImagedisks.sourceImageEncryptionKeydisks.sourceInstantSnapshotdisks.sourceSnapshotdisks.sourceSnapshotEncryptionKeyprivateIpv6GoogleAccessresourceManagerTagsresourcePoliciessecure_tagshieldedInstanceConfig
VM에서 머신 이미지 만들기
Google Cloud 콘솔, Google Cloud CLI 또는 REST를 사용하여 머신 이미지를 만들 수 있습니다.
머신 이미지를 만들려면 다음 정보가 필요합니다.
- 만들려는 머신 이미지의 이름
- 소스 VM 인스턴스의 이름
- 소스 VM 인스턴스가 위치한 영역
- 설명(선택사항)
storageLocation(선택사항). 위치를 지정하지 않은 경우 기본 스토리지 위치는 소스 VM 인스턴스의 멀티 리전 Cloud Storage 위치입니다.- 암호화 키(선택사항). Google-owned and Google-managed encryption key, Cloud Key Management Service(Cloud KMS) 키 또는 고객 제공 암호화(CSEK) 키 중에서 선택할 수 있습니다. 암호화 키가 지정되지 않은 경우 머신 이미지는 Google-owned and Google-managed encryption key를 사용하여 암호화됩니다.
머신 이미지를 인스턴스 클론 및 스냅샷 생성에 사용하려면 인스턴스에서 머신 이미지를 생성하기 전에 인스턴스에 고유한 OS 및 앱 정보를 삭제합니다. 예를 들어 Windows VM 인스턴스의 경우
GCESysprep을 사용해 시스템 복제를 준비합니다.
콘솔
Google Cloud 콘솔에서 머신 이미지 페이지로 이동합니다.
머신 이미지 만들기를 클릭합니다.
머신 이미지의 이름을 지정합니다.
선택사항: 설명을 입력합니다.
소스 VM 인스턴스를 선택합니다.
선택사항: 머신 이미지를 저장할 위치를 지정합니다. 멀티 리전 또는 리전 스토리지 중 하나를 선택하세요. 위치에 관한 상세 설명은 머신 이미지 스토리지 위치를 참조하세요.
선택사항: 암호화 방법을 선택합니다.
만들기를 클릭합니다.
gcloud
gcloud compute machine-images create 명령어를 사용하여 인스턴스에서 머신 이미지를 만듭니다.
gcloud compute machine-images create MACHINE_IMAGE_NAME \
--source-instance=SOURCE_VM_NAME
다음을 바꿉니다.
MACHINE_IMAGE_NAME: 만들려는 머신 이미지의 이름SOURCE_VM_NAME: 이미지를 만들 소스 VM 인스턴스의 이름
예시
예를 들어 다음 gcloud 명령어를 사용하여 my-instance라는 소스 인스턴스에서 my-machine-image라는 머신 이미지를 만들 수 있습니다.
gcloud compute machine-images create my-machine-image \
--source-instance=my-instance
이 프로세스는 몇 분 정도 소요됩니다. 머신 이미지가 생성되면 다음과 비슷한 출력이 표시됩니다.
Created [https://www.googleapis.com/compute/v1/projects/project-12345/global/machineImages/my-machine-image]. NAME STATUS my-machine-image READY
REST
API에서 machineimages.insert 메서드에 대해 POST 요청을 작성합니다. 요청 본문에 다음 POST 요청을 포함합니다.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/machineImages
{
"name": "MACHINE_IMAGE_NAME",
"sourceInstance": "SOURCE_INSTANCE_URL"
}
다음을 바꿉니다.
PROJECT_ID: 프로젝트 ID입니다.MACHINE_IMAGE_NAME: 만들려는 머신 이미지의 이름SOURCE_INSTANCE_URL: 머신 이미지를 만드는 데 사용할 소스 VM 인스턴스의 전체 또는 부분 URL. 예를 들어myProject라는 프로젝트에my-instance라는 소스 인스턴스가 있는 경우 유효한 URL은 다음과 같습니다.https://www.googleapis.com/compute/v1/projects/myProject/global/instances/my-instanceprojects/myProject/global/instances/my-instanceglobal/instances/my-instance
다음 단계
- 머신 이미지 자세히 알아보기
- 머신 이미지에서 VM 인스턴스 만들기