포털을 사용하여 데이터 디스크를 Linux VM에 연결Use the portal to attach a data disk to a Linux VM

이 문서에서는 Azure 포털을 통해 신규 및 기존 디스크를 Linux 가상 머신에 연결하는 방법을 보여줍니다.This article shows you how to attach both new and existing disks to a Linux virtual machine through the Azure portal. 또한 Azure Portal에서 Windows VM에 데이터 디스크를 연결할 수도 있습니다.You can also attach a data disk to a Windows VM in the Azure portal.

VM에 디스크를 연결하기 전에 다음 팁을 검토합니다.Before you attach disks to your VM, review these tips:

가상 머신 찾기Find the virtual machine

  1. Azure Portal에 로그인합니다.Sign in to the Azure portal.

  2. 왼쪽 메뉴에서 Virtual Machines를 클릭합니다.On the left menu, click Virtual Machines.

  3. 목록에서 가상 머신을 선택합니다.Select the virtual machine from the list.

  4. 가상 머신 페이지의 Essentials에서 디스크를 클릭합니다.To the Virtual machines page, in Essentials, click Disks.

    디스크 설정 열기

새 디스크 연결Attach a new disk

  1. 디스크 창에서 + 데이터 디스크 추가를 클릭합니다.On the Disks pane, click + Add data disk.

  2. 이름에 대한 드롭다운 메뉴를 클릭하고 디스크 만들기를 선택합니다.Click the drop-down menu for Name and select Create disk:

    Azure Managed Disks 만들기

  3. 관리되는 디스크에 대한 이름을 입력합니다.Enter a name for your managed disk. 기본 설정을 검토하고 필요에 따라 업데이트한 다음 만들기를 클릭합니다.Review the default settings, update as necessary, and then click Create.

    디스크 설정 검토

  4. 저장을 클릭하여 관리되는 디스크를 만들고 VM 구성을 업데이트합니다.Click Save to create the managed disk and update the VM configuration:

    새 Azure Managed Disk 저장

  5. Azure가 디스크를 만들고 가상 머신에 연결하면 가상 머신의 디스크 설정의 데이터 디스크아래에 새 디스크가 나열됩니다.After Azure creates the disk and attaches it to the virtual machine, the new disk is listed in the virtual machine's disk settings under Data Disks. 관리되는 디스크는 최상위 수준 리소스이므로 디스크는 리소스 그룹의 루트에 나타납니다.As managed disks are a top-level resource, the disk appears at the root of the resource group:

    리소스 그룹의 Azure Managed Disk

기존 디스크 연결Attach an existing disk

  1. 디스크 창에서 + 데이터 디스크 추가를 클릭합니다.On the Disks pane, click + Add data disk.

  2. 이름에 대한 드롭다운 메뉴를 클릭하여 Azure 구독에 액세스할 수 있는 기존 관리되는 디스크의 목록을 봅니다.Click the drop-down menu for Name to view a list of existing managed disks accessible to your Azure subscription. 연결할 관리되는 디스크를 선택합니다.Select the managed disk to attach:

    기존 Azure Managed Disk 연결

  3. 저장을 클릭하여 기존 관리되는 디스크를 연결하고 VM 구성을 업데이트합니다.Click Save to attach the existing managed disk and update the VM configuration:

    Azure Managed Disk 업데이트 저장

  4. Azure가 디스크를 가상 머신에 연결한 후 가상 머신의 디스크 설정의 데이터 디스크아래에 해당 디스크가 나열됩니다.After Azure attaches the disk to the virtual machine, it's listed in the virtual machine's disk settings under Data Disks.

Linux VM에 연결하여 새 디스크 탑재Connect to the Linux VM to mount the new disk

Linux VM에서 사용할 수 있도록 새 디스크를 분할, 포맷 및 탑재하려면 VM에 SSH합니다.To partition, format, and mount your new disk so your Linux VM can use it, SSH into your VM. 자세한 내용은 Azure에서 Linux와 함께 SSH를 사용하는 방법을 참조하세요.For more information, see How to use SSH with Linux on Azure. 다음 예제에서는 사용자 이름 azureuser를 사용하여 공용 DNS 항목이 mypublicdns.westus.cloudapp.azure.com인 VM에 연결합니다.The following example connects to a VM with the public DNS entry of mypublicdns.westus.cloudapp.azure.com with the username azureuser:

ssh azureuser@mypublicdns.westus.cloudapp.azure.com

VM에 연결하고 나면 디스크를 연결할 준비가 되었습니다.Once connected to your VM, you're ready to attach a disk. 먼저 dmesg를 사용하여 디스크를 찾습니다(새 디스크를 찾는 데 사용하는 방법은 다를 수 있습니다).First, find the disk using dmesg (the method you use to discover your new disk may vary). 다음 예제에서는 dmesg를 사용하여 SCSI 디스크를 필터링합니다.The following example uses dmesg to filter on SCSI disks:

dmesg | grep SCSI

다음 예제와 유사하게 출력됩니다.The output is similar to the following example:

