디스크 만들기 및 연결


빈 영구 디스크를 만들거나 데이터 소스에서 디스크를 생성할 수 있습니다. 영구 디스크를 가상 머신(VM) 인스턴스의 부팅 디스크로 사용하거나 VM에 연결하는 데이터 디스크로 사용할 수 있습니다. 이 문서에서는 다음 작업을 실행하는 방법을 설명합니다.

  • 빈 비부팅 영역 영구 디스크를 만들고 VM 인스턴스에 연결합니다.
  • 디스크나 파일 시스템 없이 시작되므로 디스크를 포맷하고 마운트합니다.

영구 디스크와 사용 가능한 디스크 유형에 대한 일반적인 정보는 영구 디스크 개요를 참조하세요.

시작하기 전에

제한사항

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

VM에 비부팅 디스크 추가

Google Cloud Console, gcloud 명령줄 도구 또는 Compute Engine API를 사용하여 비부팅 영역 디스크를 만들고 연결합니다.

Cloud Console에서 디스크를 만드는 경우 기본 디스크 유형pd-balanced입니다. gcloud 도구 또는 Compute Engine API를 사용하여 디스크를 만드는 경우 기본 디스크 유형은 pd-standard입니다.

Console

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

    VM 인스턴스 페이지로 이동

  2. 체크박스를 선택하고 디스크를 추가할 인스턴스의 이름을 클릭합니다.

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

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

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

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

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

gcloud

  1. 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: 영구 디스크의 유형입니다(예: pd-balanced).
  2. 디스크를 만든 후 실행 중이거나 중지된 인스턴스에 연결합니다. gcloud compute instances attach-disk 명령어를 사용합니다.

    gcloud compute instances attach-disk INSTANCE_NAME \
      --disk DISK_NAME
    

    다음을 바꿉니다.

    • INSTANCE_NAME: 새 영역 영구 디스크를 추가할 인스턴스의 이름입니다.
    • DISK_NAME: 인스턴스에 연결할 새 디스크의 이름입니다.
  3. gcloud compute disks describe 명령어를 사용하여 디스크의 설명을 확인합니다.

API

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

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

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID입니다.
    • ZONE: 인스턴스와 새 디스크가 배치되는 영역입니다.
    • DISK_NAME: 새 디스크의 이름입니다.
    • DISK_SIZE: 새 디스크의 크기(GB)입니다. 허용되는 크기는 10GB부터 65,536GB까지 1GB 단위로 증가하는 크기입니다.
    • DISK_TYPE: 영구 디스크의 유형입니다. 예를 들면 pd-balanced입니다.
  2. compute.instances.attachDisk 메서드에 대한 POST 요청을 작성하고 방금 만든 영역 영구 디스크의 URL을 포함합니다.

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

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID
    • ZONE: 인스턴스와 새 디스크가 배치되는 영역
    • INSTANCE_NAME: 새 영구 디스크를 추가할 인스턴스의 이름
    • DISK_NAME: 새 디스크의 이름입니다.

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

Linux VM에서 비부팅 디스크 포맷 및 마운트

VM에 연결

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

    VM 인스턴스 페이지로 이동

  2. 새 디스크가 연결된 인스턴스 옆에 있는 SSH 버튼을 클릭합니다. 브라우저에서 해당 VM으로의 터미널 연결이 열립니다.

디스크 포맷

  1. 터미널에서 lsblk 명령어를 사용하여 인스턴스에 연결된 디스크를 나열한 후 포맷하고 마운트하려는 디스크를 찾습니다.

      $ sudo lsblk
      
      NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
      sda      8:0    0   10G  0 disk
      └─sda1   8:1    0   10G  0 part /
      sdb      8:16   0  250G  0 disk
      

    이 예시에서 sdb는 새로운 빈 영구 디스크의 기기 이름입니다.

  2. mkfs 도구를 사용하여 디스크를 포맷합니다. 이 명령어는 지정된 디스크의 모든 데이터를 삭제하므로 디스크 기기를 올바르게 지정해야 합니다.

    필요한 모든 파일 형식을 사용할 수 있지만 파티션 테이블이 없는 단일 ext4 파일 시스템을 권장합니다. 나중에 디스크 파티션을 수정할 필요 없이 디스크 크기를 늘릴 수 있습니다.

    디스크 성능을 극대화하려면 -E 플래그에 권장되는 포맷 옵션을 사용하세요. 이 보조 디스크에서는 루트 볼륨 공간을 예약할 필요가 없으므로 -m 0을 지정하여 모든 가용 디스크 공간을 사용하세요.

     $ sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/DEVICE_NAME
     

    DEVICE_NAME을 포맷할 디스크의 기기 이름으로 바꿉니다. 이 예시에서는 sdb를 지정하여 전체 디스크를 파티션 테이블 없이 포맷합니다.

디스크 마운트

  1. VM에서 새 디스크의 마운트 지점 역할을 하는 디렉터리를 만듭니다. 어떤 디렉터리든 사용할 수 있습니다. 다음 예시에서는 /mnt/disks/ 아래에 디렉터리를 만듭니다.

    $ sudo mkdir -p /mnt/disks/MOUNT_DIR
    

    MOUNT_DIR을 디스크를 마운트할 디렉터리로 바꿉니다.

  2. 마운트 도구를 사용하여 디스크를 인스턴스에 마운트하고 discard 옵션을 사용 설정합니다.

    $ sudo mount -o discard,defaults /dev/DEVICE_NAME /mnt/disks/MOUNT_DIR
    

    다음을 바꿉니다.

    • DEVICE_NAME: 마운트할 디스크의 기기 이름입니다.
    • MOUNT_DIR: 디스크를 마운트할 디렉터리입니다.
  3. 디스크에 대한 읽기 및 쓰기 권한을 구성합니다. 이 예시에서는 모든 사용자에게 디스크에 대한 쓰기 액세스 권한을 부여합니다.

    $ sudo chmod a+w /mnt/disks/MOUNT_DIR
    

    MOUNT_DIR을 디스크가 마운트된 디렉터리로 바꿉니다.

