메뉴
Amazon Elastic Compute Cloud
User Guide for Linux Instances

Amazon EBS 볼륨 초기화

새 EBS 볼륨은 사용 가능하지만 초기화(이전에는 사전 워밍이라고 함)가 필요하지 않은 시점에 최고 성능을 발휘합니다. 하지만 스냅샷에서 복원된 볼륨의 스토리지 블록은 초기화(Amazon S3에서 가져와 볼륨에 기록) 후에만 액세스할 수 있습니다. 이 예비 작업은 시간이 걸리며, 각 블록을 처음 액세스할 때 I/O 작업의 지연 시간을 상당히 증가시킬 수 있습니다. 대부분 애플리케이션의 경우 볼륨 수명 주기 동안 이 비용을 분할 상환할 수 있습니다. 데이터에 한 번 액세스한 후에는 성능이 복원됩니다.

사용하기 전에 볼륨의 모든 블록에서 읽기 작업을 완료하여 프로덕션 환경에서 이 성능 충돌을 방지할 수 있습니다. 이 프로세스를 초기화라고 합니다. 스냅샷에서 생성된 새로운 볼륨의 경우 볼륨을 사용하기 전에 데이터가 있는 모든 블록을 읽어야 합니다.

중요

스냅샷에서 복원한 io1 볼륨을 초기화할 경우 볼륨의 성능이 예상 수준보다 50퍼센트 이하로 떨어질 수 있으며, 이로 인해 볼륨에서 [I/O Performance] 상태 확인에 대해 warning 상태를 표시할 수 있습니다. 이는 원래 그런 것이므로 초기화 중에는 io1 볼륨에 대한 warning 상태를 무시해도 됩니다. 자세한 내용은 상태 확인으로 볼륨 모니터링 단원을 참조하십시오.

Linux에서 Amazon EBS 볼륨 초기화

새 EBS 볼륨은 사용 가능하지만 초기화(이전에는 사전 워밍이라고 함)가 필요하지 않은 시점에 최고 성능을 발휘합니다. 스냅샷에서 복원된 볼륨의 경우, dd 또는 fio 유틸리티를 사용하여 볼륨의 모든 블록에서 읽습니다. 볼륨의 기존 데이터는 모두 보존됩니다.

Linux의 스냅샷에서 복원된 볼륨을 초기화하려면

  1. 새로 복원된 볼륨을 Linux 인스턴스에 연결합니다.

  2. lsblk 명령을 사용하여 인스턴스의 블록 디바이스를 나열합니다.

    Copy
    [ec2-user ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvdf 202:80 0 30G 0 disk xvda1 202:1 0 8G 0 disk /

    여기서 새로운 볼륨인 /dev/xvdf가 연결되었지만 마운트되지는 않았음을 확인할 수 있습니다. MOUNTPOINT 열 아래에 나열된 경로가 없기 때문입니다.

  3. dd 또는 fio 유틸리티를 사용하여 디바이스의 모든 블록을 읽습니다. dd 명령은 Linux 시스템에 기본으로 설치되지만, fio는 다중 스레드 읽기를 허용하기 때문에 훨씬 더 빠릅니다.

    참고

    이 단계는 EC2 인스턴스 대역폭, 볼륨에 대해 프로비저닝된 IOPS 및 볼륨 크기에 따라 몇 분에서 몇 시간까지 걸릴 수 있습니다.

    [dd] if(입력 파일) 파라미터는 초기화할 드라이브로 설정해야 합니다. of(파일 출력) 파라미터를 Linux null 가상 디바이스인 /dev/null로 설정해야 합니다. bs 파라미터는 읽기 작업의 블록 크기를 설정합니다. 최적의 성능을 얻으려면 이 값을 1MB로 설정해야 합니다.

    중요

    dd를 잘못 사용하면 볼륨 데이터가 쉽게 삭제될 수 있습니다. 아래 예제 명령을 정학하게 따라야 합니다. 읽고 있는 디바이스의 이름에 따라 if=/dev/xvdf 파라미터만 다를 수 있습니다.

    Copy
    [ec2-user ~]$ sudo dd if=/dev/xvdf of=/dev/null bs=1M

    [fio]: 시스템에 fio가 설치되어 있는 경우, 다음 명령을 복사 및 붙여넣기하여 볼륨을 초기화할 수 있습니다. --filename(입력 파일) 파라미터는 초기화할 드라이브로 설정해야 합니다.

    Copy
    [ec2-user ~]$ sudo fio --filename=/dev/xvdf --rw=read --bs=128k --iodepth=32 --ioengine=libaio --direct=1 --name=volume-initialize

    Amazon Linux에 fio를 설치하려면 다음 명령을 사용합니다.

    Copy
    sudo yum install -y fio

    Ubuntu에 fio를 설치하려면 다음 명령을 사용합니다.

    Copy
    sudo apt-get install -y fio

    작업이 끝나면 읽기 작업에 대한 보고서가 나타납니다. 이제 볼륨을 사용할 준비가 되었습니다. 자세한 내용은 Amazon EBS 볼륨을 사용할 수 있도록 만들기 단원을 참조하십시오.