용량 예약 그룹 작업 - Amazon Elastic Compute Cloud

용량 예약 그룹 작업

AWS Resource Groups를 사용하여 리소스 그룹이라고 하는 용량 예약의 논리적 모음을 생성할 수 있습니다. 리소스 그룹은 모두 동일한 AWS 리전에 있는 AWS 리소스의 논리적 그룹입니다. Resource Groups에 대한 자세한 내용은 AWS Resource Groups 사용 설명서리소스 그룹이란 무엇입니까?를 참조하세요.

내 계정에서 내가 소유하고 있는 용량 예약, 그리고 다른 AWS 계정에서 나와 공유한 용량 예약을 단일 리소스 그룹에 포함할 수 있습니다. 또한 속성(인스턴스 유형, 플랫폼 및 가용 영역)이 서로 다른 용량 예약을 단일 리소스 그룹에 포함할 수도 있습니다.

용량 예약에 대한 리소스 그룹을 생성할 때 인스턴스를 개별 용량 예약 대신 용량 예약의 그룹으로 지정할 수 있습니다. 용량 예약의 그룹을 지정하는 인스턴스는 일치하는 속성(인스턴스 유형, 플랫폼 및 가용 영역) 및 가용 용량이 있는 그룹에서 용량 예약과 일치합니다. 그룹에 일치하는 속성 및 가용 용량이 있는 용량 예약이 없는 경우 인스턴스는 온디맨드 용량을 사용하여 실행됩니다. 이후 단계에서 대상 지정 그룹에 일치하는 용량 예약이 추가되면 인스턴스가 예약 용량과 자동으로 일치되고 해당 예약 용량으로 이동합니다.

그룹에서 용량 예약의 의도하지 않은 사용을 방지하려면 명시적으로 용량 예약을 지정하는 인스턴스만 허용하도록 그룹에서 용량 예약를 구성합니다. 이렇게 하려면 Amazon EC2 콘솔을 사용하여 용량 예약을 생성할 때 인스턴스 자격대상 지정(이전 콘솔)으로 설정하거나 이 예약을 지정하는 인스턴스만(새 콘솔)으로 설정합니다. AWS CLI를 사용하는 경우 용량 예약을 생성할 때 --instance-match-criteria targeted를 지정합니다. 이렇게 하면 그룹 또는 그룹의 용량 예약을 명시적으로 지정하는 인스턴스만 그룹에서 실행할 수 있습니다.

실행 중인 인스턴스가 있을 때 그룹의 용량 예약이 취소되거나 만료되는 경우 인스턴스는 일치하는 속성 및 가용 용량이 있는 그룹에서 다른 용량 예약 인스턴스로 자동으로 이동됩니다. 일치하는 속성 및 가용 용량이 있는 그룹에 남은 용량 예약이 없는 경우 인스턴스는 온디맨드 용량으로 실행됩니다. 이후 단계에서 대상 지정 그룹에 일치하는 용량 예약이 추가되면 인스턴스가 예약 용량으로 자동으로 이동합니다.

용량 예약 그룹 생성

용량 예약의 그룹을 생성하려면

create-group AWS CLI 명령을 사용합니다. name의 경우 설명이 포함된 그룹 이름을 제공하고 configuration에 대해 두 개의 Type 요청 파라미터를 지정합니다.

  • AWS::EC2::CapacityReservationPool: 리소스 그룹이 인스턴스 시작 대상으로 지정될 수 있도록 합니다.

  • AWS::ResourceGroups::Genericallowed-resource-types으로 설정된 AWS::EC2::CapacityReservation: 리소스 그룹이 용량 예약만 허용하도록 합니다.

예를 들어, 다음 명령은 이름이 MyCRGroup인 그룹을 생성합니다.

$ aws resource-groups create-group --name MyCRGroup --configuration '{"Type":"AWS::EC2::CapacityReservationPool"}' '{"Type":"AWS::ResourceGroups::Generic", "Parameters": [{"Name": "allowed-resource-types", "Values": ["AWS::EC2::CapacityReservation"]}]}'

다음은 출력의 예입니다.

{ "GroupConfiguration": { "Status": "UPDATE_COMPLETE", "Configuration": [ { "Type": "AWS::EC2::CapacityReservationPool" }, { "Type": "AWS::ResourceGroups::Generic", "Parameters": [ { "Values": [ "AWS::EC2::CapacityReservation" ], "Name": "allowed-resource-types" } ] } ] }, "Group": { "GroupArn": "arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup", "Name": "MyCRGroup" } }