VM 재시작 시 자동 마운트 구성

VM이 다시 시작될 때 디스크가 자동으로 다시 마운트되도록 /etc/fstab 파일에 디스크를 추가합니다. Linux 운영체제에서는 재부팅할 때마다 기기 이름이 변경될 수 있지만 기기 UUID는 디스크를 시스템 간 이동하는 경우에도 항상 동일한 볼륨을 가리킵니다. 이러한 이유로 VM 이름 대신 기기 UUID를 사용하여 VM 재시작 시 자동 마운트를 구성하는 것이 좋습니다.

  1. 현재 /etc/fstab 파일의 백업을 만듭니다.

    $ sudo cp /etc/fstab /etc/fstab.backup
    
  2. blkid 명령어를 사용하여 디스크의 UUID를 나열합니다.

    $ sudo blkid /dev/DEVICE_NAME
    

    다음을 바꿉니다.

    • DEVICE_NAME: 자동 마운트하려는 디스크의 기기 이름입니다. 디스크에 파티션 테이블을 만든 경우 기기 이름에 추가된 서픽스를 추가하여 마운트할 파티션을 지정합니다. 예를 들어 sdb가 디스크의 기기 이름인 경우 sdb1은 파티션의 이름일 수 있습니다.
  3. 텍스트 편집기에서 /etc/fstab 파일을 열고 UUID를 포함하는 항목을 만듭니다. 예를 들면 다음과 같습니다.

    UUID=UUID_VALUE /mnt/disks/MOUNT_DIR ext4 discard,defaults,MOUNT_OPTION 0 2
    

    다음을 바꿉니다.

    • UUID_VALUE: 이전 단계의 출력에 나열된 디스크의 UUID입니다.
    • MOUNT_DIR: 디스크를 마운트한 디렉터리입니다.
    • MOUNT_OPTION: 부팅 시 영역 영구 디스크를 마운트할 수 없을 경우 운영체제가 수행할 작업을 지정합니다. 유효한 값은 Linux fstab 문서네 번째 필드를 참조하세요. 디스크를 사용할 수 없는 경우에도 시스템을 부팅하려면 nofail 옵션을 사용합니다.
  4. cat 명령어를 사용하여 /etc/fstab 항목이 올바른지 확인합니다.

    $ cat /etc/fstab
    
    LABEL=cloudimg-rootfs   /        ext4   defaults        0 0
    UUID=d761bdc5-7e2a-4529-a393-b9aefdb623b6 /mnt/disks/MOUNT_DIR ext4 discard,defaults,MOUNT_OPTION 0 2
    
    

이 디스크를 분리하거나 이 VM의 부팅 디스크로 스냅샷을 만드는 경우 /etc/fstab 파일을 수정하고 이 디스크의 항목을 삭제합니다. MOUNT_OPTIONnofail 또는 nobootwait로 설정한 경우에도 /etc/fstab 파일을 VM에 연결된 기기와 동기화하고 부팅 디스크 스냅샷을 생성하거나 디스크를 분리하기 전에 이 항목을 삭제해야 합니다.

Windows VM에서 비부팅 디스크 포맷 및 마운트

Windows 디스크 관리를 사용하여 Windows VM에서 새 디스크를 포맷하고 마운트합니다.

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

    VM 인스턴스 페이지로 이동

  2. 새 빈 디스크가 연결된 VM 옆에 있는 RDP 버튼을 클릭합니다. 브라우저에서 인스턴스로의 RDP 연결이 열립니다.

  3. Windows 시작 버튼을 마우스 오른쪽 버튼으로 클릭하고 디스크 관리를 선택합니다.

    Windows 시작 버튼을 마우스 오른쪽 버튼을 클릭하여 디스크 관리 선택

  4. 디스크 관리에 새 디스크의 파티션 나누기 스키마를 선택하라는 메시지가 표시됩니다. GPT를 선택하고 확인을 클릭합니다.

    디스크 초기화 창에서 파티션 스키마 선택

  5. 디스크가 초기화된 후 할당되지 않은 디스크 공간을 마우스 오른쪽 버튼으로 클릭하고 새 단순 볼륨을 선택합니다.

    연결된 디스크에서 새 단순 볼륨 만들기

  6. 단순 볼륨 만들기 마법사의 안내에 따라 새 볼륨을 구성합니다. 파티션 형식은 원하는 것을 사용하면 되지만 이 예시에서는 NTFS를 선택합니다. 또한 빠른 포맷 실행을 선택해 포맷 프로세스 속도를 높입니다. 필요한 경우 할당 단위 크기 필드에서 클러스터 크기를 설정합니다. 클러스터 크기는 파티션의 최대 크기를 제한합니다. 나중에 영역 영구 디스크와 이 파티션의 크기를 조절하려고 시도할 경우 이 점을 염두에 두어야 합니다.

    단순 볼륨 만들기 마법사에서 파티션 형식 유형 선택

  7. 마법사를 완료하고 볼륨 포맷을 마친 후에는 연결된 디스크 목록의 Status 열에서 새 디스크의 상태가 Healthy인지 확인합니다.

    디스크가 온라인이고 상태가 정상인지 확인합니다.

이제 디스크에 파일을 작성할 수 있습니다.

다음 단계