22.10. Oracle NSAPI Connector


Netscape Server API(NSAPI)는 이전에 Netscape Web Server인 Oracle iPlanet Web Server가 서버에 대한 확장을 구현하기 위해 제공하는 API입니다. 이러한 확장 기능을 서버 플러그인이라고 합니다. NSAPI 커넥터는 nsapi_redirector.so 에서 사용되며 Oracle iPlanet Web Server로 조정된 mod_jk의 확장입니다. NSAPI 커넥터를 사용하면 Oracle iPlanet Web Server를 로드 밸런서 장치로 사용하여 JBoss EAP 인스턴스를 작업자 노드로 구성할 수 있습니다.

참고

Solaris 및 Oracle iPlanet Web Server의 지원되는 구성에 대한 자세한 내용은 JBoss EAP 지원 구성을 참조하십시오.

22.10.1. NSAPI Connector를 사용하도록 Oracle iPlanet 웹 서버 구성

사전 요구 사항

  • JBoss EAP는 작업자 역할을 할 각 서버에 설치 및 구성됩니다.

Red Hat 고객 포털에서 NSAPI 커넥터를 다운로드합니다.

  1. 브라우저를 열고 Red Hat Customer Portal JBoss Software Downloads 페이지에 로그인합니다.
  2. 제품 드롭다운 메뉴에서 Web Connectors 를 선택합니다.
  3. 버전 드롭다운 메뉴에서 최신 JBoss Core Services 버전을 선택합니다.
  4. 목록에서 Red Hat JBoss Core Services NSAPI Connector 를 찾아 시스템에 대한 올바른 플랫폼 및 아키텍처를 선택하고 다운로드 링크를 클릭합니다.
  5. lib/ 또는 lib64/ 디렉터리에 있는 nsapi_redirector.so 파일을 IPLANET_CONFIG/lib/ 또는 IPLANET_CONFIG/lib64/ 디렉터리에 추출합니다.

NSAPI 커넥터를 설정합니다.

참고

