Amazon EBS 볼륨 초기화 - Amazon Elastic Compute Cloud

Amazon EBS 볼륨 초기화

빈 EBS 볼륨은 생성되었지만 초기화(이전에는 사전 워밍이라고 함)가 필요하지 않은 시점에 최고 성능을 발휘합니다.

스냅샷에서 생성된 볼륨의 경우, 스토리지 블록에 액세스하려면 먼저 스토리지 블록을 Amazon S3에서 풀다운하고 볼륨에 기록해야 합니다. 이 예비 작업에는 시간이 걸리며, 이로 인해 각 블록에 처음 액세스할 때 I/O 작업의 지연 시간이 상당히 증가할 수 있습니다. 모든 블록을 다운로드하고 볼륨에 기록한 후에 볼륨 성능이 구현됩니다.

중요

스냅샷에서 생성된 Provisioned IOPS SSD 볼륨을 초기화할 경우 볼륨의 성능이 예상 수준보다 50퍼센트 이하로 떨어질 수 있으며, 이로 인해 볼륨의 I/O 성능 상태 확인에 warning 상태가 표시될 수 있습니다. 이는 예상된 동작이므로 초기화 중에는 Provisioned IOPS SSD 볼륨에 대한 warning 상태를 무시해도 됩니다. 자세한 내용은 EBS 볼륨 상태 확인 섹션을 참조하세요.

대부분의 애플리케이션은 볼륨 수명 주기 동안 초기화 비용을 분할 상환할 수 있습니다. 프로덕션 환경에서 이 초기 성능 저하를 방지하려면 다음 옵션 중 하나를 사용할 수 있습니다.

  • 전체 볼륨을 강제로 즉시 초기화합니다. 자세한 내용은 Windows에서 Amazon EBS 볼륨 초기화 섹션을 참조하세요.

  • 스냅샷에서 빠른 스냅샷 복원을 활성화하여 스냅샷에서 생성된 EBS 볼륨이 생성 시 완전히 초기화되고 모든 프로비저닝된 성능을 즉시 제공하도록 보장합니다. 자세한 내용은 Amazon EBS 빠른 스냅샷 복원 섹션을 참조하세요.

Windows에서 Amazon EBS 볼륨 초기화

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

Linux에서 Amazon EBS 볼륨 초기화에 대한 자세한 내용은 Linux에서 Amazon EBS 볼륨 초기화를 참조하세요.

어느 도구든 사용하기 전에 다음과 같이 시스템의 디스크에 관한 정보를 수집하세요.

시스템 디스크에 대한 정보를 수집하려면
  1. wmic 명령을 사용하여 시스템에서 사용 가능한 디스크를 나열합니다.

    wmic diskdrive get size,deviceid

    다음은 예제 출력입니다.

    DeviceID Size \\.\PHYSICALDRIVE2 80517265920 \\.\PHYSICALDRIVE1 80517265920 \\.\PHYSICALDRIVE0 128849011200 \\.\PHYSICALDRIVE3 107372805120
  2. dd 또는 fio를 사용하여 초기화할 디스크를 식별합니다. C: 드라이브는 \\.\PHYSICALDRIVE0에 있습니다. 어떤 드라이브 번호를 사용해야 하는지 확실하지 않은 경우 diskmgmt.msc 유틸리티를 사용하여 드라이브 문자를 디스크 드라이브 번호와 비교합니다.

사용dd

다음 절차를 완료하여 dd를 설치하고 사용하여 볼륨을 초기화합니다.

중요 고려 사항
  • 볼륨 초기화는 EC2 인스턴스 대역폭, 볼륨에 프로비저닝된 IOPS 및 볼륨 크기에 따라 몇 분에서 몇 시간까지 걸릴 수 있습니다.

  • dd를 잘못 사용하면 볼륨 데이터가 쉽게 삭제될 수 있습니다. 다음 절차를 정확하게 수행하세요.

Windows용 dd를 설치하려면