그룹에 용량 예약 추가

공유된 용량 예약을 그룹에 추가한 후 해당 용량 예약이 공유되지 않을 경우, 해당 용량 예약이 그룹에서 자동으로 제거됩니다.

그룹에 용량 예약을 추가하려면

group-resources AWS CLI 명령을 사용합니다. group의 경우 용량 예약를 추가할 그룹의 이름을 지정하고 resources의 경우 추가할 용량 예약의 ARN을 지정합니다. 용량 예약를 여러 개 추가하려면 ARN을 공백으로 구분합니다. 추가할 용량 예약의 ARN을 가져오려면 describe-capacity-reservations AWS CLI 명령을 사용하고 용량 예약의 ID를 지정합니다.

예를 들어, 다음 명령은 이름이 MyCRGroup인 그룹에 두 개의 용량 예약를 추가합니다.

$ aws resource-groups group-resources --group MyCRGroup --resource-arns arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-1234567890abcdef1 arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-54321abcdef567890

다음은 출력의 예입니다.

{ "Failed": [], "Succeeded": [ "arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-1234567890abcdef1", "arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-54321abcdef567890" ] }

그룹의 용량 예약 보기

특정 그룹의 용량 예약를 보려면

list-group-resources AWS CLI 명령을 사용합니다. group의 경우 그룹 이름을 지정합니다.

예를 들어, 다음 명령은 이름이 MyCRGroup인 그룹에 용량 예약를 나열합니다.

$ aws resource-groups list-group-resources --group MyCRGroup

다음은 출력의 예입니다.

{ "QueryErrors": [], "ResourceIdentifiers": [ { "ResourceType": "AWS::EC2::CapacityReservation", "ResourceArn": "arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-1234567890abcdef1" }, { "ResourceType": "AWS::EC2::CapacityReservation", "ResourceArn": "arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-54321abcdef567890" } ] }
참고

이 명령 출력에는 내가 소유하고 있는 용량 예약과 내게 공유된 용량 예약이 포함됩니다.

용량 예약이 속한 그룹 보기

AWS CLI
특정 용량 예약이 추가된 그룹을 보려면

get-groups-for-capacity-reservation AWS CLI 명령을 사용합니다.

예를 들어, 다음 명령은 용량 예약 cr-1234567890abcdef1이 추가된 그룹을 나열합니다.

$ aws ec2 get-groups-for-capacity-reservation --capacity-reservation-id cr-1234567890abcdef1

다음은 출력의 예입니다.

{ "CapacityReservationGroups": [ { "OwnerId": "123456789012", "GroupArn": "arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup" } ] }
참고

내게 공유된 용량 예약을 지정할 경우 이 명령은 내가 소유한 용량 예약 그룹만 반환합니다.

Amazon EC2 console
특정 용량 예약이 추가된 그룹을 보려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 용량 예약를 선택하고 보려는 용량 예약을 선택한 다음 보기를 선택합니다.

    용량 예약이 추가된 그룹이 그룹 카드에 나열됩니다.

참고

내게 공유된 용량 예약을 선택할 경우 콘솔에는 내가 소유한 용량 예약 그룹만 표시됩니다.

그룹에서 용량 예약 제거

그룹에서 용량 예약을 제거하려면

ungroup-resources AWS CLI 명령을 사용합니다. group의 경우 용량 예약을 제거할 그룹의 ARN을 지정하고 resources의 경우 제거할 용량 예약의 ARN을 지정합니다. 용량 예약를 여러 개 제거하려면 ARN을 공백으로 구분합니다.

다음 예제에서는 이름이 용량 예약인 그룹에서 두 개의 MyCRGroup을 제거합니다.

$ aws resource-groups ungroup-resources --group MyCRGroup --resource-arns arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-0e154d26a16094dd arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-54321abcdef567890

다음은 출력의 예입니다.

{ "Failed": [], "Succeeded": [ "arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-0e154d26a16094dd", "arn:aws:ec2:sa-east-1:123456789012:capacity-reservation/cr-54321abcdef567890" ] }

용량 예약 그룹 삭제

그룹을 삭제하려면

delete-group AWS CLI 명령을 사용합니다. group에 대해 삭제할 그룹의 이름을 제공합니다.

예를 들어, 다음 명령은 이름이 MyCRGroup인 그룹을 삭제합니다.

$ aws resource-groups delete-group --group MyCRGroup

다음은 출력의 예입니다.

{ "Group": { "GroupArn": "arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup", "Name": "MyCRGroup" } }