새 Persistent Disk 볼륨 만들기


빈 영구 디스크를 만들거나 데이터 소스에서 디스크를 생성할 수 있습니다. 영구 디스크를 가상 머신(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

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. Terraform

      로컬 개발 환경에서 이 페이지의 Terraform 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.

      1. Install the Google Cloud CLI.
      2. To initialize the gcloud CLI, run the following command:

        gcloud init
      3. 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.

      자세한 내용은 다음을 참조하세요: 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 사용 인증을 참조하세요.

제한사항

  • VM을 만드는 동안 보조 비부팅 영역 영구 디스크 볼륨을 최대 127개까지 연결할 수 있습니다.
  • 총 연결 용량은 VM당 257TB까지 가능합니다. 대용량 볼륨에서 최대 성능을 보장하는 방법은 논리 볼륨 크기를 참조하세요.

VM에 비부팅 디스크 추가

Google Cloud 콘솔, Google Cloud CLI, REST를 사용하여 비부팅 영역 디스크 만들고 연결합니다.

Google Cloud 콘솔에서 디스크를 만드는 경우 기본 디스크 유형pd-balanced입니다. gcloud CLI 또는 REST를 사용하여 디스크를 만드는 경우 기본 디스크 유형은 pd-standard입니다.

디스크를 VM에 연결할 때 커스텀 기기 이름을 지정해야 합니다. 지정된 이름은 게스트 OS에서 디스크의 symlink를 생성하는 데 사용되므로 식별이 더 쉬워집니다.

콘솔

  1. VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스 페이지로 이동

  2. 디스크를 추가할 VM 이름을 클릭합니다.

  3. 세부정보 페이지에서 수정을 클릭합니다.

  4. 추가 디스크에서 새 디스크 추가를 클릭합니다.

  5. 디스크 이름을 지정하고 디스크 속성을 구성한 다음 소스 유형으로 빈 디스크를 선택합니다.

  6. (선택사항): 기기 이름 제목 아래에서 커스텀 기기 이름 사용 옵션을 선택합니다. 입력한 이름은 디스크의 심볼릭 링크를 생성하는 데 사용되므로 디스크를 쉽게 식별할 수 있습니다.

  7. 완료를 클릭하여 디스크 구성을 완료합니다.

  8. 저장을 클릭하여 변경사항을 VM에 적용하고 새 디스크를 추가합니다.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. gcloud compute disks create 명령어를 사용하여 영역 영구 디스크 볼륨을 만듭니다.

    gcloud compute disks create DISK_NAME \
      --size DISK_SIZE \
      --type DISK_TYPE
    

    다음을 바꿉니다.

    • DISK_NAME: 새 디스크의 이름
    • DISK_SIZE: 새 디스크의 크기(GB). 허용되는 크기는 10GB부터 65,536GB까지 1GB 단위로 증가하는 크기입니다.
    • DISK_TYPE: 영구 디스크 볼륨 유형의 전체 또는 부분 URL. 예를 들면 https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd입니다.
  3. 디스크를 만든 후 실행 중이거나 중지된 VM에 연결합니다. gcloud compute instances attach-disk 명령어를 사용합니다.

    gcloud compute instances attach-disk VM_NAME \
      --disk DISK_NAME --device-name=DEVICE_NAME
    

    다음을 바꿉니다.

    • VM_NAME: 새 영역 영구 디스크 볼륨을 추가할 VM의 이름
    • DISK_NAME: VM에 연결하려는 새 디스크의 이름
    • DEVICE_NAME: (선택사항) 게스트 OS가 디스크를 식별하는 데 사용하는 이름
  4. gcloud compute disks describe 명령어를 사용하여 디스크의 설명을 확인합니다.

Terraform

디스크를 만들려면 google_compute_disk 리소스를 사용합니다.

# Using pd-standard because it's the default for Compute Engine

resource "google_compute_disk" "default" {
  name = "disk-data"
  type = "pd-standard"
  zone = "us-west1-a"
  size = "5"
}

VM에 디스크를 연결하려면 google_compute_instance 리소스를 사용합니다.

resource "google_compute_instance" "test_node" {
  name         = "test-node"
  machine_type = "f1-micro"
  zone         = "us-west1-a"

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-11"
    }
  }
  attached_disk {
    source      = google_compute_disk.default.id
    device_name = google_compute_disk.default.name
  }

  network_interface {
    network = "default"
    access_config {
      # Ephemeral IP
    }
  }

  # Ignore changes for persistent disk attachments
  lifecycle {
    ignore_changes = [attached_disk]
  }


}

Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.

REST

  1. disks.insert 메서드를 사용해서 영역 Persistent Disk를 만들도록 POST 요청을 생성합니다. name, sizeGb, type 속성을 포함합니다. 이 디스크를 비어 있고 포맷되지 않은 비부팅 디스크로 만들려면 소스 이미지 또는 소스 스냅샷을 지정하지 마세요.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks
    
    {
     "name": "DISK_NAME",
     "sizeGb": "DISK_SIZE",
     "type": "DISK_TYPE"
    }
    

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID
    • ZONE: VM과 새 디스크가 있는 영역
    • DISK_NAME: 새 디스크의 이름
    • DISK_SIZE: 새 디스크의 크기(GB). 허용되는 크기는 10GB부터 65,536GB까지 1GB 단위로 증가하는 크기입니다.
    • DISK_TYPE: 영구 디스크 유형의 전체 또는 부분 URL. 예를 들면 https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd입니다.
  2. compute.instances.attachDisk 메서드에 대한 POST 요청을 작성하고 방금 만든 영역 영구 디스크 볼륨의 URL을 포함합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/attachDisk
    
    {
     "source": "/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME",
     "deviceName": DEVICE_NAME
    }
    

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID
    • ZONE: VM과 새 디스크가 있는 영역입니다.
    • VM_NAME: 새 영구 디스크 볼륨을 추가할 VM의 이름
    • DISK_NAME: 새 디스크의 이름
    • DEVICE_NAME: (선택사항) 게스트 OS가 디스크를 식별하는 데 사용하는 이름

새 디스크를 만들고 VM에 연결한 후에는 운영체제가 가용 저장공간을 사용할 수 있도록 디스크를 포맷하고 마운트해야 합니다.

다음 단계