AWS Doc SDK ExamplesWord
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Elastic Load Balancing -를 사용한 버전 2 예제 AWS CLI
다음 코드 예제에서는 Elastic Load Balancing - 버전 2와 AWS Command Line Interface 함께를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.
각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.
주제
작업
다음 코드 예시에서는 add-listener-certificates
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 리스너에 인증서를 추가하려면
이 예제에서는 지정된 보안 리스너에 지정된 인증서를 추가합니다.
명령:
aws elbv2 add-listener-certificates --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
--certificatesCertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705
출력:
{ "Certificates": [ { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705", "IsDefault": false } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 AddListenerCertificates
를 참조하세요.
-
다음 코드 예시에서는 add-tags
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서에 태그를 추가하려면
다음
add-tags
예제에서는 지정된 로드 밸런서에project
및department
태그를 추가합니다.aws elbv2 add-tags \ --resource-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
\ --tags"Key=project,Value=lima"
"Key=department,Value=digital-media"
-
API 세부 정보는 AWS CLI 명령 참조의 AddTags
를 참조하세요.
-
다음 코드 예시에서는 create-listener
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: HTTP 리스너 생성
다음
create-listener
예제에서는 지정된 대상 그룹에 요청을 전달하는 지정된 Application Load Balancer에 대한 HTTP 리스너를 생성합니다.aws elbv2 create-listener \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
\ --protocolHTTP
\ --port80
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
자세한 내용은 Application Load Balancer 사용 설명서 AWS CLI의 자습서: Application Load Balancer를 사용하여 Application Load Balancer 생성을 참조하세요.
예제 2: HTTPS 리스너 생성
다음
create-listener
예제에서는 지정된 대상 그룹에 요청을 전달하는 지정된 Application Load Balancer에 대한 HTTPS 리스너를 생성합니다. SSL 리스너에 대한 HTTPS 인증서를 지정해야 합니다. AWS Certificate Manager(ACM)를 사용하여 인증서를 생성하고 관리할 수 있습니다. 또는 SSL/TLS 도구를 사용하여 인증서를 생성하고, 인증 기관(CA)에서 서명한 인증서를 가져오고, 인증서를 AWS Identity and Access Management(IAM)에 업로드할 수 있습니다.aws elbv2 create-listener \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
\ --protocolHTTPS
\ --port443
\ --certificatesCertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/3dcb0a41-bd72-4774-9ad9-756919c40557
\ --ssl-policyELBSecurityPolicy-2016-08
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
자세한 내용은 Application Load Balancer 사용 설명서의 HTTPS 리스너 추가를 참조하세요.
예제 3: TCP 리스너 생성
다음
create-listener
예제에서는 지정된 대상 그룹에 요청을 전달하는 지정된 Network Load Balancer에 대한 TCP 리스너를 생성합니다.aws elbv2 create-listener \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/net/my-network-load-balancer/5d1b75f4f1cee11e
\ --protocolTCP
\ --port80
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-targets/b6bba954d1361c78
자세한 내용은 Network Load Balancer 사용 설명서의 자습서: AWS CLI를 사용하여 Network Load Balancer 생성을 참조하세요.
예제 4: TLS 리스너 생성
다음
create-listener
예제에서는 지정된 대상 그룹에 요청을 전달하는 지정된 Network Load Balancer에 대한 TLS 리스너를 생성합니다. SSL 리스너에 대한 TLS 인증서를 지정해야 합니다.aws elbv2 create-listener \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
\ --protocolTLS
\ --port443
\ --certificatesCertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/3dcb0a41-bd72-4774-9ad9-756919c40557
\ --ssl-policyELBSecurityPolicy-2016-08
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
자세한 내용은 Network Load Balancer 사용 설명서의 Network Load Balancer용 TLS 리스너를 참조하세요.
예제 5: UDP 리스너 생성
다음
create-listener
예제에서는 지정된 대상 그룹에 요청을 전달하는 지정된 Network Load Balancer에 대한 UDP 리스너를 생성합니다.aws elbv2 create-listener \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/net/my-network-load-balancer/5d1b75f4f1cee11e
\ --protocolUDP
\ --port53
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-targets/b6bba954d1361c78
자세한 내용은 Network Load Balancer 사용 설명서의 자습서: AWS CLI Load Balancer를 사용하여 Network Load Balancer 생성을 참조하세요.
예 6: 지정된 게이트웨이 및 전달을 위한 리스너를 생성하는 방법
다음
create-listener
예시에서는 요청을 지정된 대상 그룹으로 전달하는 지정된 Gateway Load Balancer의 리스너를 생성합니다.aws elbv2 create-listener \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-east-1:850631746142:loadbalancer/gwy/my-gateway-load-balancer/e0f9b3d5c7f7d3d6
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-east-1:850631746142:targetgroup/my-glb-targets/007ca469fae3bb1615
출력:
{ "Listeners": [ { "ListenerArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:listener/gwy/my-agw-lb-example2/e0f9b3d5c7f7d3d6/afc127db15f925de", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:loadbalancer/gwy/my-agw-lb-example2/e0f9b3d5c7f7d3d6", "DefaultActions": [ { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:targetgroup/test-tg-agw-2/007ca469fae3bb1615", "ForwardConfig": { "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:targetgroup/test-tg-agw-2/007ca469fae3bb1615" } ] } } ] } ] }
자세한 내용은 Gateway Load Balancer 사용 설명서의 AWS CLI를 사용하여 Gateway Load Balancer 시작하기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateListener
를 참조하세요.
-
다음 코드 예시에서는 create-load-balancer
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 인터넷 경계 로드 밸런서를 생성하는 방법
다음
create-load-balancer
예시에서는 인터넷 경계 Application Load Balancer를 생성하고 지정된 서브넷의 가용 영역을 활성화합니다.aws elbv2 create-load-balancer \ --name
my-load-balancer
\ --subnetssubnet-b7d581c0
subnet-8360a9e7
출력:
{ "LoadBalancers": [ { "Type": "application", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "ZoneName": "us-west-2a", "SubnetId": "subnet-8360a9e7" }, { "ZoneName": "us-west-2b", "SubnetId": "subnet-b7d581c0" } ], "CreatedTime": "2017-08-25T21:26:12.920Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-5943793c" ], "LoadBalancerName": "my-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" } ] }
자세한 내용은 Application Load Balancer 사용 설명서의 자습서: AWS CLI를 사용하여 Application Load Balancer 생성을 참조하세요.
예 2: 내부 로드 밸런서를 생성하는 방법
다음
create-load-balancer
예시에서는 내부 Application Load Balancer를 생성하고 지정된 서브넷의 가용 영역을 활성화합니다.aws elbv2 create-load-balancer \ --name
my-internal-load-balancer
\ --schemeinternal
\ --subnetssubnet-b7d581c0
subnet-8360a9e7
출력:
{ "LoadBalancers": [ { "Type": "application", "Scheme": "internal", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "ZoneName": "us-west-2a", "SubnetId": "subnet-8360a9e7" }, { "ZoneName": "us-west-2b", "SubnetId": "subnet-b7d581c0" } ], "CreatedTime": "2016-03-25T21:29:48.850Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "internal-my-internal-load-balancer-1529930873.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-5943793c" ], "LoadBalancerName": "my-internal-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-internal-load-balancer/5b49b8d4303115c2" } ] }
자세한 내용은 Application Load Balancer 사용 설명서 AWS CLI의 자습서: Application Load Balancer를 사용하여 Application Load Balancer 생성을 참조하세요.
예 3: Network Load Balancer를 생성하는 방법
다음
create-load-balancer
예시에서는 인터넷 경계 Network Load Balancer를 생성하고 지정된 서브넷의 가용 영역을 활성화합니다. 서브넷 매핑을 사용하여 지정된 탄력적 IP 주소를 로드 밸런서 노드가 가용 영역에 사용하는 네트워크 인터페이스와 연결합니다.aws elbv2 create-load-balancer \ --name
my-network-load-balancer
\ --typenetwork
\ --subnet-mappingsSubnetId=subnet-b7d581c0,AllocationId=eipalloc-64d5890a
출력:
{ "LoadBalancers": [ { "Type": "network", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "LoadBalancerAddresses": [ { "IpAddress": "35.161.207.171", "AllocationId": "eipalloc-64d5890a" } ], "ZoneName": "us-west-2b", "SubnetId": "subnet-5264e837" } ], "CreatedTime": "2017-10-15T22:41:25.657Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "my-network-load-balancer-5d1b75f4f1cee11e.elb.us-west-2.amazonaws.com", "LoadBalancerName": "my-network-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/net/my-network-load-balancer/5d1b75f4f1cee11e" } ] }
자세한 내용은 Network Load Balancer 사용 설명서의 자습서: AWS CLI Load Balancer를 사용하여 Network Load Balancer 생성을 참조하세요.
예 4: Gateway Load Balancer를 생성하는 방법
다음
create-load-balancer
예시에서는 Gateway Load Balancer를 생성하고 지정된 서브넷의 가용 영역을 활성화합니다.aws elbv2 create-load-balancer \ --name
my-gateway-load-balancer
\ --typegateway
\ --subnetssubnet-dc83f691
subnet-a62583f9
출력:
{ "LoadBalancers": [ { "Type": "gateway", "VpcId": "vpc-838475fe", "AvailabilityZones": [ { "ZoneName": "us-east-1b", "SubnetId": "subnet-a62583f9" }, { "ZoneName": "us-east-1a", "SubnetId": "subnet-dc83f691" } ], "CreatedTime": "2021-07-14T19:33:43.324000+00:00", "LoadBalancerName": "my-gateway-load-balancer", "State": { "Code": "provisioning" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-east-1:850631746142:loadbalancer/gwy/my-gateway-load-balancer/dfbb5a7d32cdee79" } ] }
자세한 내용은 Gateway Load Balancer 사용 설명서의 AWS CLI를 사용하여 Gateway Load Balancer 시작하기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateLoadBalancer
를 참조하세요.
-
다음 코드 예시에서는 create-rule
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 경로 조건 및 전달 작업을 사용하여 규칙을 생성하려면
다음
create-rule
예제에서는 URL에 지정된 패턴이 포함된 경우 지정된 대상 그룹에 요청을 전달하는 규칙을 생성합니다.aws elbv2 create-rule \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
\ --priority5
\ --conditionsfile://conditions-pattern.json
--actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
conditions-pattern.json
의 콘텐츠:[ { "Field": "path-pattern", "PathPatternConfig": { "Values": ["/images/*"] } } ]
예제 2: 호스트 조건과 고정 응답을 사용하여 규칙을 생성하려면
다음
create-rule
예제에서는 호스트 헤더의 호스트 이름이 지정된 호스트 이름과 일치하는 경우 고정 응답을 제공하는 규칙을 생성합니다.aws elbv2 create-rule \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
\ --priority10
\ --conditionsfile://conditions-host.json
\ --actionsfile://actions-fixed-response.json
conditions-host.json
의 콘텐츠[ { "Field": "host-header", "HostHeaderConfig": { "Values": ["*.example.com"] } } ]
actions-fixed-response.json
의 콘텐츠[ { "Type": "fixed-response", "FixedResponseConfig": { "MessageBody": "Hello world", "StatusCode": "200", "ContentType": "text/plain" } } ]
예제 3: 소스 IP 주소 조건, 인증 작업 및 전달 작업을 사용하여 규칙을 생성하려면
다음
create-rule
예제에서는 소스 IP 주소가 지정된 IP 주소와 일치하는 경우 사용자를 인증하는 규칙을 생성하고 인증이 성공하면 지정된 대상 그룹에 요청을 전달합니다.aws elbv2 create-rule \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
\ --priority20
\ --conditionsfile://conditions-source-ip.json
\ --actionsfile://actions-authenticate.json
conditions-source-ip.json
의 콘텐츠[ { "Field": "source-ip", "SourceIpConfig": { "Values": ["192.0.2.0/24", "198.51.100.10/32"] } } ]
actions-authenticate.json
의 콘텐츠[ { "Type": "authenticate-oidc", "AuthenticateOidcConfig": { "Issuer": "https://idp-issuer.com", "AuthorizationEndpoint": "https://authorization-endpoint.com", "TokenEndpoint": "https://token-endpoint.com", "UserInfoEndpoint": "https://user-info-endpoint.com", "ClientId": "abcdefghijklmnopqrstuvwxyz123456789", "ClientSecret": "123456789012345678901234567890", "SessionCookieName": "my-cookie", "SessionTimeout": 3600, "Scope": "email", "AuthenticationRequestExtraParams": { "display": "page", "prompt": "login" }, "OnUnauthenticatedRequest": "deny" }, "Order": 1 }, { "Type": "forward", "TargetGroupArn": "arn:aws:elasticloadbalancing:us-east-1:880185128111:targetgroup/cli-test/642a97ecb0e0f26b", "Order": 2 } ]
-
API 세부 정보는 AWS CLI 명령 참조의 CreateRule
를 참조하세요.
-
다음 코드 예시에서는 create-target-group
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: Application Load Balancer의 대상 그룹을 생성하려면
다음
create-target-group
예시에서는 인스턴스 ID(대상 유형instance
)별로 대상을 등록하는 Application Load Balancer의 대상 그룹을 생성합니다. 이 대상 그룹은 HTTP 프로토콜, 포트 80 및 HTTP 대상 그룹에 대한 기본 상태 확인 설정을 사용합니다.aws elbv2 create-target-group \ --name
my-targets
\ --protocolHTTP
\ --port80
\ --target-typeinstance
\ --vpc-idvpc-3ac0fb5f
출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "TargetGroupName": "my-targets", "Protocol": "HTTP", "Port": 80, "VpcId": "vpc-3ac0fb5f", "HealthCheckProtocol": "HTTP", "HealthCheckPort": "traffic-port", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200" }, "TargetType": "instance", "ProtocolVersion": "HTTP1", "IpAddressType": "ipv4" } ] }
자세한 내용은 Application Load Balancer 사용 설명서의 대상 그룹 생성을 참조하세요.
예제 2: Application Load Balancer에서 Lambda 함수로 트래픽을 라우팅하는 대상 그룹을 생성하려면
다음
create-target-group
예시에서는 대상이 Lambda 함수(대상 유형lambda
)인 Application Load Balancer의 대상 그룹을 생성합니다. 기본적으로 상태 확인은 이 대상 그룹에 대해 비활성화됩니다.aws elbv2 create-target-group \ --name
my-lambda-target
\ --target-typelambda
출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-lambda-target/a3003e085dbb8ddc", "TargetGroupName": "my-lambda-target", "HealthCheckEnabled": false, "HealthCheckIntervalSeconds": 35, "HealthCheckTimeoutSeconds": 30, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200" }, "TargetType": "lambda", "IpAddressType": "ipv4" } ] }
자세한 내용은 Application Load Balancer 사용 설명서의 Lambda 함수를 대상으로를 참조하세요.
예제 3: Network Load Balancer의 대상 그룹을 생성하려면
다음
create-target-group
예시에서는 IP 주소(대상 유형ip
)별로 대상을 등록하는 Network Load Balancer의 대상 그룹을 생성합니다. 이 대상 그룹은 TCP 프로토콜, 포트 80 및 TCP 대상 그룹의 기본 상태 확인 설정을 사용합니다.aws elbv2 create-target-group \ --name
my-ip-targets
\ --protocolTCP
\ --port80
\ --target-typeip
\ --vpc-idvpc-3ac0fb5f
출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-ip-targets/b6bba954d1361c78", "TargetGroupName": "my-ip-targets", "Protocol": "TCP", "Port": 80, "VpcId": "vpc-3ac0fb5f", "HealthCheckEnabled": true, "HealthCheckProtocol": "TCP", "HealthCheckPort": "traffic-port", "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 10, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "TargetType": "ip", "IpAddressType": "ipv4" } ] }
자세한 내용은 Network Load Balancer 사용 설명서의 대상 그룹 생성을 참조하세요.
예제 4: Network Load Balancer에서 Application Load Balancer로 트래픽을 라우팅하는 대상 그룹을 생성하려면
다음
create-target-group
예제에서는 Application Load Balancer를 대상으로 등록하는 Network Load Balancer의 대상 그룹을 생성합니다(대상 유형은 임alb
). Application Load Balanceraws elbv2 create-target-group --name my-alb-target --protocol TCP --port 80 --target-type alb --vpc-id vpc-3ac0fb5f
출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-alb-target/a3003e085dbb8ddc", "TargetGroupName": "my-alb-target", "Protocol": "TCP", "Port": 80, "VpcId": "vpc-838475fe", "HealthCheckProtocol": "HTTP", "HealthCheckPort": "traffic-port", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 6, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200-399" }, "TargetType": "alb", "IpAddressType": "ipv4" } ] }
자세한 내용은 Network Load Balancer 사용 설명서의 Application Load Balancer를 대상으로 하는 대상 그룹 생성을 참조하세요.
예제 5: Gateway Load Balancer의 대상 그룹을 생성하려면
다음
create-target-group
예제에서는 대상이 인스턴스이고 대상 그룹 프로토콜이 인 Gateway Load Balancer의 대상 그룹을 생성합니다GENEVE
.aws elbv2 create-target-group \ --name
my-glb-targetgroup
\ --protocolGENEVE
\ --port6081
\ --target-typeinstance
\ --vpc-idvpc-838475fe
출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-glb-targetgroup/00c3d57eacd6f40b6f", "TargetGroupName": "my-glb-targetgroup", "Protocol": "GENEVE", "Port": 6081, "VpcId": "vpc-838475fe", "HealthCheckProtocol": "TCP", "HealthCheckPort": "80", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 10, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "TargetType": "instance" } ] }
자세한 내용은 Gateway Load Balancer 사용 설명서의 대상 그룹 생성 <https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/createWord-target-group.html>`__을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateTargetGroup
를 참조하세요.
-
다음 코드 예시에서는 delete-listener
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
리스너를 삭제하려면
다음
delete-listener
예제에서는 지정된 리스너를 삭제합니다.aws elbv2 delete-listener \ --listener-arn
arn:aws:elasticloadbalancing:ua-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteListener
를 참조하세요.
-
다음 코드 예시에서는 delete-load-balancer
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서를 삭제하는 방법
다음
delete-load-balancer
예시에서는 지정된 로드 밸런서를 삭제합니다.aws elbv2 delete-load-balancer \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteLoadBalancer
를 참조하세요.
-
다음 코드 예시에서는 delete-rule
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
규칙을 삭제하려면
다음
delete-rule
예제에서는 지정된 규칙을 삭제합니다.aws elbv2 delete-rule \ --rule-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteRule
를 참조하세요.
-
다음 코드 예시에서는 delete-target-group
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
대상 그룹을 삭제하는 방법
다음
delete-target-group
예시에서는 지정된 대상 그룹을 삭제합니다.aws elbv2 delete-target-group \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 Application Load Balancer Load Balancer 안내서의 로드 밸런서 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteTargetGroup
를 참조하세요.
-
다음 코드 예시에서는 deregister-targets
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 대상 그룹에서 대상 등록을 취소하려면
다음
deregister-targets
예제에서는 지정된 대상 그룹에서 지정된 인스턴스를 제거합니다.aws elbv2 deregister-targets \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
\ --targetsId=i-1234567890abcdef0
예제 2: 포트 재정의를 사용하여 등록된 대상 등록 취소
다음
deregister-targets
예제에서는 포트 재정의를 사용하여 등록된 대상 그룹에서 인스턴스를 제거합니다.aws elbv2 deregister-targets \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-internal-targets/3bb63f11dfb0faf9
\ --targetsId=i-1234567890abcdef0,Port=80
Id=i-1234567890abcdef0,Port=766
-
API 세부 정보는 AWS CLI 명령 참조의 DeregisterTargets
를 참조하세요.
-
다음 코드 예시에서는 describe-account-limits
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
Elastic Load Balancing 제한 설명
다음
describe-account-limits
예제에서는 현재 리전의 AWS 계정에 대한 Elastic Load Balancing 제한을 표시합니다.aws elbv2 describe-account-limits
출력:
{ "Limits": [ { "Name": "target-groups", "Max": "3000" }, { "Name": "targets-per-application-load-balancer", "Max": "1000" }, { "Name": "listeners-per-application-load-balancer", "Max": "50" }, { "Name": "rules-per-application-load-balancer", "Max": "100" }, { "Name": "network-load-balancers", "Max": "50" }, { "Name": "targets-per-network-load-balancer", "Max": "3000" }, { "Name": "targets-per-availability-zone-per-network-load-balancer", "Max": "500" }, { "Name": "listeners-per-network-load-balancer", "Max": "50" }, { "Name": "condition-values-per-alb-rule", "Max": "5" }, { "Name": "condition-wildcards-per-alb-rule", "Max": "5" }, { "Name": "target-groups-per-application-load-balancer", "Max": "100" }, { "Name": "target-groups-per-action-on-application-load-balancer", "Max": "5" }, { "Name": "target-groups-per-action-on-network-load-balancer", "Max": "1" }, { "Name": "certificates-per-application-load-balancer", "Max": "25" }, { "Name": "certificates-per-network-load-balancer", "Max": "25" }, { "Name": "targets-per-target-group", "Max": "1000" }, { "Name": "target-id-registrations-per-application-load-balancer", "Max": "1000" }, { "Name": "network-load-balancer-enis-per-vpc", "Max": "1200" }, { "Name": "application-load-balancers", "Max": "50" }, { "Name": "gateway-load-balancers", "Max": "100" }, { "Name": "gateway-load-balancers-per-vpc", "Max": "100" }, { "Name": "geneve-target-groups", "Max": "100" }, { "Name": "targets-per-availability-zone-per-gateway-load-balancer", "Max": "300" } ] }
자세한 내용은 AWS 일반 참조의 할당량을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeAccountLimits
를 참조하세요.
-
다음 코드 예시에서는 describe-listener-certificates
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 리스너의 인증서를 설명하려면
이 예제에서는 지정된 보안 리스너의 인증서를 설명합니다.
명령:
aws elbv2 describe-listener-certificates --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
출력:
{ "Certificates": [ { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705", "IsDefault": false }, { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/3dcb0a41-bd72-4774-9ad9-756919c40557", "IsDefault": false }, { "CertificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/fe59da96-6f58-4a22-8eed-6d0d50477e1d", "IsDefault": true } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeListenerCertificates
를 참조하세요.
-
다음 코드 예시에서는 describe-listeners
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
리스너를 설명하려면
이 예제에서는 지정된 리스너를 설명합니다.
명령:
aws elbv2 describe-listeners --listener-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
출력:
{ "Listeners": [ { "Port": 80, "Protocol": "HTTP", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" } ] }
로드 밸런서의 리스너를 설명하려면
이 예제에서는 지정된 로드 밸런서에 대한 리스너를 설명합니다.
명령:
aws elbv2 describe-listeners --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
출력:
{ "Listeners": [ { "Port": 443, "Protocol": "HTTPS", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "SslPolicy": "ELBSecurityPolicy-2015-05", "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-server-cert" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65" }, { "Port": 80, "Protocol": "HTTP", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeListeners
를 참조하세요.
-
다음 코드 예시에서는 describe-load-balancer-attributes
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서 속성을 설명하려면
다음
describe-load-balancer-attributes
예제에서는 지정된 로드 밸런서의 속성을 표시합니다.aws elbv2 describe-load-balancer-attributes \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
다음 예제 출력은 Application Load Balancer의 속성을 보여줍니다.
{ "Attributes": [ { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "", "Key": "access_logs.s3.bucket" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "60", "Key": "idle_timeout.timeout_seconds" }, { "Value": "false", "Key": "deletion_protection.enabled" }, { "Value": "true", "Key": "routing.http2.enabled" } ] }
다음 예제 출력에는 Network Load Balancer에 대한 속성이 포함됩니다.
{ "Attributes": [ { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "", "Key": "access_logs.s3.bucket" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "false", "Key": "deletion_protection.enabled" }, { "Value": "false", "Key": "load_balancing.cross_zone.enabled" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeLoadBalancerAttributes
를 참조하세요.
-
다음 코드 예시에서는 describe-load-balancers
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서를 설명하는 방법
이 예시에서는 지정된 로드 밸런서를 설명합니다.
명령:
aws elbv2 describe-load-balancers --load-balancer-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
출력:
{ "LoadBalancers": [ { "Type": "application", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "AvailabilityZones": [ { "ZoneName": "us-west-2a", "SubnetId": "subnet-8360a9e7" }, { "ZoneName": "us-west-2b", "SubnetId": "subnet-b7d581c0" } ], "CreatedTime": "2016-03-25T21:26:12.920Z", "CanonicalHostedZoneId": "Z2P70J7EXAMPLE", "DNSName": "my-load-balancer-424835706.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-5943793c" ], "LoadBalancerName": "my-load-balancer", "State": { "Code": "active" }, "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" } ] }
모든 로드 밸런서를 설명하는 방법
이 예시에서는 모든 로드 밸런서를 설명합니다.
명령:
aws elbv2 describe-load-balancers
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeLoadBalancers
를 참조하세요.
-
다음 코드 예시에서는 describe-rules
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 규칙 설명
다음
describe-rules
예제에서는 지정된 규칙에 대한 세부 정보를 표시합니다.aws elbv2 describe-rules \ --rule-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee
예제 2: 리스너에 대한 규칙을 설명하려면
다음
describe-rules
예제에서는 지정된 리스너의 규칙에 대한 세부 정보를 표시합니다. 출력에는 기본 규칙과 추가한 기타 규칙이 포함됩니다.aws elbv2 describe-rules \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeRules
를 참조하세요.
-
다음 코드 예시에서는 describe-ssl-policies
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 로드 밸런서 유형별로 SSL 협상에 사용되는 정책을 나열하려면
다음
describe-ssl-policies
예제에서는 Application Load Balancer와의 SSL 협상에 사용할 수 있는 정책의 이름을 표시합니다. 이 예제에서는--query
파라미터를 사용하여 정책의 이름만 표시합니다.aws elbv2 describe-ssl-policies \ --load-balancer-type
application
\ --querySslPolicies[*].Name
출력:
[ "ELBSecurityPolicy-2016-08", "ELBSecurityPolicy-TLS13-1-2-2021-06", "ELBSecurityPolicy-TLS13-1-2-Res-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06", "ELBSecurityPolicy-TLS13-1-1-2021-06", "ELBSecurityPolicy-TLS13-1-0-2021-06", "ELBSecurityPolicy-TLS13-1-3-2021-06", "ELBSecurityPolicy-TLS-1-2-2017-01", "ELBSecurityPolicy-TLS-1-1-2017-01", "ELBSecurityPolicy-TLS-1-2-Ext-2018-06", "ELBSecurityPolicy-FS-2018-06", "ELBSecurityPolicy-2015-05", "ELBSecurityPolicy-TLS-1-0-2015-04", "ELBSecurityPolicy-FS-1-2-Res-2019-08", "ELBSecurityPolicy-FS-1-1-2019-08", "ELBSecurityPolicy-FS-1-2-2019-08", "ELBSecurityPolicy-FS-1-2-Res-2020-10" ]
예제 2: 특정 프로토콜을 지원하는 정책을 나열하려면
다음
describe-ssl-policies
예제에서는 TLS 1.3 프로토콜을 지원하는 정책의 이름을 표시합니다. 이 예제에서는--query
파라미터를 사용하여 정책의 이름만 표시합니다.aws elbv2 describe-ssl-policies \ --load-balancer-type
application
\ --query SslPolicies[?contains(SslProtocols,'TLSv1.3')].Name출력:
[ "ELBSecurityPolicy-TLS13-1-2-2021-06", "ELBSecurityPolicy-TLS13-1-2-Res-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext1-2021-06", "ELBSecurityPolicy-TLS13-1-2-Ext2-2021-06", "ELBSecurityPolicy-TLS13-1-1-2021-06", "ELBSecurityPolicy-TLS13-1-0-2021-06", "ELBSecurityPolicy-TLS13-1-3-2021-06" ]
예제 3: 정책의 암호 표시
다음
describe-ssl-policies
예제에서는 지정된 정책의 암호 이름을 표시합니다. 이 예제에서는--query
파라미터를 사용하여 암호 이름만 표시합니다. 목록의 첫 번째 암호는 우선 순위가 1이고 나머지 암호는 우선 순위가 입니다.aws elbv2 describe-ssl-policies \ --names
ELBSecurityPolicy-TLS13-1-2-2021-06
\ --querySslPolicies[*].Ciphers[*].Name
출력:
[ "TLS_AES_128_GCM_SHA256", "TLS_AES_256_GCM_SHA384", "TLS_CHACHA20_POLY1305_SHA256", "ECDHE-ECDSA-AES128-GCM-SHA256", "ECDHE-RSA-AES128-GCM-SHA256", "ECDHE-ECDSA-AES128-SHA256", "ECDHE-RSA-AES128-SHA256", "ECDHE-ECDSA-AES256-GCM-SHA384", "ECDHE-RSA-AES256-GCM-SHA384", "ECDHE-ECDSA-AES256-SHA384", "ECDHE-RSA-AES256-SHA384" ]
자세한 내용은 Application Load Balancer 사용 설명서의 보안 정책을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeSslPolicies
를 참조하세요.
-
다음 코드 예시에서는 describe-tags
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서에 할당된 태그를 설명하려면
이 예제에서는 지정된 로드 밸런서에 할당된 태그를 설명합니다.
명령:
aws elbv2 describe-tags --resource-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
출력:
{ "TagDescriptions": [ { "ResourceArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Tags": [ { "Value": "lima", "Key": "project" }, { "Value": "digital-media", "Key": "department" } ] } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeTags
를 참조하세요.
-
다음 코드 예시에서는 describe-target-group-attributes
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
대상 그룹 속성을 설명하려면
다음
describe-target-group-attributes
예제에서는 지정된 대상 그룹의 속성을 표시합니다.aws elbv2 describe-target-group-attributes \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
프로토콜이 HTTP 또는 HTTPS이고 대상 유형이
instance
또는 인 경우 출력에 속성이 포함됩니다ip
.{ "Attributes": [ { "Value": "false", "Key": "stickiness.enabled" }, { "Value": "300", "Key": "deregistration_delay.timeout_seconds" }, { "Value": "lb_cookie", "Key": "stickiness.type" }, { "Value": "86400", "Key": "stickiness.lb_cookie.duration_seconds" }, { "Value": "0", "Key": "slow_start.duration_seconds" } ] }
프로토콜이 HTTP 또는 HTTPS이고 대상 유형이 인 경우 다음 출력에는 속성이 포함됩니다
lambda
.{ "Attributes": [ { "Value": "false", "Key": "lambda.multi_value_headers.enabled" } ] }
다음 출력에는 프로토콜이 TCP, Word, TLS UDP또는 TCP_UDP인 경우의 속성이 포함됩니다.
{ "Attributes": [ { "Value": "false", "Key": "proxy_protocol_v2.enabled" }, { "Value": "300", "Key": "deregistration_delay.timeout_seconds" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeTargetGroupAttributes
를 참조하세요.
-
다음 코드 예시에서는 describe-target-groups
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 대상 그룹을 설명하는 방법
다음
describe-target-groups
예시에서는 지정된 대상 그룹의 세부 정보를 표시합니다.aws elbv2 describe-target-groups \ --target-group-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "TargetGroupName": "my-targets", "Protocol": "HTTP", "Port": 80, "VpcId": "vpc-3ac0fb5f", "HealthCheckProtocol": "HTTP", "HealthCheckPort": "traffic-port", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "HealthCheckPath": "/", "Matcher": { "HttpCode": "200" }, "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "TargetType": "instance", "ProtocolVersion": "HTTP1", "IpAddressType": "ipv4" } ] }
예 2: 로드 밸런서의 모든 대상 그룹을 설명하는 방법
다음
describe-target-groups
예시에서는 지정된 로드 밸런서의 모든 대상 그룹에 대한 세부 정보를 표시합니다. 이 예제에서는--query
파라미터를 사용하여 대상 그룹 이름만 표시합니다.aws elbv2 describe-target-groups \ --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
\ --queryTargetGroups[*].TargetGroupName
출력:
[ "my-instance-targets", "my-ip-targets", "my-lambda-target" ]
자세한 내용은 Applicaion Load Balancer 안내서의 대상 그룹을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeTargetGroups
를 참조하세요.
-
다음 코드 예시에서는 describe-target-health
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 대상 그룹의 대상 상태를 설명하는 방법
다음
describe-target-health
예시에서는 지정된 대상 그룹의 대상 상태 세부 정보를 표시합니다. 이러한 대상은 정상입니다.aws elbv2 describe-target-health \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
출력:
{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-ceddcd4d", "Port": 80 }, "TargetHealth": { "State": "healthy" } }, { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "healthy" } } ] }
예 2: 대상의 상태를 설명하는 방법
다음
describe-target-health
예시에서는 지정된 대상의 상태 세부 정보를 표시합니다. 이 대상은 정상입니다.aws elbv2 describe-target-health \ --targets
Id=i-0f76fade,Port=80
\ --target-group-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
출력:
{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "healthy" } } ] }
다음 예시 출력은 리스너에 대한 작업에 대상 그룹이 지정되지 않은 대상에 대한 것입니다. 이 대상은 로드 밸런서에서 트래픽을 수신할 수 없습니다.
{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "unused", "Reason": "Target.NotInUse", "Description": "Target group is not configured to receive traffic from the load balancer" } } ] }
다음 예시 출력은 리스너에 대한 작업에 대상 그룹이 방금 지정된 대상에 대한 것입니다. 대상이 아직 등록되는 중입니다.
{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "initial", "Reason": "Elb.RegistrationInProgress", "Description": "Target registration is in progress" } } ] }
다음 예시 출력은 비정상 대상에 대한 것입니다.
{ "TargetHealthDescriptions": [ { "HealthCheckPort": "80", "Target": { "Id": "i-0f76fade", "Port": 80 }, "TargetHealth": { "State": "unhealthy", "Reason": "Target.Timeout", "Description": "Connection to target timed out" } } ] }
다음 예시 출력은 Lambda 함수인 대상에 대한 것이며 상태 확인은 비활성화되어 있습니다.
{ "TargetHealthDescriptions": [ { "Target": { "Id": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "AvailabilityZone": "all", }, "TargetHealth": { "State": "unavailable", "Reason": "Target.HealthCheckDisabled", "Description": "Health checks are not enabled for this target" } } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeTargetHealth
를 참조하세요.
-
다음 코드 예시에서는 modify-listener
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 기본 작업을 전달 작업으로 변경하려면
다음
modify-listener
예제에서는 지정된 리스너에 대한 기본 작업(전달 작업)을 변경합니다.aws elbv2 modify-listener \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
\ --default-actionsType=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f
출력:
{ "Listeners": [ { "Protocol": "HTTP", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f", "Type": "forward" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 80, "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" } ] }
예제 2: 기본 작업을 리디렉션 작업으로 변경하려면
다음
modify-listener
예제에서는 기본 작업을 지정된 리스너에 대한 리디렉션 작업으로 변경합니다.aws elbv2 modify-listener \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
\ --default-actionsType=redirect,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f
출력:
{ "Listeners": [ { "Protocol": "HTTP", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-new-targets/2453ed029918f21f", "Type": "redirect" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 80, "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" } ] }
예제 3: 서버 인증서 변경
이 예제에서는 지정된 HTTPS 리스너의 서버 인증서를 변경합니다.
aws elbv2 modify-listener \ --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65
\ --certificatesCertificateArn=arn:aws:iam::123456789012:server-certificate/my-new-server-cert
출력:
{ "Listeners": [ { "Protocol": "HTTPS", "DefaultActions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ], "SslPolicy": "ELBSecurityPolicy-2015-05", "Certificates": [ { "CertificateArn": "arn:aws:iam::123456789012:server-certificate/my-new-server-cert" } ], "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "Port": 443, "ListenerArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/0467ef3c8400ae65" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 ModifyListener
를 참조하세요.
-
다음 코드 예시에서는 modify-load-balancer-attributes
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
삭제 방지를 활성화하려면
이 예제에서는 지정된 로드 밸런서에 대한 삭제 보호를 활성화합니다.
명령:
aws elbv2 modify-load-balancer-attributes --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
--attributesKey=deletion_protection.enabled,Value=true
출력:
{ "Attributes": [ { "Value": "true", "Key": "deletion_protection.enabled" }, { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "60", "Key": "idle_timeout.timeout_seconds" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "", "Key": "access_logs.s3.bucket" } ] }
유휴 제한 시간을 변경하려면
이 예제에서는 지정된 로드 밸런서에 대한 유휴 제한 시간 값을 변경합니다.
명령:
aws elbv2 modify-load-balancer-attributes --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
--attributesKey=idle_timeout.timeout_seconds,Value=30
출력:
{ "Attributes": [ { "Value": "30", "Key": "idle_timeout.timeout_seconds" }, { "Value": "false", "Key": "access_logs.s3.enabled" }, { "Value": "", "Key": "access_logs.s3.prefix" }, { "Value": "true", "Key": "deletion_protection.enabled" }, { "Value": "", "Key": "access_logs.s3.bucket" } ] }
액세스 로그를 활성화하려면
이 예제에서는 지정된 로드 밸런서에 대한 액세스 로그를 활성화합니다. S3 버킷은 로드 밸런서와 동일한 리전에 있어야 하며 Elastic Load Balancing 서비스에 대한 액세스 권한을 부여하는 정책이 연결되어 있어야 합니다.
명령:
aws elbv2 modify-load-balancer-attributes --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
--attributesKey=access_logs.s3.enabled,Value=true
Key=access_logs.s3.bucket,Value=my-loadbalancer-logs
Key=access_logs.s3.prefix,Value=myapp
출력:
{ "Attributes": [ { "Value": "true", "Key": "access_logs.s3.enabled" }, { "Value": "my-load-balancer-logs", "Key": "access_logs.s3.bucket" }, { "Value": "myapp", "Key": "access_logs.s3.prefix" }, { "Value": "60", "Key": "idle_timeout.timeout_seconds" }, { "Value": "false", "Key": "deletion_protection.enabled" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 ModifyLoadBalancerAttributes
를 참조하세요.
-
다음 코드 예시에서는 modify-rule
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
규칙을 수정하려면
다음
modify-rule
예제에서는 지정된 규칙에 대한 작업 및 조건을 업데이트합니다.aws elbv2 modify-rule \ --actions
Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
\ --conditions Field=path-pattern,Values='/images/*' --rule-arnarn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee
출력:
{ "Rules": [ { "Priority": "10", "Conditions": [ { "Field": "path-pattern", "Values": [ "/images/*" ] } ], "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/9683b2d02a6cabee", "IsDefault": false, "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ] } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 ModifyRule
를 참조하세요.
-
다음 코드 예시에서는 modify-target-group-attributes
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
등록 취소 지연 제한 시간을 수정하려면
이 예제에서는 등록 취소 지연 제한 시간을 지정된 대상 그룹에 대해 지정된 값으로 설정합니다.
명령:
aws elbv2 modify-target-group-attributes --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
--attributesKey=deregistration_delay.timeout_seconds,Value=600
출력:
{ "Attributes": [ { "Value": "false", "Key": "stickiness.enabled" }, { "Value": "600", "Key": "deregistration_delay.timeout_seconds" }, { "Value": "lb_cookie", "Key": "stickiness.type" }, { "Value": "86400", "Key": "stickiness.lb_cookie.duration_seconds" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 ModifyTargetGroupAttributes
를 참조하세요.
-
다음 코드 예시에서는 modify-target-group
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
대상 그룹의 상태 확인 구성을 수정하려면
다음
modify-target-group
예제에서는 지정된 대상 그룹의 대상 상태를 평가하는 데 사용되는 상태 확인의 구성을 변경합니다. CLI가 쉼표를 구문 분석하는 방식으로 인해--matcher
옵션의 범위를 큰따옴표 대신 작은따옴표로 둘러싸야 합니다.aws elbv2 modify-target-group \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-https-targets/2453ed029918f21f
\ --health-check-protocolHTTPS
\ --health-check-port443
\ --matcher HttpCode='200,299'출력:
{ "TargetGroups": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-https-targets/2453ed029918f21f", "TargetGroupName": "my-https-targets", "Protocol": "HTTPS", "Port": 443, "VpcId": "vpc-3ac0fb5f", "HealthCheckProtocol": "HTTPS", "HealthCheckPort": "443", "HealthCheckEnabled": true, "HealthCheckIntervalSeconds": 30, "HealthCheckTimeoutSeconds": 5, "HealthyThresholdCount": 5, "UnhealthyThresholdCount": 2, "Matcher": { "HttpCode": "200,299" }, "LoadBalancerArns": [ "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "TargetType": "instance", "ProtocolVersion": "HTTP1", "IpAddressType": "ipv4" } ] }
자세한 내용은 Applicaion Load Balancer 안내서의 대상 그룹을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ModifyTargetGroup
를 참조하세요.
-
다음 코드 예시에서는 register-targets
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 인스턴스 ID별로 대상 그룹에 대상을 등록하려면
다음
register-targets
예제에서는 지정된 인스턴스를 대상 그룹에 등록합니다. 대상 그룹의 대상 유형은 이어야 합니다instance
.aws elbv2 register-targets \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
\ --targetsId=i-1234567890abcdef0
Id=i-0abcdef1234567890
예제 2: 포트 재정의를 사용하여 대상 그룹에 대상을 등록하려면
다음
register-targets
예제에서는 여러 포트를 사용하여 지정된 인스턴스를 대상 그룹에 등록합니다. 이렇게 하면 대상 그룹의 대상과 동일한 인스턴스에 컨테이너를 등록할 수 있습니다.aws elbv2 register-targets \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-internal-targets/3bb63f11dfb0faf9
\ --targetsId=i-0598c7d356eba48d7,Port=80
Id=i-0598c7d356eba48d7,Port=766
예제 3: IP 주소별로 대상 그룹에 대상 등록
다음
register-targets
예제에서는 지정된 IP 주소를 대상 그룹에 등록합니다. 대상 그룹의 대상 유형은 이어야 합니다ip
.aws elbv2 register-targets \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-ip-targets/8518e899d173178f
\ --targetsId=10.0.1.15
Id=10.0.1.23
예제 4: Lambda 함수를 대상으로 등록하려면
다음
register-targets
예제에서는 지정된 IP 주소를 대상 그룹에 등록합니다. 대상 그룹의 대상 유형은 이어야 합니다lambda
. Lambda 함수를 호출할 수 있는 Elastic Load Balancing 권한을 부여해야 합니다.aws elbv2 register-targets \ --target-group-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-tcp-ip-targets/8518e899d173178f
\ --targetsId=arn:aws:lambda:us-west-2:123456789012:function:my-function
-
API 세부 정보는 AWS CLI 명령 참조의 RegisterTargets
를 참조하세요.
-
다음 코드 예시에서는 remove-listener-certificates
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 리스너에서 인증서를 제거하려면
이 예제에서는 지정된 보안 리스너에서 지정된 인증서를 제거합니다.
명령:
aws elbv2 remove-listener-certificates --listener-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2
--certificatesCertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/5cc54884-f4a3-4072-80be-05b9ba72f705
-
API 세부 정보는 AWS CLI 명령 참조의 RemoveListenerCertificates
를 참조하세요.
-
다음 코드 예시에서는 remove-tags
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서에서 태그를 제거하려면
다음
remove-tags
예제에서는 지정된 로드 밸런서에서project
및department
태그를 제거합니다.aws elbv2 remove-tags \ --resource-arns
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
\ --tag-keysproject
department
-
API 세부 정보는 AWS CLI 명령 참조의 RemoveTags
를 참조하세요.
-
다음 코드 예시에서는 set-ip-address-type
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서의 주소 유형을 설정하려면
이 예제에서는 지정된 로드 밸런서의 주소 유형을 로 설정합니다
dualstack
. 로드 밸런서 서브넷에는 연결된 CIDR IPv6 블록이 있어야 합니다.명령:
aws elbv2 set-ip-address-type --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
--ip-address-typedualstack
출력:
{ "IpAddressType": "dualstack" }
-
API 세부 정보는 AWS CLI 명령 참조의 SetIpAddressType
를 참조하세요.
-
다음 코드 예시에서는 set-rule-priorities
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
규칙 우선 순위를 설정하려면
이 예제에서는 지정된 규칙의 우선 순위를 설정합니다.
명령:
aws elbv2 set-rule-priorities --rule-priorities
RuleArn=arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3,Priority=5
출력:
{ "Rules": [ { "Priority": "5", "Conditions": [ { "Field": "path-pattern", "Values": [ "/img/*" ] } ], "RuleArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener-rule/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2/1291d13826f405c3", "IsDefault": false, "Actions": [ { "TargetGroupArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", "Type": "forward" } ] } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 SetRulePriorities
를 참조하세요.
-
다음 코드 예시에서는 set-security-groups
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 그룹을 로드 밸런서에 연결하려면
이 예제에서는 지정된 보안 그룹을 지정된 로드 밸런서에 연결합니다.
명령:
aws elbv2 set-security-groups --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
--security-groupssg-5943793c
출력:
{ "SecurityGroupIds": [ "sg-5943793c" ] }
-
API 세부 정보는 AWS CLI 명령 참조의 SetSecurityGroups
를 참조하세요.
-
다음 코드 예시에서는 set-subnets
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
로드 밸런서에 대해 가용 영역을 활성화하려면
이 예제에서는 지정된 로드 밸런서에 대해 지정된 서브넷의 가용 영역을 활성화합니다.
명령:
aws elbv2 set-subnets --load-balancer-arn
arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
--subnetssubnet-8360a9e7
subnet-b7d581c0
출력:
{ "AvailabilityZones": [ { "SubnetId": "subnet-8360a9e7", "ZoneName": "us-west-2a" }, { "SubnetId": "subnet-b7d581c0", "ZoneName": "us-west-2b" } ] }
-
API 세부 정보는 AWS CLI 명령 참조의 SetSubnets
를 참조하세요.
-