기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
를 사용하여 ELB로 작업하는 예제 AWS CLI
AWS Command Line Interface (AWS CLI)를 사용하여 로드 밸런서 및 대상 그룹을 연결, 분리 및 설명하고, ELB 상태 확인을 추가 및 제거하고, 활성화된 가용 영역을 변경합니다.
이 주제에서는 Amazon EC2 Auto Scaling에 대한 일반적인 작업을 수행하는 AWS CLI 명령의 예를 보여줍니다.
내용
대상 그룹 또는 Classic Load Balancer 연결
다음 create-auto-scaling-group
--auto-scaling-group-name, --vpc-zone-identifier, --min-size, --max-size의 샘플 값을 바꿉니다. --launch-template 옵션의 경우, 및 my-launch-template를 Auto Scaling 그룹의 시작 템플릿 이름 및 버전으로 바꿉니다. 1--traffic-sources 옵션의 경우, 샘플 ARN을 Application Load Balancer, Network Load Balancer 또는 Gateway Load Balancer에 대한 대상 그룹의 ARN으로 바꿉니다.
aws autoscaling create-auto-scaling-group --auto-scaling-group-namemy-asg\ --launch-template LaunchTemplateName=my-launch-template,Version='1' \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --min-size1--max-size5\ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1"
대상 그룹이 생성된 후에 attach-traffic-sources
다음 명령은 다른 대상 그룹을 동일한 그룹에 추가합니다.
aws autoscaling attach-traffic-sources --auto-scaling-group-namemy-asg\ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2"
또는 Classic Load Balancer를 그룹에 연결하려면 다음 예와 같이 create-auto-scaling-group 또는 attach-traffic-sources를 사용할 때 --traffic-sources 및 --type 옵션을 지정합니다. 을 Classic Load Balancer의 이름으로 바꿉니다. my-classic-load-balancer--type 옵션의 경우, 의 값을 지정합니다.elb
--traffic-sources "Identifier=my-classic-load-balancer" --type elb
대상 그룹 또는 Classic Load Balancer 설명
Auto Scaling 그룹에 연결된 로드 밸런서 또는 대상 그룹을 설명하려면 다음 describe-traffic-sources을 사용자 그룹의 이름으로 바꿉니다.my-asg
aws autoscaling describe-traffic-sources --auto-scaling-group-namemy-asg
이 예제에서는 Auto Scaling 그룹에 연결한 ELB 대상 그룹의 ARN을 반환합니다.
{
"TrafficSources": [
{
"Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE1",
"State": "InService",
"Type": "elbv2"
},
{
"Identifier": "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/12345678EXAMPLE2",
"State": "InService",
"Type": "elbv2"
}
]
}
출력에서 State 필드에 대한 설명은 로드 밸런서의 연결 상태 확인(을)를 참조하세요.
ELB 상태 확인 추가
Auto Scaling 그룹이 인스턴스에서 수행하는 상태 확인에 ELB 상태 확인을 추가하려면 다음 update-auto-scaling-group--health-check-type 옵션 값으로를 지정합니다. ELB을 사용자 그룹의 이름으로 바꿉니다.my-asg
aws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --health-check-type "ELB"
새 인스턴스는 상태 확인을 통과하기 전에 간단한 준비를 위한 시간이 필요한 경우가 많습니다. 유예 기간에 준비 시간이 충분하지 않으면 인스턴스가 트래픽을 서비스할 준비가 되지 않은 것처럼 보일 수 있습니다. Amazon EC2 Auto Scaling은 이러한 인스턴스를 비정상으로 간주하여 교체할 수 있습니다.
상태 확인 유예 기간을 업데이트하려면 다음 예와 같이 update-auto-scaling-group을 사용할 때 --health-check-grace-period 옵션을 사용합니다. 새 인스턴스가 비정상인 것으로 확인될 경우 종료하기 전에 새 인스턴스를 계속 사용할 수 있게 하려면 300을 초 단위로 바꿉니다.
--health-check-grace-period300
자세한 내용은 Auto Scaling 그룹의 인스턴스에 대한 상태 확인(을)를 참조하세요.
가용 영역 변경
가용 영역 변경과 관련하여 다음과 같은 몇 가지 제한 사항을 파악하고 있어야 합니다. 자세한 내용은 가용 영역 추가 단원을 참조하십시오.
Application Load Balancer 또는 Network Load Balancer의 가용 영역을 변경하려면
-
로드 밸런서의 가용 영역을 변경하기 전에 먼저 Auto Scaling 그룹의 가용 영역을 업데이트하여 지정된 영역에서 인스턴스 유형을 사용할 수 있는지 확인하는 것이 좋습니다.
다음 update-auto-scaling-group
명령을 사용하여 Auto Scaling 그룹에 사용되는 가용 영역을 업데이트합니다. 샘플 서브넷 ID를 활성화할 가용 영역의 서브넷 ID로 바꿉니다. 지정된 서브넷이 이전에 활성화된 서브넷을 바꿉니다. 을 사용자 그룹의 이름으로 바꿉니다.my-asgaws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2,subnet-8360a9e7" -
다음 describe-auto-scaling-groups
명령을 사용하여 새 서브넷의 인스턴스가 시작되었는지 확인합니다. 인스턴스가 시작된 경우 인스턴스 및 인스턴스 상태 목록이 표시됩니다. 을 사용자 그룹의 이름으로 바꿉니다.my-asgaws autoscaling describe-auto-scaling-groups --auto-scaling-group-namemy-asg -
다음 set-subnets
명령을 사용하여 로드 밸런서의 서브넷을 지정합니다. 샘플 서브넷 ID를 활성화할 가용 영역의 서브넷 ID로 바꿉니다. 가용 영역당 1개의 서브넷만 지정할 수 있습니다. 지정된 서브넷이 이전에 활성화된 서브넷을 바꿉니다. 를 로드 밸런서의 ARN으로 바꿉니다.my-lb-arnaws elbv2 set-subnets --load-balancer-arnmy-lb-arn\ --subnetssubnet-41767929subnet-cb663da2subnet-8360a9e7
Classic Load Balancer의 가용 영역을 변경하려면
-
로드 밸런서의 가용 영역을 변경하기 전에 먼저 Auto Scaling 그룹의 가용 영역을 업데이트하여 지정된 영역에서 인스턴스 유형을 사용할 수 있는지 확인하는 것이 좋습니다.
다음 update-auto-scaling-group
명령을 사용하여 Auto Scaling 그룹에 사용되는 가용 영역을 업데이트합니다. 샘플 서브넷 ID를 활성화할 가용 영역의 서브넷 ID로 바꿉니다. 지정된 서브넷이 이전에 활성화된 서브넷을 바꿉니다. 을 사용자 그룹의 이름으로 바꿉니다.my-asgaws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --vpc-zone-identifier "subnet-41767929,subnet-cb663da2" -
다음 describe-auto-scaling-groups
명령을 사용하여 새 서브넷의 인스턴스가 시작되었는지 확인합니다. 인스턴스가 시작된 경우 인스턴스 및 인스턴스 상태 목록이 표시됩니다. 을 사용자 그룹의 이름으로 바꿉니다.my-asgaws autoscaling describe-auto-scaling-groups --auto-scaling-group-namemy-asg -
다음 attach-load-balancer-to-subnets
명령을 사용하여 Classic Load Balancer에 대해 새 가용 영역을 활성화합니다. 샘플 서브넷 ID를 활성화할 가용 영역의 서브넷 ID로 바꿉니다. 를 로드 밸런서의 이름으로 바꿉니다.my-lbaws elb attach-load-balancer-to-subnets --load-balancer-namemy-lb\ --subnetssubnet-cb663da2가용 영역을 비활성화하려면 다음 detach-load-balancer-from-subnets
명령을 사용합니다. 샘플 서브넷 ID를 비활성화할 가용 영역의 서브넷 ID로 바꿉니다. 를 로드 밸런서의 이름으로 바꿉니다.my-lbaws elb detach-load-balancer-from-subnets --load-balancer-namemy-lb\ --subnetssubnet-8360a9e7
대상 그룹 또는 Classic Load Balancer 분리
대상 그룹이 더이상 필요하지 않으면 detach-traffic-sources
--auto-scaling-group-name 옵션의 경우, 를 그룹 이름으로 바꿉니다. my-asg--traffic-sources 옵션의 경우, 샘플 ARN을 Application Load Balancer, Network Load Balancer 또는 Gateway Load Balancer에 대한 대상 그룹의 ARN으로 바꿉니다.
aws autoscaling detach-traffic-sources --auto-scaling-group-namemy-asg\ --traffic-sources "Identifier=arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
그룹에서 Classic Load Balancer를 분리하려면 다음 예와 같이 --traffic-sources 및 --type 옵션을 지정합니다. 을 Classic Load Balancer의 이름으로 바꿉니다. my-classic-load-balancer--type 옵션의 경우, 의 값을 지정합니다.elb
--traffic-sources "Identifier=my-classic-load-balancer" --type elb
ELB 상태 확인 제거
Auto Scaling 그룹에서 ELB 상태 확인을 제거하려면 다음 update-auto-scaling-group--health-check-type 옵션 값으로를 지정합니다. EC2을 사용자 그룹의 이름으로 바꿉니다.my-asg
aws autoscaling update-auto-scaling-group --auto-scaling-group-namemy-asg\ --health-check-type "EC2"
자세한 내용은 Auto Scaling 그룹의 인스턴스에 대한 상태 확인(을)를 참조하세요.
레거시 명령
다음 예에서는 레거시 CLI 명령을 사용하여 로드 밸런서와 대상 그룹을 연결, 분리, 설명하는 방법을 보여줍니다. 이 설명서는 이 설명서를 사용하려는 모든 고객을 위한 참조 자료로 유지됩니다. 레거시 CLI 명령은 계속 지원되지만 여러 트래픽 소스 유형을 연결하고 분리할 수 있는 새로운 “트래픽 소스” CLI 명령을 사용하는 것이 좋습니다. 동일한 Auto Scaling 그룹에서 레거시 CLI 명령과 “트래픽 소스” CLI 명령을 모두 사용할 수 있습니다.
대상 그룹을 연결하려면
다음 Create-auto-scaling-group
aws autoscaling create-auto-scaling-group --auto-scaling-group-namemy-asg\ --launch-template LaunchTemplateName=my-launch-template,Version='1' \ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456" \ --min-size1--max-size5
다음 attach-load-balancer-target-groups
aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-namemy-asg\ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Classic Load Balancer를 연결하려면
다음 Create-auto-scaling-group
aws autoscaling create-auto-scaling-group --auto-scaling-group-namemy-asg\ --launch-configuration-namemy-launch-config\ --vpc-zone-identifier "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782" \ --load-balancer-names "my-load-balancer" \ --min-size1--max-size5
다음 attach-load-balancers
aws autoscaling attach-load-balancers --auto-scaling-group-namemy-asg\ --load-balancer-namesmy-lb
대상 그룹을 설명하려면
Auto Scaling 그룹과 연결된 대상 그룹을 설명하려면 describe-load-balancer-target-groupsmy-asg에 대한 대상 그룹을 나열하는 예제입니다.
aws autoscaling describe-load-balancer-target-groups --auto-scaling-group-namemy-asg
Classic Load Balancer를 설명하려면
Auto Scaling 그룹과 연결된 Classic Load Balancer를 설명하려면 describe-load-balancersmy-asg의 Classic Load Balancer를 나열합니다.
aws autoscaling describe-load-balancers --auto-scaling-group-namemy-asg
대상 그룹을 분리하려면
대상 그룹이 더 이상 필요하지 않으면 다음 detach-load-balancer-target-groups
aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-namemy-asg\ --target-group-arns "arn:aws:elasticloadbalancing:region:account-id:targetgroup/my-targets/1234567890123456"
Classic Load Balancer를 분리하려면
필요하지 않은 경우 다음 detach-load-balancers
aws autoscaling detach-load-balancers --auto-scaling-group-namemy-asg\ --load-balancer-namesmy-lb