[    0.294784] SCSI subsystem initialized
[    0.573458] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    7.110271] sd 2:0:0:0: [sda] Attached SCSI disk
[    8.079653] sd 3:0:1:0: [sdb] Attached SCSI disk
[ 1828.162306] sd 5:0:0:0: [sdc] Attached SCSI disk

여기서 sdc는 원하는 디스크입니다.Here, sdc is the disk that we want.

새 디스크 분할Partition a new disk

데이터가 포함된 기존 디스크를 사용 중이라면 디스크 탑재 단계로 건너뜁니다.If you are using an existing disk that contains data, skip to mounting the disk. 새 디스크를 연결하는 경우에는 디스크를 분할해야 합니다.If you are attaching a new disk, you need to partition the disk.

참고

배포판에 사용할 수 있는 최신 버전의 fdisk 또는 parted를 사용 하는 것이 좋습니다.It is recommended that you use the latest versions of fdisk or parted that are available for your distro.

fdisk를 사용하여 디스크를 분할합니다.Partition the disk with fdisk. 디스크 크기가 2테비바이트(TiB) 이상이어서 GPT 분할을 사용해야 하는 경우 parted를 사용하여 GPT 분할을 수행할 수 있습니다.If the disk size is 2 tebibytes (TiB) or larger then you must use GPT partitioning, you can use parted to perform GPT partitioning. 디스크 크기가 2TiB 미만이라면 MBR 또는 GPT 분할을 사용하면 됩니다.If disk size is under 2TiB, then you can use either MBR or GPT partitioning. 파티션 1에 기본 디스크를 만들고, 나머지는 기본값을 적용합니다.Make it a primary disk on partition 1, and accept the other defaults. 다음 예제에서는 /dev/sdc에서 fdisk 프로세스를 시작합니다.The following example starts the fdisk process on /dev/sdc:

sudo fdisk /dev/sdc

새 파티션을 추가하려면 n 명령을 사용합니다.Use the n command to add a new partition. 이 예제에서는 주 파티션에 대해 p를 선택하고 기본 값의 나머지를 적용합니다.In this example, we also choose p for a primary partition and accept the rest of the default values. 다음 예제와 유사하게 출력됩니다.The output will be similar to the following example:

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x2a59b123.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-10485759, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759):
Using default value 10485759

p를 입력하여 파티션 테이블을 인쇄한 다음, w를 사용하여 디스크에 테이블을 쓰고 종료합니다.Print the partition table by typing p and then use w to write the table to disk and exit. 출력은 다음 예제와 비슷해야 합니다.The output should look similar to the following example:

Command (m for help): p

Disk /dev/sdc: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders, total 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x2a59b123

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048    10485759     5241856   83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

이제 mkfs 명령을 사용하여 파티션에 파일 시스템을 씁니다.Now, write a file system to the partition with the mkfs command. 파일 시스템 형식 및 디바이스 이름을 지정합니다.Specify your filesystem type and the device name. 다음 예제에서는 이전 단계에서 만든 /dev/sdc1 파티션에 ext4 파일 시스템을 만듭니다.The following example creates an ext4 filesystem on the /dev/sdc1 partition that was created in the preceding steps:

sudo mkfs -t ext4 /dev/sdc1

다음 예제와 유사하게 출력됩니다.The output is similar to the following example:

mke2fs 1.42.9 (4-Feb-2014)
Discarding device blocks: done
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310464 blocks
65523 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

디스크 탑재Mount the disk

mkdir을 사용하여 파일 시스템을 탑재할 디렉터리를 만듭니다.Create a directory to mount the file system using mkdir. 다음 예제에서는 /datadrive에 디렉터리를 만듭니다.The following example creates a directory at /datadrive:

sudo mkdir /datadrive

mount를 사용하여 파일 시스템을 탑재합니다.Use mount to then mount the filesystem. 다음 예제에서는 /dev/sdc1 파티션을 /datadrive 탑재 지점에 탑재합니다.The following example mounts the /dev/sdc1 partition to the /datadrive mount point:

sudo mount /dev/sdc1 /datadrive

다시 부팅 후 드라이브가 자동으로 다시 탑재되도록 하려면 /etc/fstab 파일에 추가해야 합니다.To ensure that the drive is remounted automatically after a reboot, it must be added to the /etc/fstab file. 또한 /etc/fstab에 UUID(Universally Unique IDentifier)를 사용하여 디바이스 이름(예: /dev/sdc1) 대신 드라이브를 가리키는 것이 좋습니다.It is also highly recommended that the UUID (Universally Unique IDentifier) is used in /etc/fstab to refer to the drive rather than just the device name (such as, /dev/sdc1). 부팅하는 동안 OS에서 디스크 오류를 검색하는 경우 UUID를 사용하여 지정된 위치에 탑재되어 있는 잘못된 디스크를 회피합니다.If the OS detects a disk error during boot, using the UUID avoids the incorrect disk being mounted to a given location. 그런 다음, 남아 있는 데이터 디스크를 동일한 디바이스 ID에 할당합니다.Remaining data disks would then be assigned those same device IDs. 새 드라이브의 UUID를 찾으려면 blkid 유틸리티를 사용합니다.To find the UUID of the new drive, use the blkid utility:

