Amazon EC2 Auto Scaling의 서비스 연결 역할 - Amazon EC2 Auto Scaling

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon EC2 Auto Scaling의 서비스 연결 역할

Amazon EC2 Auto Scaling은 사용자를 대신하여 다른 AWS 서비스 를 자동으로 호출하는 데 필요한 권한에 서비스 연결 역할을 사용합니다. 서비스 연결 역할은 IAM 역할과 직접 연결된 고유한 유형의 IAM 역할입니다. AWS 서비스

연결된 서비스만 서비스 연결 역할을 수임할 수 있으므로 서비스 연결 역할은 다른 AWS 서비스 에 권한을 위임하는 안전한 방법을 제공합니다. 자세한 내용은 IAM 사용 설명서서비스 연결 역할 사용을 참조하세요. 또한 서비스 연결 역할을 사용하면 모든 API 호출을 볼 수 있습니다. AWS CloudTrail 이 사용자를 대신하여 Amazon EC2 Auto Scaling이 수행하는 모든 작업을 추적할 수 있기 때문에 요구 사항 모니터링 및 감사에 유용합니다. 자세한 내용은 AWS CloudTrail을 사용하여 Amazon EC2 Auto Scaling API 호출 로그(을)를 참조하세요.

다음 섹션에서는 Amazon EC2 Auto Scaling 서비스 연결 역할을 생성하고 관리하는 방법에 대해 설명합니다. 먼저 IAM 자격 증명(사용자, 역할 등)이 서비스 연결 역할을 생성, 편집 또는 삭제할 수 있도록 권한을 구성해야 합니다. 자세한 내용은 IAM 사용 설명서서비스 연결 역할 사용을 참조하십시오.

개요

Amazon EC2 Auto Scaling 서비스 연결 역할에는 두 가지 유형이 있습니다.

  • 이름이 AWSServiceRoleForAutoScaling인 계정의 기본 서비스 연결 역할. 다른 서비스 연결 역할을 지정하지 않은 경우 이 역할이 Auto Scaling 그룹에 자동으로 할당됩니다.

  • 역할을 생성할 때 지정하는 사용자 지정 접미사가 있는 서비스 연결 역할 (예: _ mysuffix) AWSServiceRoleForAutoScaling

사용자 지정 접미사 서비스 연결 역할의 권한은 기본 서비스 연결 역할의 권한과 동일합니다. 두 경우 모두 역할을 편집할 수 없으며 Auto Scaling 그룹에서 사용 중인 역할은 삭제할 수 없습니다. 유일한 차이점은 역할 이름 접미사입니다.

Amazon EC2 Auto Scaling에서 시작하는 인스턴스를 고객 관리 AWS Key Management Service 키로 암호화할 수 있도록 키 정책을 편집할 때 두 역할 중 하나를 지정할 수 있습니다. 그러나, 특정 고객 관리형 키에 세분화된 액세스를 제공하려는 경우 사용자 지정 접미사 서비스 연결 역할을 사용해야 합니다. 사용자 지정 접미사 서비스 연결 역할은 다음 기능을 제공합니다.

  • 고객 관리형 키에 대한 향상된 제어 기능

  • CloudTrail로그에서 API 호출을 수행한 Auto Scaling 그룹을 추적하는 기능

일부 사용자만 액세스할 수 있는 고객 관리형 키를 생성하는 경우 다음 단계를 통해 사용자 지정 접미사 서비스 연결 역할을 사용할 수 있습니다.

  1. 사용자 지정 접미사를 사용하여 서비스 연결 역할을 생성합니다. 자세한 내용은 서비스 연결 역할 생성(수동)(을)를 참조하세요.

  2. 서비스 연결 역할에 고객 관리형 키에 대한 액세스 권한을 부여합니다. 서비스 연결 역할에서 키를 사용할 수 있도록 허용하는 키 정책에 대한 자세한 정보는 암호화된 볼륨과 함께 사용하기 위한 필수 AWS KMS 키 정책(을)를 참조하세요.

  3. 사용자에게 사용자가 생성한 서비스 연결 역할에 대한 액세스 권한을 부여합니다. IAM 정책 생성에 대한 자세한 정보는 어떤 서비스 연결 역할을 전달할 수 있는지 (사용) 제어할 수 있습니다. PassRole (을)를 참조하세요. 사용자가 해당 역할을 서비스에 전달할 권한 없이 서비스 연결 역할을 지정하려고 하면 오류가 발생합니다.

서비스 연결 역할에 의해 부여된 권한

Amazon EC2 Auto Scaling은 이름이 지정된 서비스 연결 역할 AWSServiceRoleForAutoScaling또는 사용자 지정 접미사 서비스 연결 역할을 사용합니다.

