기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Application Load Balancer에 대한 리스너 규칙 추가
리스너를 생성할 때 기본 규칙을 정의합니다. 언제든지 추가 규칙을 정의할 수 있습니다. 각 규칙은 작업과 조건을 지정해야 하며 선택적으로 변환을 지정할 수 있습니다. 자세한 내용은 다음 자료를 참조하세요.
- Console
-
규칙을 추가하려면
https://console.aws.amazon.com/ec2/
에서 Amazon EC2 콘솔을 엽니다. -
탐색 창에서 로드 밸런서를 선택합니다.
-
로드 밸런서를 선택합니다.
-
리스너 및 규칙 탭에서 프로토콜: 포트 열의 텍스트를 선택하여 리스너에 대한 세부 정보 페이지를 엽니다.
-
규칙 탭에서 규칙 추가를 선택합니다.
-
(선택 사항) 규칙의 이름을 지정하려면 이름 및 태그를 확장하고 이름을 입력합니다. 태그를 추가하려면 추가 태그 추가를 선택하고 태그 키와 태그 값을 입력합니다.
-
각 조건에 대해 조건 추가를 선택하고 조건 유형을 선택한 다음 필요한 조건 값을 제공합니다.
-
호스트 헤더 - 일치 패턴 유형을 선택하고 호스트 헤더를 입력합니다.
값 일치 - 최대 128자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9이고 특수 문자는 -_., 와일드카드(* 및 ?) 입니다. '.' 문자를 하나 이상 포함해야 합니다. 마지막 "." 문자 다음에는 알파벳만 포함할 수 있습니다.
정규식 일치 - 최대 128자입니다.
-
경로 - 일치 패턴 유형을 선택하고 경로를 입력합니다.
값 일치 - 최대 128자입니다. 대소문자 구분. 허용되는 문자는 a-z, A-Z, 0-9이고 특수 문자는 _-.$/~"'@:+; &; and wildcards (* 및 ?)입니다.
정규식 일치 - 최대 128자입니다.
-
쿼리 문자열 - 키:값 페어 또는 키가 없는 값을 입력합니다.
최대 128자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9이며 특수 문자는 _-.$/~"'@:+&()!,;=; 및 와일드카드(* 및 ?)입니다.
-
HTTP 요청 메서드 - HTTP 요청 메서드를 입력합니다.
최대 40자입니다. 대소문자 구분. 허용되는 문자는 A-Z이고 특수 문자는 -_입니다. 와일드카드는 지원되지 않습니다.
-
HTTP 헤더 - 일치 패턴 유형을 선택하고 헤더의 이름과 비교 문자열을 입력합니다.
-
HTTP 헤더 이름— 규칙은 이 헤더가 포함된 요청을 평가하여 일치하는 값을 확인합니다.
값 일치 - 최대 40자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9이며 특수 문자는 *?-!#$%&'+.^_`|~입니다. 와일드카드는 지원되지 않습니다.
정규식 일치 - 최대 128자입니다.
-
HTTP 헤더 값— HTTP 헤더 값과 비교할 문자열을 입력합니다.
값과 일치하는 최대 128자입니다. 대/소문자를 구분하지 않습니다. 허용되는 문자는 a-z, A-Z, 0-9; 공백입니다. 특수 문자는 !"#$%&'()+,./:;<=>@[]^_`{|}~-; 및 와일드카드(* 및 ?)입니다.
정규식 일치 - 최대 128자입니다.
-
-
소스 IP - 소스 IP 주소를 CIDR 형식으로 정의합니다. IPv4 및 IPv6 CIDR 모두 허용됩니다. 와일드카드는 지원되지 않습니다.
-
-
(선택 사항) 변환을 추가하려면 변환 추가를 선택하고 변환 유형을 선택한 다음 일치시킬 정규식과 대체 문자열을 입력합니다.
-
(선택 사항) HTTPS 리스너에 인증 규칙을 추가하려면 작업, 사용자 인증, 자격 증명 공급자 선택 및 필수 정보 제공을 선택합니다. 자세한 내용은 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-arnlistener-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-arnlistener-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-arnlistener-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:10Conditions: - Field: host-header Values: -example.com-www.example.comActions: - Type: forward TargetGroupArn: !Ref myTargetGroup또는 조건이 충족될 때 두 대상 그룹 간에 트래픽을 분산하는 전달 작업을 생성하려면 다음과
Actions같이를 정의합니다.Actions: - Type: forward ForwardConfig: TargetGroups: - TargetGroupArn: !Ref TargetGroup1 Weight:50- TargetGroupArn: !Ref TargetGroup2 Weight:50다음 예제에서는
fixed-response작업과source-ip조건이 포함된 규칙을 생성합니다.Resources: myFixedResponseListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority:20Conditions: - Field: source-ip SourceIpConfig: Values: -192.168.1.0/24-10.0.0.0/16Actions: - 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:30Conditions: - Field: http-header HttpHeaderConfig: HttpHeaderName: User-Agent Values: - "*Mobile*" - "*Android*" - "*iPhone*" Actions: - Type: redirect RedirectConfig: Host:m.example.comStatusCode: HTTP_302