내보내기(0) 인쇄
모두 확장
이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

LoadBalancerProbe 스키마

업데이트 날짜: 2014년 2월

부하 분산 장치 검색은 UDP 끝점과 역할 인스턴스의 끝점에 대해 고객이 정의한 상태 검색입니다. LoadBalancerProbe는 독립 실행형 요소가 아닙니다. 서비스 정의 파일에서 웹 역할 또는 작업자 역할과 함께 사용됩니다. LoadBalancerProbe는 둘 이상의 역할에 의해 사용될 수 있습니다.

서비스 정의 파일의 기본 확장명은 .csdef입니다.

Windows Azure 부하 분산 장치는 수신된 트래픽을 사용자의 역할 인스턴스로 라우팅합니다. 부하 분산 장치는 각 인스턴스를 정기적으로 검색하여 인스턴스의 상태를 확인함으로써 트래픽을 수신할 수 있는 인스턴스를 결정합니다. 부하 분산 장치는 모든 인스턴스를 1분에 여러 번 검색합니다. 부하 분산 장치가 인스턴스 상태를 검색할 때는 .csdef 파일에서 LoadBalancerProbe를 정의하여 구현된 내용에 따라 기본 부하 분산 장치 검색 또는 사용자 지정 부하 분산 장치 검색 등 두 가지 옵션이 있습니다.

기본 부하 분산 장치 검색은 인스턴스가 준비 상태인 경우에만 가상 컴퓨터 내의 게스트 에이전트를 사용하여 HTTP 200 정상 응답을 수신하고 이에 응답합니다. 즉 인스턴스의 상태가 사용 중, 재생 중, 중지 중 등이 아니어야 합니다. 게스트 에이전트가 HTTP 200 정상 응답에 실패하면 Azure 부하 분산 장치가 해당 인스턴스를 응답 없음으로 표시하고 해당 인스턴스로의 트래픽 전송을 중지합니다. Azure 부하 분산 장치는 이후에도 계속 인스턴스를 ping하는데, 만약 게스트 에이전트가 HTTP 200에 응답하면 Azure 부하 분산 장치는 해당 인스턴스로 다시 트래픽을 전송합니다. 웹 사이트 코드가 일반적으로 w3wp.exe에서 실행되는 웹 역할을 사용하는 경우 Azure 패브릭 또는 게스트 에이전트에 의해 모니터링되지 않으므로 w3wp.exe가 HTTP 500 응답 등에 실패해도 게스트 에이전트에 보고되지 않고 부하 분산 장치에서 해당 인스턴스가 회전하지 않는 것을 인식하지 못합니다.

사용자 지정 부하 분산 장치 검색은 기본 게스트 에이전트 검색을 무시하고 사용자 고유의 사용자 지정 논리를 만들어 역할 인스턴스의 상태를 확인합니다. 부하 분산 장치는 정기적으로 끝점을 검색하고(기본값: 15초마다) 제한 시간(기본값: 31초) 내에 TCP ACK 또는 HTTP 200으로 응답할 경우 해당 인스턴스가 회전하는 것으로 간주합니다. 이 기능은 부하 분산 장치 회전에서 인스턴스를 제거하도록 사용자의 논리를 구현할 때 유용합니다. 예를 들어 반환되는 상태가 200이 아닌 경우 인스턴스의 CPU는 90% 이상입니다. w3wp.exe를 사용하는 웹 역할의 경우 웹 사이트 코드가 실패하면 200이 아닌 상태를 부하 분산 장치 검색으로 반환하므로 웹 사이트를 자동으로 모니터링한다는 의미도 됩니다. .csdef 파일에서 LoadBalancerProbe를 정의하지 않은 경우 기본 부하 분산 장치 동작은 위에서 설명한 바와 같습니다.

사용자 지정 부하 분산 장치 검색을 사용하는 경우 RoleEnvironment.OnStop 메서드를 고려하도록 논리를 작성해야 합니다. 기본 부하 분산 장치 검색을 사용하는 경우 OnStop을 호출될 때까지 인스턴스의 회전 상태를 검색합니다. 그러나 사용자 지정 부하 분산 장치 검색은 OnStop 이벤트 중에도 200 정상을 계속 반환할 수 있습니다. OnStop 이벤트를 사용하여 캐시를 지우거나, 서비스를 중지하거나, 또는 다른 방법으로 서비스의 런타임 동작에 영향을 줄 수 있는 변경을 하는 경우에는 사용자 지정 부하 분산 장치 검색 논리가 회전에서 인스턴스를 제거하도록 해야 합니다.

부하 분산 장치 검색을 포함하는 서비스 정의 파일의 기본 형식은 다음과 같습니다.

<ServiceDefinition …>
   <LoadBalancerProbes>
      <LoadBalancerProbe name="<load-balancer-probe-name>" protocol="[http|tcp]" path="<uri-for-checking-health-status-of-vm>" port=”<port-number>” intervalInSeconds="<interval-in-seconds>" timeoutInSeconds="<timeout-in-seconds>"/> 
   </LoadBalancerProbes>
</ServiceDefinition>

서비스 정의 파일의 LoadBalancerProbes 요소에는 다음 요소가 포함됩니다.

The LoadBalancerProbes 요소는 부하 분산 장치 검색의 컬렉션을 설명합니다. 이 요소는 LoadBalancerProbe 요소의 부모 요소입니다.

LoadBalancerProbe 요소는 모델의 상태 검색을 정의합니다. 여러 부하 분산 장치 검색을 정의할 수 있습니다.

다음 표에서는 LoadBalancerProbe 요소의 특성에 대해 설명합니다.

 

특성 Type 설명

name

string

필수 사항입니다. 부하 분산 장치 검색의 이름입니다. 이름은 고유해야 합니다.

protocol

string

필수 사항입니다. 끝점의 프로토콜을 지정합니다. 가능한 값은 http 또는 tcp입니다. tcp가 지정된 경우 검색을 실행하려면 ACK를 수신해야 합니다. http가 지정된 경우 검색을 실행하려면 지정한 URI로부터의 200 정상 응답이 필요합니다.

path

string

VM의 상태를 요청하는 데 사용되는 URI입니다. protocolhttp로 설정된 경우 path는 필수 사항입니다. 그렇지 않으면 허용되지 않습니다.

기본값은 없습니다.

port

integer

선택 사항입니다. 검색을 위해 통신하는 포트입니다. 모든 끝점에 대해 선택 사항이며, 동일한 포트가 검색에 사용됩니다. 검색을 위해 다른 포트를 구성할 수도 있습니다. 가능한 값의 범위는 1에서 65535 사이입니다.

기본값은 끝점으로 설정됩니다.

intervalInSeconds

integer

선택 사항입니다. 상태 확인을 위해 끝점 검색 빈도를 지정하기 위한 간격(초)입니다. 일반적으로 이 간격은 할당된 제한 시간(초)의 1/2보다 약간 짧으므로 인스턴스가 회전을 멈추기 전까지 두 번의 검색을 수행할 수 있습니다.

기본값은 15이며 최소값은 5입니다.

timeoutInSeconds

integer

선택 사항입니다. 응답이 없어 더 이상 트래픽이 끝점으로 전달되지 않을 때까지 검색에 적용되는 제한 시간(초)입니다. 이 값을 사용하면 끝점의 회전 중지 시간을 Windows Azure에 사용된 일반 시간(기본값)보다 빠르거나 늦게 설정할 수 있습니다.

기본값은 31이며 최소값은 11입니다.

이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft. All rights reserved.