Amazon Elastic Compute Cloud
Linux 인스턴스용 사용 설명서

볼륨 수정 진행률 모니터링

수정 중인 EBS 볼륨이 상태 시퀀스를 통과합니다. 콘솔, CLI, API 또는 SDK에서 ModifyVolume 명령을 실행한 후 볼륨이 첫 번째 Modifying 상태를 입력한 후 Optimizing 상태에 이어 Complete 상태를 입력합니다. 그러면 볼륨을 더 수정할 준비가 완료됩니다. 드물지만 일시적 AWS 결함으로 인해 Failed 상태가 될 수 있습니다. 이 경우 다시 수정을 시도하십시오.

크기를 변경하면 볼륨이 Optimizing 상태가 된 후 완료되어 적용되는 데 대개 몇 초가 걸립니다.

성능(IOPS) 변경이 완료되는 데 몇 분에서 몇 시간이 걸릴 수 있으며, 시간은 현재 수행 중인 구성 변경에 따라 달라집니다.

새 구성이 적용되려면 최대 24시간이 걸리며, 볼륨이 완전히 초기화되지 않은 경우처럼 특별한 경우에는 더 걸릴 수도 있습니다. 일반적으로 완전히 사용된 1TiB 볼륨은 새 성능 구성으로 마이그레이션하는 데 약 6시간이 걸립니다.

볼륨이 optimizing 상태에 있는 동안 볼륨 성능은 소스 및 대상 구성 사양 사이에 있습니다. 일시적인 볼륨 성능은 소스 볼륨 성능 이상입니다. IOPS를 다운로드하면 일시적인 볼륨 성능은 대상 볼륨 성능 이상입니다.

AWS Management 콘솔을 검사하거나 Amazon EC2 API/CLI로 볼륨의 상태를 쿼리하거나 Amazon CloudWatch Events로 전송된 지표에 액세스하여 수정 진행 상황을 모니터링할 수 있습니다. 다음 절차는 이러한 접근 방식을 보여줍니다.

콘솔에서 수정 진행률 모니터링하기

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 볼륨을 선택하고 검사할 볼륨을 선택합니다. 볼륨의 상태가 상태 열에 표시됩니다. 아래 예에서 수정 상태는 완료입니다. 이 상태 정보는 세부 정보 창의 상태 필드에도 표시됩니다.

  3. 아래 그림과 같이 상태 필드 옆의 정보 아이콘을 열어 최근 수정 작업에 대한 모든 전/후 정보를 표시합니다.

예 명령줄에서 수정 진행률 모니터링하기

describe-volumes-modifications를 사용하여 수정 진행률을 확인합니다. 이 예에서는 위의 vol-11111111111111111볼륨 및 다른 볼륨, vol-22222222222222222가 호출됩니다.

aws ec2 describe-volumes-modifications --region us-east-1 --volume-id vol-11111111111111111 vol-22222222222222222

이 명령은 하나 이상의 VolumesModification 객체를 반환합니다. 다음은 예제 출력입니다. 첫 번째 객체는 위에 표시된 원본 modify-volume 명령 출력과 거의 동일합니다. 하지만 추가 수정 사항은 적용되지 않았습니다.

{ "VolumesModifications": [ { "TargetSize": 200, "TargetVolumeType": "io1", "ModificationState": "modifying", "VolumeId": "vol-11111111111111111", "TargetIops": 10000, "StartTime": "2017-01-19T22:21:02.959Z", "Progress": 0, "OriginalVolumeType": "gp2", "OriginalIops": 300, "OriginalSize": 100 }, { "TargetSize": 2000, "TargetVolumeType": "sc1", "ModificationState": "modifying", "VolumeId": "vol-22222222222222222", "StartTime": "2017-01-19T22:23:22.158Z", "Progress": 0, "OriginalVolumeType": "gp2", "OriginalIops": 300, "OriginalSize": 1000 } ] }

다음 예에서는 수정 상태가 optimizing 또는 completed인 리전에서 모든 볼륨에 대해 쿼리한 후 결과를 필터링하고 형식을 지정하여 2017년 2월 1일 이후 시작된 수정만 표시합니다.

aws ec2 describe-volumes-modifications --filters Name=modification-state,Values="optimizing","completed" --region us-east-1 --query "VolumesModifications[?StartTime>='2017-02-01'].{ID:VolumeId,STATE:ModificationState}"

이 경우 쿼리는 두 개의 볼륨에 대한 정보를 반환합니다.

[ { "STATE": "optimizing", "ID": "vol-06397e7a0eEXAMPLE" }, { "STATE": "completed", "ID": "vol-bEXAMPLE" } ]

CloudWatch 이벤트로 수정 진행률 모니터링하기

CloudWatch 이벤트를 이용하면 볼륨 수정 이벤트에서 텍스트 메시지를 보내거나 Lambda 함수를 실행하도록 알림 규칙을 생성할 수 있습니다.

  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. [Events], [Create rule]을 선택합니다.

  3. 서비스별 이벤트와 일치시킬 이벤트 패턴을 작성에 대해 사용자 지정 이벤트 패턴을 선택합니다.

  4. 사용자 지정 이벤트 패턴 작성에 대해 다음 코드로 콘텐츠를 바꿉니다.

    { "source": [ "aws.ec2" ], "detail-type": [ "EBS Volume Notification" ], "detail": { "event": [ "modifyVolume" ] } }

    Save를 선택합니다.

    일반적인 이벤트 출력은 다음과 같습니다.

    Body: { "version": "0", "id": "1ea2ace2-7790-46ed-99ab-d07a8bd68685", "detail-type": "EBS Volume Notification", "source": "aws.ec2", "account": "065441870323", "time": "2017-01-12T21:09:07Z", "region": "us-east-1", "resources": [ "arn:aws:ec2:us-east-1:065441870323:volume/vol-03a55cf56513fa1b6" ], "detail": { "result": "optimizing", "cause": "", "event": "modifyVolume", "request-id": "auto-58c08bad-d90b-11e6-a309-b51ed35473f8" } }

규칙을 사용하여 Amazon SNS로 알림 메시지를 생성하거나 일치하는 이벤트에 대한 응답으로 Lambda 함수를 호출할 수 있습니다.