기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Application Load Balancer에 대한 리스너 규칙 추가
리스너를 생성할 때 기본 규칙을 정의합니다. 언제든지 추가 규칙을 정의할 수 있습니다. 각 규칙은 작업과 조건을 지정해야 합니다. 자세한 내용은 작업 유형 및 조건 유형 섹션을 참조하세요.
- Console
-
규칙을 추가하려면
https://console.aws.amazon.com/ec2/
에서 Amazon EC2 콘솔을 엽니다. -
탐색 창에서 로드 밸런서를 선택합니다.
-
로드 밸런서를 선택합니다.
-
리스너 및 규칙 탭에서 프로토콜:포트 열의 텍스트를 선택하여 리스너의 세부 정보 페이지를 엽니다.
-
규칙 탭에서 규칙 추가를 선택합니다.
-
(선택 사항) 규칙의 이름을 지정하려면 이름 및 태그를 확장하고 이름을 입력합니다. 태그를 추가하려면 추가 태그 추가(Add additional tags)를 선택합니다.
-
각 조건에 대해 조건 추가를 선택하고 조건 유형을 선택한 다음 필요한 조건 값을 제공합니다.
-
호스트 헤더 - 호스트 헤더를 입력합니다. 예를 들어
*.example.com
입니다.최대 128자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9이고 특수 문자는 -_., 와일드카드(* 및 ?) 입니다. '.' 문자를 하나 이상 포함해야 합니다. 마지막 "." 문자 다음에는 알파벳만 포함할 수 있습니다.
-
경로 - 경로를 입력합니다. 예를 들어
/item/*
입니다.최대 128자입니다. 대소문자 구분. 허용되는 문자는 a-z, A-Z, 0-9이고 특수 문자는 _-.$/~"'@:+; &; and wildcards (* 및 ?)입니다.
-
쿼리 문자열 - 키:값 페어 또는 키가 없는 값을 입력합니다.
최대 128자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9이며 특수 문자는 _-.$/~"'@:+&()!,;=; 및 와일드카드(* 및 ?)입니다.
-
HTTP 요청 메서드 - HTTP 요청 메서드를 입력합니다.
최대 40자입니다. 대소문자 구분. 허용되는 문자는 A-Z이고 특수 문자는 -_입니다. 와일드카드는 지원되지 않습니다.
-
HTTP 헤더 - 헤더의 이름을 입력하고 비교 문자열을 하나 이상 추가합니다.
-
HTTP 헤더 이름— 규칙은 이 헤더가 포함된 요청을 평가하여 일치하는 값을 확인합니다.
최대 40자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9이며 특수 문자는 *?-!#$%&'+.^_`|~입니다. 와일드카드는 지원되지 않습니다.
-
HTTP 헤더 값— HTTP 헤더 값과 비교할 문자열을 입력합니다.
최대 128자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9, 공백, 특수 문자 !"#$%&'()+,./:;<=>@[]^_`{|}~-, 와일드카드(* 및 ?)입니다.
-
-
소스 IP - 소스 IP 주소를 CIDR 형식으로 정의합니다.
IPv4 및 IPv6 CIDR 모두 허용됩니다. 와일드카드는 지원되지 않습니다.
-
-
(선택 사항) 인증 규칙을 추가하려면 자격 증명 공급자를 선택한 사용자 인증을 선택하고 필요한 정보를 제공합니다. 자세한 내용은 Application Load Balancer를 사용하여 사용자 인증 단원을 참조하십시오.
-
라우팅 작업에서 다음 라우팅 작업 중 하나를 선택하고 필요한 정보를 제공합니다.
-
대상 그룹으로 전달 - 대상 그룹을 선택합니다. 다른 대상 그룹을 추가하려면 대상 그룹 추가를 선택하고, 대상 그룹을 선택하고, 상대 백분율을 검토하고, 필요에 따라 가중치를 업데이트합니다. 대상 그룹에 고정을 활성화한 경우 그룹 수준 고정을 활성화해야 합니다.
-
URL로 리디렉션 - URI 부분 탭에 각 부분을 별도로 입력하거나 전체 URL 탭에 전체 주소를 입력하여 URL을 입력합니다. 상태 코드에서 필요에 따라 임시(HTTP 302) 또는 영구(HTTP 301)을 선택합니다.
-
고정 응답 반환 - 삭제된 클라이언트 요청에 대해 반환할 응답 코드를 입력합니다. 선택적으로 콘텐츠 유형과 응답 본문을 지정할 수 있습니다.
-
-
다음을 선택합니다.
-
Priority에 1~50,000 범위의 값을 입력합니다. 규칙은 가장 낮은 값부터 가장 높은 값까지 우선 순위에 따라 평가됩니다.
-
다음을 선택합니다.
-
검토 및 생성 페이지에서 생성을 선택합니다.
- AWS CLI
-
규칙을 추가하려면
create-rule 명령을 사용합니다.
다음 예제에서는
forward
작업과host-header
조건이 포함된 규칙을 생성합니다.aws elbv2 create-rule \ --listener-arn
listener-arn
\ --priority10
\ --conditions "Field=host-header,Values=example.com
,www.example.com
" \ --actions "Type=forward,TargetGroupArn=target-group-arn
"두 대상 그룹 간에 트래픽을 분산하는 전달 작업을 생성하려면 대신 다음
--actions
옵션을 사용합니다.--actions '[{ "Type":"forward", "ForwardConfig":{ "TargetGroups":[ {"TargetGroupArn":"
target-group-1-arn
","Weight":50
}, {"TargetGroupArn":"target-group-2-arn
","Weight":50
} ] } }]'다음 예제에서는
fixed-response
작업과source-ip
조건이 포함된 규칙을 생성합니다.aws elbv2 create-rule \ --listener-arn
listener-arn
\ --priority20
\ --conditions '[{"Field":"source-ip","SourceIpConfig":{"Values":["192.168.1.0/24
","10.0.0.0/16
"]}}]' \ --actions "Type=fixed-response,FixedResponseConfig={StatusCode=403,ContentType=text/plain,MessageBody='Access denied
'}"다음 예제에서는
redirect
작업과http-header
조건이 포함된 규칙을 생성합니다.aws elbv2 create-rule \ --listener-arn
listener-arn
\ --priority30
\ --conditions '[{"Field":"http-header","HttpHeaderConfig":{"HttpHeaderName":"User-Agent","Values":["*Mobile*","*Android*","*iPhone*"]}}]' \ --actions "Type=redirect,RedirectConfig={Host=m.example.com
,StatusCode=HTTP_302}" - CloudFormation
-
규칙을 추가하려면
AWS::ElasticLoadBalancingV2::ListenerRule 유형의 리소스를 정의합니다.
다음 예제에서는
forward
작업과host-header
조건이 포함된 규칙을 생성합니다.Resources: myForwardListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority:
10
Conditions: - Field: host-header Values: -example.com
-www.example.com
Actions: - Type: forward TargetGroupArn: !Ref myTargetGroup다음 예제에서는
fixed-response
작업과source-ip
조건이 포함된 규칙을 생성합니다.Resources: myFixedResponseListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority:
20
Conditions: - Field: source-ip SourceIpConfig: Values: -192.168.1.0/24
-10.0.0.0/16
Actions: - Type: fixed-response FixedResponseConfig: StatusCode: 403 ContentType: text/plain MessageBody: "Access denied
"다음 예제에서는
redirect
작업과http-header
조건이 포함된 규칙을 생성합니다.Resources: myRedirectListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority:
30
Conditions: - Field: http-header HttpHeaderConfig: HttpHeaderName: User-Agent Values: - "*Mobile*" - "*Android*" - "*iPhone*" Actions: - Type: redirect RedirectConfig: Host:m.example.com
StatusCode: HTTP_302