Windows용 dd 프로그램은 Linux 및 Unix 시스템에 일반적으로 사용할 수 있는 dd 프로그램과 비슷한 환경을 제공하며, 이 프로그램을 사용하여 스냅샷에서 생성된 Amazon EBS 볼륨을 초기화할 수 있습니다. 최신 베타 버전은 /dev/null 가상 디바이스를 지원합니다. 이전 버전을 설치하는 경우 nul 가상 디바이스를 대신 사용할 수 있습니다. 전체 설명서는 http://www.chrysocome.net/dd에서 제공됩니다.

  1. 최신 바이너리 버전의 Windows용 ddhttp://www.chrysocome.net/dd에서 다운로드합니다.

  2. (선택 사항) C:\bin과 같이 찾기 쉽고 기억하기 쉬운 명령줄 유틸리티용 폴더를 만듭니다. 명령줄 유틸리티용으로 지정된 폴더가 이미 있는 경우 다음 단계에서 해당 폴더를 대신 사용할 수 있습니다.

  3. 바이너리 패키지의 압축을 풀고 dd.exe 파일을 명령줄 유틸리티 폴더(예: C:\bin)에 복사합니다.

  4. 명령줄 유틸리티 폴더를 경로 환경 변수에 추가합니다 그러면 해당 폴더에 있는 프로그램을 어디서나 실행할 수 있습니다.

    1. 시작(Start)을 선택하고 컴퓨터(Computer)에서 컨텍스트(오른쪽 클릭) 메뉴를 연 후, 속성(Properties)을 선택합니다.

    2. 고급 시스템 설정(Advanced system settings), 환경 변수(Environment Variables)를 선택합니다.

    3. 시스템 변수(System Variables)에서 경로(Path) 변수를 선택하고 편집(Edit)을 선택합니다.

    4. 변수 값(Variable value)에서 세미콜론과 명령줄 유틸리티 폴더의 위치(;C:\bin\))를 기존 값 끝에 추가합니다.

    5. 확인(OK)을 선택하여 시스템 변수 편집(Edit System Variable) 창을 닫습니다.

  5. 새 명령 프롬프트 창을 엽니다. 이전 단계에서는 현재 명령 프롬프트 창의 환경 변수가 업데이트되지 않습니다. 이전 단계를 완료한 후 지금 여는 명령 프롬프트 창이 업데이트됩니다.

Windows용 dd를 사용하여 볼륨을 초기화하려면

다음 명령을 실행하여 지정된 디바이스에 있는 모든 블록을 읽고 출력을 /dev/null 가상 디바이스에 전송합니다. 이 명령은 기존 데이터를 안전하게 초기화합니다.

dd if=\\.\PHYSICALDRIVEn of=/dev/null bs=1M --progress --size

dd가 볼륨의 끝을 지나 읽기를 시도할 경우 오류가 발생할 수 있습니다. 이 오류는 무시해도 됩니다.

이전 버전의 dd 명령을 사용한 경우 /dev/null 디바이스가 지원되지 않습니다. 대신 다음과 같이 nul 디바이스를 사용할 수 있습니다.

dd if=\\.\PHYSICALDRIVEn of=nul bs=1M --progress --size

사용fio

다음 절차를 완료하여 fio를 설치하고 사용하여 볼륨을 초기화합니다.

Windows용 fio를 설치하려면

Windows용 fio 프로그램은 Linux 및 Unix 시스템에 일반적으로 사용할 수 있는 fio 프로그램과 비슷한 환경을 제공하며, 이 프로그램을 사용하여 스냅샷에서 생성된 Amazon EBS 볼륨을 초기화할 수 있습니다. 자세한 내용은 https://github.com/axboe/fio를 참조하십시오.

  1. fio MSI 설치 프로그램(최신 x86 또는 x64 빌드를 선택한 다음 결과물 선택)을 다운로드합니다.

  2. fio를 설치합니다.

Windows용 fio를 사용하여 볼륨을 초기화하려면
  1. 다음과 비슷한 명령을 실행하여 볼륨을 초기화합니다.

    fio --filename=\\.\PHYSICALDRIVEn --rw=read --bs=128k --iodepth=32 --direct=1 --name=volume-initialize
  2. 작업이 완료되면 새 볼륨을 사용할 준비가 된 것입니다. 자세한 정보는 Amazon EBS 볼륨을 Windows에서 사용할 수 있도록 만들기을 참조하십시오.