서비스 연결 역할은 그 역할을 위임하기 위해 다음 서비스를 신뢰합니다.

  • autoscaling.amazonaws.com

이 역할은 다음 권한이 포함된 AutoScalingServiceRolePolicy 정책을 사용합니다.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"EC2InstanceManagement", "Effect":"Allow", "Action":[ "ec2:AttachClassicLinkVpc", "ec2:CancelSpotInstanceRequests", "ec2:CreateFleet", "ec2:CreateTags", "ec2:DeleteTags", "ec2:Describe*", "ec2:DetachClassicLinkVpc", "ec2:ModifyInstanceAttribute", "ec2:RequestSpotInstances", "ec2:RunInstances", "ec2:StartInstances", "ec2:StopInstances", "ec2:TerminateInstances" ], "Resource":"*" }, { "Sid":"EC2InstanceProfileManagement", "Effect":"Allow", "Action":[ "iam:PassRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:PassedToService":"ec2.amazonaws.com*" } } }, { "Sid":"EC2SpotManagement", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringEquals":{ "iam:AWSServiceName":"spot.amazonaws.com" } } }, { "Sid":"ELBManagement", "Effect":"Allow", "Action":[ "elasticloadbalancing:Register*", "elasticloadbalancing:Deregister*", "elasticloadbalancing:Describe*" ], "Resource":"*" }, { "Sid":"CWManagement", "Effect":"Allow", "Action":[ "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:GetMetricData", "cloudwatch:PutMetricAlarm" ], "Resource":"*" }, { "Sid":"SNSManagement", "Effect":"Allow", "Action":[ "sns:Publish" ], "Resource":"*" }, { "Sid":"EventBridgeRuleManagement", "Effect":"Allow", "Action":[ "events:PutRule", "events:PutTargets", "events:RemoveTargets", "events:DeleteRule", "events:DescribeRule" ], "Resource":"*", "Condition":{ "StringEquals":{ "events:ManagedBy":"autoscaling.amazonaws.com" } } }, { "Sid":"SystemsManagerParameterManagement", "Effect":"Allow", "Action":[ "ssm:GetParameters" ], "Resource": "*" }, { "Sid":"VpcLatticeManagement", "Effect":"Allow", "Action":[ "vpc-lattice:DeregisterTargets", "vpc-lattice:GetTargetGroup", "vpc-lattice:ListTargets", "vpc-lattice:ListTargetGroups", "vpc-lattice:RegisterTargets" ], "Resource": "*" } ] }

역할에는 다음 작업을 모두 수행할 수 있는 권한이 있습니다.

  • ec2 - EC2 인스턴스를 생성, 설명, 수정, 시작 및 중지, 종료합니다.

  • iam - 인스턴스에서 실행되는 애플리케이션이 해당 역할에 대한 임시 자격 증명에 액세스할 수 있도록 IAM 역할을 EC2 인스턴스로 전달합니다.

  • iam— Amazon EC2 Auto Scaling이 사용자를 대신하여 스팟 인스턴스를 시작할 수 있도록 AWSServiceRoleForEC2Spot서비스 연결 역할을 생성합니다.

  • elasticloadbalancing - Elastic Load Balancing Balancing으로 인스턴스를 등록 및 등록 취소하고 등록된 대상의 상태를 확인합니다.

  • cloudwatch— 규모 조정 정책에 대한 CloudWatch 경보를 생성, 설명, 수정 및 삭제하고 예측 규모 조정에 사용되는 지표를 검색합니다.

  • sns - 인스턴스가 시작되거나 종료될 때 Amazon SNS에 알림을 게시합니다.

  • events— 사용자를 대신하여 EventBridge 규칙을 생성, 설명, 업데이트 및 삭제합니다.

  • ssm - 시작 템플릿에서 Systems Manager 파라미터를 AMI ID의 별칭으로 사용할 때 Parameter Store에서 파라미터를 읽습니다.

  • vpc-lattice - VPC Lattice로 인스턴스를 등록 및 등록 취소하고 등록된 대상의 상태를 확인합니다.

서비스 연결 역할 생성(자동)

사용자가 Auto Scaling 그룹을 생성할 때 사용자 정의 접미사 서비스 연결 역할을 생성하여 지정하지 않으면 Amazon EC2 Auto Scaling에서는 사용자가 처음으로 그룹을 생성할 때 자동으로 AWSServiceRoleForAutoScaling 서비스 연결 역할을 생성합니다.

중요

서비스 연결 역할을 생성할 IAM 권한이 있어야 합니다. 그러한 권한이 없으면 자동 생성은 실패합니다. 자세한 정보는 IAM 사용 설명서서비스 연결 역할 권한 섹션 및 이 설명서의 서비스 연결 역할 생성(을)를 참조하세요.

Amazon EC2 Auto Scaling은 2018년 3월부터 서비스 연결 역할을 지원하기 시작했습니다. 그 전에 Auto Scaling 그룹을 생성한 경우 Amazon EC2 Auto Scaling은 계정에 AWSServiceRoleForAutoScaling 역할을 생성했습니다. 자세한 정보는 IAM 사용 설명서내 AWS 계정에 표시되는 새 역할을 참조하세요.

서비스 연결 역할 생성(수동)

서비스 연결 역할을 만들려면(콘솔 사용)
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 역할(Roles), 역할 생성(Create role)을 선택합니다.

  3. 신뢰할 수 있는 엔터티 선택(Select trusted entity)에서 AWS 서비스( service)를 선택합니다.

  4. Choose the service that will use this role(이 역할을 사용할 서비스 선택)에서 EC2 Auto ScalingEC2 Auto Scaling 사용 사례를 선택합니다.

  5. 다음: 권한, 다음: 태그, 다음 검토를 차례로 선택합니다. 참고: 생성하는 동안에는 서비스 연결 역할에 태그를 연결할 수 없습니다.

  6. 검토 페이지에서 역할 이름을 비워 두고 이름이 AWSServiceRoleForAutoScaling인 서비스 연결 역할을 생성하거나, 접미사를 입력하여 이름이 AWSServiceRoleForAutoScaling_suffix인 서비스 연결 역할을 생성합니다.

  7. (선택 사항) Role description(역할 설명)에서 서비스 연결 역할에 대한 설명을 편집합니다.

  8. 역할 생성을 선택합니다.

서비스 연결 역할을 만들려면(AWS CLI)

다음 create-service-linked-roleCLI 명령을 사용하여 이름이 _ 접미사로 지정된 Amazon EC2 Auto Scaling용 서비스 연결 역할을 생성합니다. AWSServiceRoleForAutoScaling

aws iam create-service-linked-role --aws-service-name autoscaling.amazonaws.com --custom-suffix suffix

이 명령의 출력에는 서비스 연결 역할의 ARN이 포함되며, 이 정보를 사용하여 고객 관리형 키에 대한 서비스 연결 역할 액세스를 허용할 수 있습니다.

{ "Role": { "RoleId": "ABCDEF0123456789ABCDEF", "CreateDate": "2018-08-30T21:59:18Z", "RoleName": "AWSServiceRoleForAutoScaling_suffix", "Arn": "arn:aws:iam::123456789012:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling_suffix", "Path": "/aws-service-role/autoscaling.amazonaws.com/", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": [ "sts:AssumeRole" ], "Principal": { "Service": [ "autoscaling.amazonaws.com" ] }, "Effect": "Allow" } ] } } }

자세한 정보는 IAM 사용 설명서서비스 연결 역할 생성을 참조하세요.

서비스 연결 역할 편집

Amazon EC2 Auto Scaling용으로 생성된 서비스 연결 역할은 편집할 수 없습니다. 서비스 연결 역할을 생성한 후에는 역할의 이름 또는 해당 권한을 변경할 수 없습니다. 그러나, 역할의 설명은 편집할 수 있습니다. 자세한 내용은 IAM 사용 설명서서비스 연결 역할 편집을 참조하세요.

서비스 연결 역할 삭제

Auto Scaling 그룹을 사용하지 않는 경우 해당 서비스 연결 역할을 삭제하는 것이 좋습니다. 역할을 삭제하면 사용되지 않거나 적극적으로 모니터링 및 유지 관리되지 않는 엔터티를 가질 수 없습니다.

먼저 관련 종속 리소스를 삭제한 후에만 서비스 연결 역할을 삭제할 수 있습니다. 따라서, 리소스에 대한 Amazon EC2 Auto Scaling 권한을 실수로 취소하는 것을 방지할 수 있습니다. 한 서비스 연결 역할을 여러 Auto Scaling 그룹에 사용하는 경우 서비스 연결 역할을 삭제하기 전에 해당 역할을 사용하는 모든 Auto Scaling 그룹을 삭제해야 합니다. 자세한 내용은 Auto Scaling 인프라 삭제(을)를 참조하세요.

IAM을 사용하여 서비스 연결 역할을 삭제할 수 있습니다. 자세한 정보는 IAM 사용 설명서서비스에 연결 역할 삭제를 참조하세요.

AWSServiceRoleForAutoScaling 서비스 연결 역할을 삭제한 경우, Auto Scaling 그룹을 생성할 때 다른 서비스 연결 역할을 지정하지 않으면 Amazon EC2 Auto Scaling이 해당 역할을 다시 생성합니다.

Amazon EC2 Auto Scaling 서비스 연결 역할을 지원하는 리전

Amazon EC2 Auto Scaling은 서비스가 제공되는 모든 지역에서 서비스 연결 역할을 사용할 수 있도록 AWS 리전 지원합니다.