이 지침에서 IPLANET_CONFIG 는 Oracle iPlanet 구성 디렉터리(일반적으로 /opt/oracle/webserver7/config/ )를 나타냅니다. Oracle iPlanet 구성 디렉터리가 다른 경우 그에 따라 지침을 수정합니다.

  1. 서블릿 매핑을 비활성화합니다.

    IPLANET_CONFIG/default.web.xml 파일을 열고 Built In Server Mappings 라는 제목으로 섹션을 찾습니다. XML 주석 문자( <!- 및 --> )로 래핑하여 다음 세 개의 서블릿에 대한 매핑을 비활성화합니다.

    • default
    • 호출자
    • jsp

      다음 예제 구성은 비활성화된 매핑을 보여줍니다.

      <!-- ============== Built In Servlet Mappings =============== -->
      <!-- The servlet mappings for the built in servlets defined above. -->
      <!-- The mapping for the default servlet -->
      <!--servlet-mapping>
       <servlet-name>default</servlet-name>
       <url-pattern>/</url-pattern>
      </servlet-mapping-->
      <!-- The mapping for the invoker servlet -->
      <!--servlet-mapping>
       <servlet-name>invoker</servlet-name>
       <url-pattern>/servlet/*</url-pattern>
      </servlet-mapping-->
      <!-- The mapping for the JSP servlet -->
      <!--servlet-mapping>
       <servlet-name>jsp</servlet-name>
       <url-pattern>*.jsp</url-pattern>
      </servlet-mapping-->
      Copy to Clipboard Toggle word wrap

      파일을 저장하고 종료합니다.

  2. NSAPI 커넥터 모듈을 로드하도록 iPlanet 웹 서버를 구성합니다.

    IPLANET_CONFIG/magnus.conf 파일의 끝에 다음 행을 추가하고 구성에 맞게 파일 경로를 수정합니다. 이러한 행은 nsapi_redirector.so 모듈의 위치와 작업자 및 해당 속성을 나열하는 workers.properties 파일을 정의합니다.

    Init fn="load-modules" funcs="jk_init,jk_service" shlib="/lib/nsapi_redirector.so" shlib_flags="(global|now)"
    
    Init fn="jk_init" worker_file="IPLANET_CONFIG/connectors/workers.properties" log_level="info" log_file="IPLANET_CONFIG/connectors/nsapi.log" shm_file="IPLANET_CONFIG/connectors/tmp/jk_shm"
    Copy to Clipboard Toggle word wrap

    위의 구성은 32비트 아키텍처용입니다. 64비트 Solaris를 사용하는 경우 lib/nsapi_redirector.so 문자열을 lib64/nsapi_redirector.so 로 변경합니다.

    파일을 저장하고 종료합니다.

  3. NSAPI 커넥터를 구성합니다.

    로드 밸런싱 또는 로드 밸런싱 구성을 사용하여 기본 구성에 대해 NSAPI 커넥터를 구성할 수 있습니다. 다음 옵션 중 하나를 선택하면 구성이 완료될 것입니다.

22.10.2. JBoss EAP에 클라이언트 요청을 전송하도록 NSAPI 커넥터 구성

이 작업에서는 로드 밸런싱 또는 페일오버 없이 클라이언트 요청을 JBoss EAP 서버로 리디렉션하도록 NSAPI 커넥터를 구성합니다. 리디렉션은 배포별(및 URL당) 기준으로 수행됩니다.

중요

이 작업을 계속하기 전에 NSAPI 커넥터를 이미 구성해야 합니다.

기본 HTTP 커넥터 설정
  1. JBoss EAP 서버로 리디렉션할 URL 경로를 정의합니다.

    참고

    IPLANET_CONFIG/obj.conf 에서는 행이 이전 행의 연속인 경우를 제외하고 줄 시작 부분에 공백이 허용되지 않습니다.

    IPLANET_CONFIG/obj.conf 파일을 편집합니다. < Object name="default" > 로 시작하는 섹션을 찾아 아래 예제 파일에 표시된 형식으로 일치시킬 각 URL 패턴을 추가합니다. jknsapi 문자열은 다음 단계에서 정의할 HTTP 커넥터를 나타냅니다. 이 예제에서는 패턴 일치에 와일드카드를 사용하는 방법을 보여줍니다.

    <Object name="default">
    [...]
    NameTrans fn="assign-name" from="/status" name="jknsapi"
    NameTrans fn="assign-name" from="/images(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/css(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/nc(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/jmx-console(|/*)" name="jknsapi"
    </Object>
    Copy to Clipboard Toggle word wrap
  2. 각 경로에 서비스를 제공하는 작업자를 정의합니다.

    IPLANET_CONFIG/obj.conf 파일을 계속 편집합니다. 편집을 완료한 섹션의 닫기 태그 바로 뒤에 다음을 추가합니다. < /Object>.

    <Object name="jknsapi">
    ObjectType fn=force-type type=text/plain
    Service fn="jk_service" worker="worker01" path="/status"
    Service fn="jk_service" worker="worker02" path="/nc(/*)"
    Service fn="jk_service" worker="worker01"
    </Object>
    Copy to Clipboard Toggle word wrap

    위의 예제에서는 URL 경로 /status 로 요청을 worker01 이라는 작업자로 리디렉션하고 /nc/ 아래의 모든 URL 경로는 worker02 라는 작업자로 리디렉션합니다. 세 번째 줄은 이전 행과 일치하지 않는 jknsapi 오브젝트에 할당된 모든 URL이 worker01 에게 제공됨을 나타냅니다.

    파일을 저장하고 종료합니다.

  3. 작업자 및 해당 속성을 정의합니다.

    IPLANET_CONFIG/connectors/ 디렉터리에 workers.properties 라는 파일을 생성합니다. 다음 내용을 파일에 붙여넣고 환경에 맞게 수정합니다.

    # An entry that lists all the workers defined
    worker.list=worker01, worker02
    
    # Entries that define the host and port associated with these workers
    worker.worker01.host=127.0.0.1
    worker.worker01.port=8009
    worker.worker01.type=ajp13
    
    worker.worker02.host=127.0.0.100
    worker.worker02.port=8009
    worker.worker02.type=ajp13
    Copy to Clipboard Toggle word wrap

    workers.properties 파일은 Apache mod_jk와 동일한 구문을 사용합니다.

    파일을 저장하고 종료합니다.

  4. iPlanet 웹 서버 재시작

    다음 명령을 실행하여 iPlanet 웹 서버를 다시 시작합니다.

    IPLANET_CONFIG/../bin/stopserv
    IPLANET_CONFIG/../bin/startserv
    Copy to Clipboard Toggle word wrap

iPlanet Web Server는 이제 클라이언트 요청을 JBoss EAP에 배포하도록 구성한 URL로 보냅니다.

이 작업은 로드 밸런싱 구성에서 클라이언트 요청을 JBoss EAP 서버로 전송하도록 NSAPI 커넥터를 구성합니다.

중요

이 작업을 계속하기 전에 NSAPI 커넥터를 이미 구성해야 합니다.

로드 밸런싱을 위한 커넥터 구성
  1. JBoss EAP 서버로 리디렉션할 URL 경로를 정의합니다.

    참고

    IPLANET_CONFIG/obj.conf 에서는 행이 이전 행의 연속인 경우를 제외하고 줄 시작 부분에 공백이 허용되지 않습니다.

    IPLANET_CONFIG/obj.conf 파일을 편집합니다. < Object name="default" > 로 시작하는 섹션을 찾아 아래 예제 파일에 표시된 형식으로 일치시킬 각 URL 패턴을 추가합니다. jknsapi 문자열은 다음 단계에서 정의할 HTTP 커넥터를 나타냅니다. 이 예제에서는 패턴 일치에 와일드카드를 사용하는 방법을 보여줍니다.

    <Object name="default">
    [...]
    NameTrans fn="assign-name" from="/status" name="jknsapi"
    NameTrans fn="assign-name" from="/images(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/css(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/nc(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/jmx-console(|/*)" name="jknsapi"
    NameTrans fn="assign-name" from="/jkmanager/*" name="jknsapi"
    </Object>
    Copy to Clipboard Toggle word wrap
  2. 각 경로에 서비스를 제공하는 작업자를 정의합니다.

    IPLANET_CONFIG/obj.conf 파일을 계속 편집합니다. 이전 단계에서 수정한 섹션에 대한 닫기 태그(</Object> ) 바로 뒤에 다음 새 섹션을 추가하고 필요에 맞게 수정합니다.

    <Object name="jknsapi">
    ObjectType fn=force-type type=text/plain
    Service fn="jk_service" worker="status" path="/jkmanager(/*)"
    Service fn="jk_service" worker="router"
    </Object>
    Copy to Clipboard Toggle word wrap

    jksnapi 오브젝트는 기본 오브젝트에서 name="jksnapi" 매핑에 매핑된 각 경로를 제공하는 데 사용되는 작업자 노드를 정의합니다. /jkmanager/* 와 일치하는 URL을 제외한 모든 URL은 라우터 라는 작업자로 리디렉션됩니다.

  3. 작업자 및 해당 속성을 정의합니다.

    IPLANET_CONFIG/connector/workers.properties 라는 파일을 생성합니다. 다음 내용을 파일에 붙여넣고 환경에 맞게 수정합니다.

    # The advanced router LB worker
    # A list of each worker
    worker.list=router,status
    
    # First JBoss EAP server
    # (worker node) definition.
    # Port 8009 is the standard port for AJP
    #
    
    worker.worker01.port=8009
    worker.worker01.host=127.0.0.1
    worker.worker01.type=ajp13
    worker.worker01.ping_mode=A
    worker.worker01.socket_timeout=10
    worker.worker01.lbfactor=3
    
    # Second JBoss EAP server
    worker.worker02.port=8009
    worker.worker02.host=127.0.0.100
    worker.worker02.type=ajp13
    worker.worker02.ping_mode=A
    worker.worker02.socket_timeout=10
    worker.worker02.lbfactor=1
    
    # Define the load-balancer called "router"
    worker.router.type=lb
    worker.router.balance_workers=worker01,worker02
    
    # Define the status worker
    worker.status.type=status
    Copy to Clipboard Toggle word wrap

    workers.properties 파일은 Apache mod_jk와 동일한 구문을 사용합니다.

    파일을 저장하고 종료합니다.

  4. iPlanet Web Server 7.0을 다시 시작합니다.

    IPLANET_CONFIG/../bin/stopserv
    IPLANET_CONFIG/../bin/startserv
    Copy to Clipboard Toggle word wrap

iPlanet 웹 서버는 로드 밸런싱 구성에서 JBoss EAP 서버로 구성한 URL 패턴을 리디렉션합니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동