sudo -i blkid

출력은 다음 예제와 유사합니다.The output looks similar to the following example:

/dev/sda1: UUID="11111111-1b1b-1c1c-1d1d-1e1e1e1e1e1e" TYPE="ext4"
/dev/sdb1: UUID="22222222-2b2b-2c2c-2d2d-2e2e2e2e2e2e" TYPE="ext4"
/dev/sdc1: UUID="33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e" TYPE="ext4"

참고

/etc/fstab 파일을 부적절하게 편집하면 부팅할 수 없는 시스템이 발생할 수 있습니다.Improperly editing the /etc/fstab file could result in an unbootable system. 확실하지 않은 경우 배포 설명서에서 이 파일을 제대로 편집하는 방법에 대한 자세한 내용을 확인하세요.If unsure, refer to the distribution's documentation for information on how to properly edit this file. 또한 편집하기 전에 /etc/fstab 파일의 백업을 만드는 것이 좋습니다.It is also recommended that a backup of the /etc/fstab file is created before editing.

텍스트 편집기에서 다음과 같이 /etc/fstab 파일을 엽니다.Next, open the /etc/fstab file in a text editor as follows:

sudo vi /etc/fstab

이 예제에서는 이전 단계에서 만든 /dev/sdc1 디바이스의 UUID 값과 탑재 지점 /datadrive를 사용합니다.In this example, use the UUID value for the /dev/sdc1 device that was created in the previous steps, and the mountpoint of /datadrive. /etc/fstab 파일의 끝에 다음 줄을 추가합니다.Add the following line to the end of the /etc/fstab file:

UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   ext4   defaults,nofail   1   2

완료 되 면 /etc/fstab 파일을 저장 하 고 시스템을 다시 부팅 합니다.When done, save the /etc/fstab file and reboot the system.

참고

나중에 fstab을 편집하지 않고 데이터 디스크를 제거하면 VM이 부팅되지 않을 수 있습니다.Later removing a data disk without editing fstab could cause the VM to fail to boot. 대부분의 배포는 nofail 및/또는 nobootwait fstab 옵션을 제공합니다.Most distributions provide either the nofail and/or nobootwait fstab options. 이러한 옵션을 사용하면 디스크가 부팅 시 탑재되지 않더라도 시스템을 부팅할 수 있습니다.These options allow a system to boot even if the disk fails to mount at boot time. 이러한 매개 변수에 대한 자세한 내용은 배포 설명서를 참조하세요.Consult your distribution's documentation for more information on these parameters.

nofail 옵션은 파일 시스템이 손상되었거나 디스크가 부팅 시 존재하지 않더라도 VM이 시작되도록 합니다.The nofail option ensures that the VM starts even if the filesystem is corrupt or the disk does not exist at boot time. 이 옵션이 없으면 FSTAB 오류로 인해 Linux에 SSH를 사용할 수 없음(영문)에 설명되어 있는 동작이 발생할 수 있습니다.Without this option, you may encounter behavior as described in Cannot SSH to Linux VM due to FSTAB errors

Azure에서 Linux에 대한 TRIM/UNMAP 지원TRIM/UNMAP support for Linux in Azure

일부 Linux 커널은 디스크에서 사용되지 않은 블록을 버릴 수 있도록 TRIM/UNMAP 작업을 지원합니다.Some Linux kernels support TRIM/UNMAP operations to discard unused blocks on the disk. 이 기능은 삭제된 페이지가 더 이상 유효하지 않으며 폐기될 수 있음을 Azure에 알리기 위해 표준 스토리지에서 주로 유용하며, 큰 파일을 만들고 삭제하는 경우 비용을 절약할 수 있습니다.This feature is primarily useful in standard storage to inform Azure that deleted pages are no longer valid and can be discarded, and can save money if you create large files and then delete them.

Linux VM에서 TRIM 지원을 사용하는 두 가지 방법이 있습니다.There are two ways to enable TRIM support in your Linux VM. 평소와 같이 권장되는 방법에 대해 배포에 확인하세요.As usual, consult your distribution for the recommended approach:

  • /etc/fstabdiscard 탑재 옵션을 사용합니다. 예:Use the discard mount option in /etc/fstab, for example:

    UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e   /datadrive   ext4   defaults,discard   1   2
    
  • 경우에 따라 discard 옵션을 사용하면 성능이 저하될 수 있습니다.In some cases, the discard option may have performance implications. 또는 fstrim 명령을 명령줄에서 수동으로 실행하거나, 또는 정기적으로 실행하기 위해 crontab에 추가할 수 있습니다.Alternatively, you can run the fstrim command manually from the command line, or add it to your crontab to run regularly:

    UbuntuUbuntu

    sudo apt-get install util-linux
    sudo fstrim /datadrive
    

    RHEL/CentOSRHEL/CentOS

    sudo yum install util-linux
    sudo fstrim /datadrive
    

다음 단계Next steps

Azure CLI를 사용해서도 데이터 디스크를 연결할 수 있습니다.You can also attach a data disk using the Azure CLI.