Amazon EC2 인스턴스 저장소 볼륨에 대한 세부 성능 통계 - Amazon Elastic Compute Cloud

Amazon EC2 인스턴스 저장소 볼륨에 대한 세부 성능 통계

Amazon EC2는 Nitro 기반 Amazon EC2 인스턴스에 연결된 NVMe 인스턴스 저장소 볼륨에 대한 실시간의 세부적인 성능 통계를 제공합니다. 이러한 통계는 인스턴스의 수명 기간 동안 유지되는 집계된 카운터로 표시됩니다. 통계는 누적 작업 수, 송수신된 바이트 수, 읽기 및 쓰기 I/O 작업에 소요된 시간, 읽기 및 쓰기 I/O 작업의 히스토그램에 대한 세부 정보를 제공합니다. 이러한 통계는 Amazon EBS 세부 성능 통계와 일관성을 유지하면서도, I/O 크기별로 세분화된 상세 지연 시간 히스토그램을 포함합니다. 이를 통해 저장소 성능 패턴에 대한 보다 세밀한 통찰력을 얻을 수 있습니다. 이러한 향상된 가시성을 통해 지연 문제를 겪고 있는 특정 I/O 크기를 정확히 식별할 수 있으므로, 애플리케이션 성능을 최적화하고 문제를 보다 효과적으로 해결할 수 있습니다.

이러한 통계는 최대 1초 간격으로 세분화하여 수집할 수 있습니다. 요청이 1초 간격보다 더 자주 발생할 경우, NVMe 드라이버는 해당 요청을 다른 관리 명령어와 함께 대기열에 넣어 추후에 처리할 수 있습니다.

고려 사항
  • 통계는 Nitro 기반 인스턴스에 연결된 NVMe 인스턴스 저장소 볼륨에 대해서만 지원됩니다.

  • 카운터는 인스턴스 중지 및 재시작 시에도 지속되지 않습니다.

  • 통계는 추가 비용 없이 사용할 수 있습니다.

Statistics

NVMe 블록 디바이스는 다음 통계를 제공합니다.

통계 이름 전체 이름 유형 설명
total_read_ops 총 읽기 작업 Counter 완료된 총 읽기 작업 수입니다.
total_write_ops 총 쓰기 작업 Counter 완료된 총 쓰기 작업 수입니다.
total_read_bytes 총 읽기 바이트 Counter 전송된 총 읽기 바이트 수입니다.
total_write_bytes 총 쓰기 바이트 Counter 전송된 총 쓰기 바이트 수입니다.
total_read_time 총 읽기 시간 Counter 모든 완료된 읽기 작업에 소요된 총 시간(밀리초)입니다.
total_write_time 총 쓰기 시간 Counter 모든 완료된 쓰기 작업에 소요된 총 시간(마이크로초)입니다.
instance_store_volume_performance_exceeded_iops 수요가 볼륨의 최대 IOPS를 초과한 총 시간 Counter IOPS 요청이 볼륨의 최대 IOPS를 초과한 총 시간(마이크로초)입니다. 0을 초과하는 값은 볼륨이 제공할 수 있는 것보다 더 많은 IOPS를 워크로드가 요구했음을 나타냅니다. 이상적으로는 두 스냅샷 시간 사이에 이 지표의 증분 카운트가 최소화되어야 합니다.
instance_store_volume_performance_exceeded_tp 볼륨의 최대 처리량을 초과한 총 시간 수요 Counter 처리량 요청이 볼륨의 최대 처리량을 초과한 총 시간(마이크로초)입니다. 0을 초과하는 값은 볼륨이 제공할 수 있는 것보다 더 많은 처리량이 워크로드에 필요했음을 나타냅니다. 이상적으로는 두 스냅샷 시간 사이에 이 지표의 증분 카운트가 최소화되어야 합니다.
volume_queue_length 볼륨 대기열 길이 특정 시점 완료되기를 기다리는 읽기 및 쓰기 작업의 수입니다.
read_io_latency_histogram I/O 히스토그램 읽기 히스토그램 * 각 지연 시간 빈 내에서 마이크로초 단위로 완료된 읽기 작업 수입니다.
write_io_latency_histogram I/O 히스토그램 쓰기 히스토그램 * 각 지연 시간 빈 내에서 마이크로초 단위로 완료된 쓰기 작업 수입니다.
참고

* 히스토그램 통계는 성공적으로 완료된 I/O 작업만 나타냅니다. 정지되거나 손상된 I/O 작업은 포함되지 않지만, 특정 시점의 통계로 제공되는 volume_queue_length 통계에서 확인할 수 있습니다.

통계 액세스

통계는 인스턴스 저장소 볼륨이 연결된 인스턴스에서 직접 액세스해야 합니다. 다음 방법 중 하나로 통계에 액세스할 수 있습니다.

Amazon CloudWatch

Amazon CloudWatch 에이전트를 구성하여 인스턴스에서 통계를 수집하고 CloudWatch에서 사용자 정의 메트릭으로 사용할 수 있도록 할 수 있습니다. 그런 다음 CloudWatch의 지표를 사용하여 I/O 패턴을 분석하고, 성능 추세를 추적하며, 사용자 지정 대시보드를 생성하고, 성능 임계값을 기반으로 자동화된 경보를 설정할 수 있습니다.

CloudWatch 에이전트 구성에 대한 자세한 내용은 Amazon EC2 인스턴스 저장소 볼륨 지표 수집을 참조하세요.

nvme-cli tool
통계에 액세스하려면
  1. 볼륨이 연결된 인스턴스에 연결합니다.

  2. 2025년 9월 15일 이후에 출시된 Amazon Linux 2023 AMI에는 최신 버전의 nvme-cli 도구가 포함됩니다. 이전 버전의 Amazon Linux AMI를 사용 중인 경우 nvme-cli 도구를 업데이트하세요.

    sudo yum install nvme-cli
  3. 다음 명령을 실행하고 볼륨의 디바이스 이름을 지정합니다.

    sudo nvme amzn stats /dev/nvme0n1

통계는 I/O 크기별로 세분화된 상세한 지연 시간 히스토그램도 제공합니다. I/O 크기별로 구분된 통계를 보려면 --details 옵션을 포함시킵니다. 예:

sudo nvme amzn stats --details /dev/nvme0n1

--help 옵션을 지정하여 도구 사용 방법에 대한 자세한 정보를 얻을 수 있습니다. 예:

sudo nvme amzn stats --help
nvme_amzn.exe tool
통계에 액세스하려면
  1. 볼륨이 연결된 인스턴스에 연결합니다.

  2. AWSNVMe 드라이버 버전 1.7.0 이상을 사용하고 있는지 확인합니다. AWSNVMe 드라이버 업데이트에 대한 자세한 내용은 AWS NVMe 드라이버를 참조하세요.

  3. 볼륨의 디스크 번호를 가져옵니다. 자세한 내용은 볼륨에 Amazon EC2 Windows 인스턴스의 NVMe 디스크 매핑을 참조하세요.

  4. 다음 명령을 관리자로 실행하고 볼륨의 디스크 번호를 지정합니다.

    .\nvme_amzn.exe stats disk_number

통계는 I/O 크기별로 세분화된 상세한 지연 시간 히스토그램도 제공합니다. I/O 크기별로 구분된 통계를 보려면 --details 옵션을 포함시킵니다. 예:

.\nvme_amzn.exe stats --details disk_number