Amazon EBS 볼륨 초기화
빈 EBS 볼륨은 생성되었지만 초기화(이전에는 사전 워밍이라고 함)가 필요하지 않은 시점에 최고 성능을 발휘합니다.
볼륨 유형에 상관없이 스냅샷에서 생성된 볼륨의 경우, 스토리지 블록에 액세스하려면 먼저 스토리지 블록을 Amazon S3에서 풀다운하고 볼륨에 기록해야 합니다. 이 예비 작업에는 시간이 걸리며, 이로 인해 각 블록에 처음 액세스할 때 I/O 작업의 지연 시간이 상당히 증가할 수 있습니다. 모든 블록을 다운로드하고 볼륨에 기록한 후에 볼륨 성능이 구현됩니다.
중요
스냅샷에서 생성된 Provisioned IOPS SSD 볼륨을 초기화할 경우 볼륨의 성능이 예상 수준보다 50퍼센트 이하로 떨어질 수 있으며, 이로 인해 볼륨의 I/O 성능 상태 확인에 warning
상태가 표시될 수 있습니다. 이는 예상된 동작이므로 초기화 중에는 Provisioned IOPS SSD 볼륨에 대한 warning
상태를 무시해도 됩니다. 자세한 내용은 Amazon EBS 볼륨 상태 확인 섹션을 참조하세요.
대부분의 애플리케이션은 볼륨 수명 주기 동안 초기화 비용을 분할 상환할 수 있습니다. 프로덕션 환경에서 이 초기 성능 저하를 방지하려면 다음 옵션 중 하나를 사용할 수 있습니다.
-
전체 볼륨을 강제로 즉시 초기화합니다. 자세한 내용은 Linux 인스턴스(Linux 인스턴스) 또는 Windows 인스턴스(Windows 인스턴스)를 참조하세요.
-
스냅샷에서 빠른 스냅샷 복원을 활성화하여 스냅샷에서 생성된 EBS 볼륨이 생성 시 완전히 초기화되고 모든 프로비저닝된 성능을 즉시 제공하도록 보장합니다. 자세한 내용은 Amazon EBS 빠른 스냅샷 복원 단원을 참조하십시오.
Linux의 스냅샷에서 생성된 볼륨을 초기화하려면
-
새로 복원된 볼륨을 Linux 인스턴스에 연결합니다.
-
lsblk 명령을 사용하여 인스턴스의 블록 디바이스를 나열합니다.
$
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
열 아래에 나열된 경로가 없기 때문입니다. -
dd 또는 fio 유틸리티를 사용하여 디바이스의 모든 블록을 읽습니다. dd 명령은 Linux 시스템에 기본으로 설치되지만, fio는 다중 스레드 읽기를 허용하기 때문에 훨씬 더 빠릅니다.
참고
이 단계는 EC2 인스턴스 대역폭, 볼륨에 대해 프로비저닝된 IOPS 및 볼륨 크기에 따라 몇 분에서 몇 시간까지 걸릴 수 있습니다.
[dd]
if
(입력 파일) 파라미터는 초기화할 드라이브로 설정해야 합니다.of
(파일 출력) 파라미터를 Linux null 가상 디바이스인/dev/null
로 설정해야 합니다.bs
파라미터는 읽기 작업의 블록 크기를 설정합니다. 최적의 성능을 얻으려면 이 값을 1MB로 설정해야 합니다.중요
dd를 잘못 사용하면 볼륨 데이터가 쉽게 삭제될 수 있습니다. 아래 예제 명령을 정학하게 따라야 합니다. 읽고 있는 디바이스의 이름에 따라
if=/dev/
파라미터만 다를 수 있습니다.xvdf
$
sudo dd if=/dev/
xvdf
of=/dev/null bs=1M[fio] 시스템에 fio가 설치되어 있는 경우, 다음 명령을 사용하여 볼륨을 초기화할 수 있습니다.
--filename
(입력 파일) 파라미터는 초기화할 드라이브로 설정해야 합니다.$
sudo fio --filename=/dev/
xvdf
--rw=read --bs=1M --iodepth=32 --ioengine=libaio --direct=1 --name=volume-initializefio을 Amazon Linux에 설치하려면 다음 명령을 사용하십시오.
sudo yum install -y fio
Ubuntu에 fio를 설치하려면 다음 명령을 사용합니다.
sudo apt-get install -y fio
작업이 끝나면 읽기 작업에 대한 보고서가 나타납니다. 이제 볼륨을 사용할 준비가 되었습니다. 자세한 내용은 Amazon EBS 볼륨을 사용할 수 있도록 만들기 단원을 참조하십시오.
어느 도구든 사용하기 전에 다음과 같이 시스템의 디스크에 관한 정보를 수집하세요.
시스템 디스크에 대한 정보를 수집하려면
-
wmic 명령을 사용하여 시스템에서 사용 가능한 디스크를 나열합니다.
wmic diskdrive get size,deviceid
다음은 예제 출력입니다.
DeviceID Size \\.\PHYSICALDRIVE2 80517265920 \\.\PHYSICALDRIVE1 80517265920 \\.\PHYSICALDRIVE0 128849011200 \\.\PHYSICALDRIVE3 107372805120
-
dd 또는 fio를 사용하여 초기화할 디스크를 식별합니다.
C:
드라이브는\\.\PHYSICALDRIVE0
에 있습니다. 어떤 드라이브 번호를 사용해야 하는지 확실하지 않은 경우diskmgmt.msc
유틸리티를 사용하여 드라이브 문자를 디스크 드라이브 번호와 비교합니다.