Solaris OS용 Sun Java System Application Server에 대한 Sun Cluster 데이터 서비스 안내서

Sun Cluster HA for Sun Java System Application Server 오류 모니터 성능 조정

이 절에서는 Sun Cluster HA for Sun Java System Application Server 오류 모니터를 설명합니다.

이 절에서는 다음 내용을 설명합니다.

확장 등록 정보

Sun Cluster HA for Sun Java System Application Server 오류 모니터에서 다음 테이블에 설명된 확장 등록 정보를 사용합니다. 조정 가능한 항목은 해당 등록 정보의 동적 업데이트가 가능한지 또는 생성 시에만 업데이트할 수 있는지 표시합니다.

Sun Java System Application Server 자원을 만들 때 명령줄 scrgadm -x parameter=value를 사용하여 확장 등록 정보를 구성합니다. 확장 등록 정보에 대한 자세한 내용은 SUNW.s1as(5M) 설명서 페이지를 참조하십시오. Sun Cluster 데이터 서비스 등록 정보에 대한 자세한 내용은 Sun Cluster Data Service Planning and Administration Guide for Solaris OS의 “Standard Properties”를 참조하십시오.

표 1–2 Sun Cluster HA for Sun Java System Application Server 확장 등록 정보

이름/데이터 유형 

설명 

Confdir_list(string array)

Sun Java System Application Server의 특정 인스턴스의 구성 디렉토리로 이동하는 절대 경로입니다. 

기본값: 없음

조정 가능: 생성 시

Monitor_Uri_List(문자열)

오류 모니터가 Sun Java System Application Server의 기능을 테스트할 때 사용할 수 있는 단일 URI나 URI 목록입니다. 오류 모니터는 URI에서 HTTP GET을 수행하여 Application Server를 테스트합니다. Monitor_Uri_List 확장 등록 정보는 배포된 응용 프로그램 기능을 검사할 때 사용할 수 있습니다. Sun Java System Application Server에 배포된 응용 프로그램에서 처리하는 하나 이상의 URI에 이 등록 정보를 설정하여 배포된 응용 프로그램을 검사합니다. HTTP 서버의 반환 코드가 500(내부 서버 오류)이거나 연결이 실패하면 검사가 실시됩니다. 자세한 내용은 검사 방법을 참조하십시오.

기본값: Null

조정 가능: 언제든지

검사 알고리즘 및 기능

Sun Cluster HA for Sun Java System Application Server 검사는 서버에 요청을 보내 Sun Java System Application Server 서버의 상태를 쿼리합니다. 검사는 다음 단계로 수행됩니다.

  1. Probe_timeout 자원 등록 정보에 설정된 시간 초과 값에 따라 Sun Java System Application Server 인스턴스를 검사합니다.

  2. 네트워크 자원 구성 및 자원 그룹의 Port_list 설정에서 정의한 IP 주소와 포트 조합에 연결합니다. Port_list가 비어 있지 않은 채로 자원이 구성되면 이 단계는 건너뜁니다. 연결이 성공하면 검사는 연결 해제됩니다. 연결이 실패하면 실패가 기록됩니다.

    과도한 네트워크 트래픽이나 시스템 로드, 구성 오류가 발생하면 쿼리가 실패할 수 있습니다. Sun Java System Application Server 서버가 검사 대상인 모든 IP 주소/포트 조합에서 수신하도록 구성하지 않으면 구성 오류가 발생할 수 있습니다. Sun Java System Application Server 서버는 이 자원에 대해 지정된 모든 IP 주소의 모든 포트를 처리해야 합니다.

  3. Sun Java System Application Server의 서버로 연결한 다음 Monitor_Uri_List의 각 URI로 HTTP 요청을 보내고 응답을 받는 방식으로 HTTP 1.1 GET 검사를 수행합니다.

    HTTP 요청 결과는 실패 또는 성공입니다. 모든 요청이 Sun Java System Application Server의 서버로부터 응답을 받는 데 성공했다면 다음 검사 및 일시 정지 주기가 수행됩니다.

    과도한 네트워크 트래픽이나 시스템 로드, 구성 오류가 발생하면 HTTP GET 검사가 실패할 수 있습니다. Monitor_Uri_List 등록 정보를 잘못 구성하여 Monitor_Uri_List에 잘못된 포트나 호스트 이름이 포함되면 실패할 수 있습니다. 예를 들어, 응용 프로그램 서버 인스턴스가 논리 호스트 schost-1을 수신하는 중이고 URI가 http://schost-2/servlet/monitor로 지정되었다면 검사는 schost-2와 접촉하여 /servlet/monitor를 요청하고자 시도할 것입니다.

  4. Probe_timeout 제한 이내에 검사에 대한 응답을 수신하지 않으면 로그 기록에 실패가 기록됩니다. 검사는 이 시나리오를 Sun Java System Application Server 데이터 서비스 일부가 실패한 것으로 간주합니다. Sun Java System Application Server 검사 실패는 전체 실패이거나 부분 실패일 수 있습니다.

    검사에 대한 응답이 Probe_timeout 제한 이내에 수신된다면 HTTP 응답 코드를 검사합니다. 응답 코드가 500 “내부 서버 오류”라면 검사는 전체 실패로 간주됩니다. 기타 모든 응답 코드는 무시됩니다.

    다음은 전체 검사 실패입니다.

    • 서버 연결 실패 시 다음 오류 메시지를 수신합니다. %s는 호스트 이름, %d는 포트 번호를 나타냅니다.


      Failed to connect to the host <%s> and port <%d>. Receiving a response code of 500 “Internal Server Error” HTTP GET Response Code for probe of %s is 500. Failover will be in progress

    • 검사 문자열을 서버로 보내는 데 실패하면 다음 오류 메시지를 수신합니다. 첫 번째 %s는 호스트 이름, %d는 포트 번호, 두 번째 %s는 해당 오류에 대한 자세한 내용을 나타냅니다.


      Write to server failed: server %s port %d: %s.

  5. 모니터링은 Retry_interval 자원 등록 정보 설정 이내에서 발생하는 부분 실패를 전체 실패가 될 때까지 취합합니다.

    다음은 부분 검사 실패입니다.

    • Probe_timeout 설정이 지나기 전에 연결 해제가 실패하면 다음 오류 메시지를 수신합니다. 첫 번째 %d는 포트 번호, %s는 자원 이름을 나타냅니다.


      Failed to disconnect from port %d of resource %s.

    • Probe_timeout 시간 이내에 모든 검사 단계를 완료하지 못하면 부분 실패가 됩니다.

    • 다른 이유로 서버로부터 데이터를 읽는 데 실패하면 다음 오류 메시지를 수신합니다. 첫 번째 %s는 호스트 이름, %d는 포트 번호,두 번째 %s는 해당 오류에 대한 자세한 내용을 나타냅니다.


      Failed to communicate with server %s port %d: %s

  6. 실패가 발생하면 실패 기록에 따라 로컬 재시작이나 데이터 서비스 페일오버가 발생할 수 있습니다.