로드 밸런서 플러그인 설치 프로그램은 웹 서버의 구성 파일을 일부 수정합니다. 변경 사항은 웹 서버에 따라 다릅니다.
로드 밸런서 플러그인은 Sun Java System Application Server Enterprise Edition과 함께 설치할 수도 있고 지원되는 웹 서버를 실행하는 시스템에 따로 설치할 수도 있습니다. 설치 절차에 대한 자세한 내용은 Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Installation Guide의 1 장, Installing Application Server Software 또는 Sun Java Enterprise System 2005Q5 설치 설명서(Java Enterprise System을 사용할 경우)를 참조하십시오.
설치 프로그램은 Sun Java System Web Server의 구성 파일에 다음 항목을 추가합니다.
웹 서버 instance’s magnus.conf 파일에 다음이 추가됩니다.
##EE lb-pluginInit fn="load-modules" shlib="web_server_install_dir/plugins/lbplugin/bin/libpassthrough.so" funcs="init-passthrough,service-passthrough,name-trans-passthrough" Thread="no" Init fn="init-passthrough" ##end addition for EE lb-plugin
웹 server instance’s obj.conf 파일에 다음이 추가됩니다.
<Object name=default> NameTrans fn="name-trans-passthrough" name="lbplugin" config-file="web_server_install_dir/web_server_instance/config/loadbalancer.xml" <Object name="lbplugin"> ObjectType fn="force-type" type="magnus-internal/lbplugin" PathCheck fn="deny-existence" path="*/WEB-INF/*" Service type="magnus-internal/lbplugin" fn="service-passthrough" Error reason="Bad Gateway" fn="send-error" uri="$docroot/badgateway.html" </object>
위의 코드에서 lbplugin은 Object를 고유하게 식별하는 이름이고 web_server_install_dir/web_server_instance/config/loadbalancer.xml은 로드 밸런서가 실행되도록 구성된 가상 서버에 대한 XML 구성 파일의 위치입니다.
설치 후에 HTTP 로드 균형 조정 설정의 설명대로 로드 밸런서를 구성합니다.
Apache Web Server를 사용하려면 로드 밸런서 플러그인을 설치하기 전에 특정 구성 단계를 수행해야 합니다. 로드 밸런서 플러그인을 설치하면 Apache Web Server가 다음과 같이 추가로 수정됩니다. 플러그인 설치 후에 추가 구성 단계를 수행해야 합니다.
Apache 1.3의 경우 여러 Apache 하위 프로세스를 실행할 경우 프로세스마다 고유한 로드 균형 조정 라운드 로빈 시퀀스가 있습니다. 예를 들어, 두 개의 Apache 하위 프로세스가 실행 중이고 로드 밸런서 플러그인이 두 개의 Application Server 인스턴스에 대해 로드 균형 조정을 할 경우 첫 번째 요청과 두 번째 요청은 인스턴스 #1로 보내며 세 번째 요청과 네 번째 요청은 인스턴스 #2로 보냅니다. 이 패턴은 instance1, instance1, instance2, instance2 등으로 반복되며 예상되는 동작, 즉 instance1, instance2, instance1, instance2 등의 패턴과는 다릅니다. Sun Java System Application Server에서 Apache용 로드 밸런서 플러그인은 각 Apache 프로세스에 대해 로드 밸런서 인스턴스를 인스턴스화하여 독립적인 로드 균형 조정 시퀀스를 만듭니다.
--with-mpm=worker 옵션을 사용하여 컴파일할 경우 Apache 2.0에는 멀티스레드된 동작이 발생합니다.
Apache Web Server의 경우 Apache 버전에 따라 설치된 프로그램은 다음의 최소 요구 사항을 만족해야 합니다.
Apache 1.3을 사용할 경우 로드 밸런서 플러그인에는 다음이 필요합니다.
openssl-0.9.7e(소스)
mod_ssl-2.8.16-1.3.x(소스). 여기서 x는 Apache의 버전을 나타냅니다. mod_ssl 버전은 Apache 버전과 일치해야 합니다.
gcc-3.3-sol9-sparc-local 패키지(Solaris SPARC용)
gcc-3.3-sol9-intel-local 패키지(Solaris x86용)
flex-2.5.4a-sol9-sparc-local 패키지(Solaris SPARC용)
flex-2.5.4a-sol9-intel-local 패키지(Solaris x86용)
소프트웨어 소스는 http://www.sunfreeware.com에서 구할 수 있습니다.
Apache를 컴파일하기 전에 다음을 수행합니다.
Linux 플랫폼에서 동일한 시스템에 Sun Java System Application Server를 설치합니다.
Solaris 운영 체제에서 gcc 버전 3.3 및 make는 PATH에 있어야 하고 flex가 설치되어야 합니다.
Solaris 10 운영 체제에서 OpenSSL용 make를 실행하기 전에 Solaris SPARC의 경우 /usr/local/lib/gcc-lib/sparc-sun-solaris2.9/3.3/install-tools, Solaris x86의 경우 /usr/local/lib/gcc-lib/i386-pc-solaris2.9/3.3/install-tools에 있는 mkheaders를 실행합니다.
Red Hat Enterprise Linux Advanced Server 2.1에서 gcc를 사용할 경우 gcc 3.0 이후 버전이어야 합니다.
gcc 이외의 다른 C 컴파일러를 사용하려면 C 컴파일러의 경로를 설정하고 PATH 환경 변수에서 유틸리티를 작성합니다. 예를 들어, sh 쉘을 사용할 경우에는 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:appserver_installdir/lib를 사용합니다.
Apache 2.0을 사용할 경우 로드 밸런서 플러그인에는 다음이 필요합니다.
openssl-0.9.7e(소스)
httpd-2.0.49(소스)
gcc-3.3-sol9-sparc-local packages(Solaris SPARC용)
gcc-3.3-sol9-intel-local packages(Solaris x86용)
flex-2.5.4a-sol9-sparc-local packages(Solaris SPARC용)
flex-2.5.4a-sol9-intel-local packages(Solaris x86용)
소프트웨어 소스는 http://www.sunfreeware.com에서 구할 수 있습니다.
Apache를 컴파일하기 전에 다음을 수행합니다.
Linux 플랫폼에서 동일한 시스템에 Sun Java System Application Server를 설치합니다.
Solaris 운영 체제에서 gcc 버전 3.3 및 make는 PATH에 있어야 하고 flex가 설치되어야 합니다.
Solaris 10 운영 체제에서 OpenSSL용 make를 실행하기 전에 Solaris SPARC의 경우 /usr/local/lib/gcc-lib/sparc-sun-solaris2.9/3.3/install-tools, Solaris x86의 경우 /usr/local/lib/gcc-lib/i386-pc-solaris2.9/3.3/install-tools에 있는 mkheaders를 실행합니다.
Red Hat Enterprise Linux Advanced Server 2.1에서 gcc를 사용할 경우 gcc 3.0 이후 버전이어야 합니다.
gcc 이외의 다른 C 컴파일러를 사용하려면 C 컴파일러의 경로를 설정하고 PATH 환경 변수에서 유틸리티를 작성합니다. 예를 들어, sh 쉘을 사용할 경우에는 export LD_LIBRARY_PATH= app_server_install_dir/lib:$LD_LIBRARY_PATH를 사용합니다.
Apache용 로드 밸런서 플러그인을 설치하기 전에 Apache Web Server를 설치합니다. SSL과 함께 실행하려면 Apache 소스를 컴파일하고 빌드해야 합니다. 이 절에서는 로드 밸런서 플러그인을 실행할 수 있도록 Apache Web Server를 성공적으로 컴파일하는 데 필요한 최소 요구 사항 및 고급 단계를 설명합니다. 이러한 요구 사항 및 단계는 Solaris 및 Linux 버전의 소프트웨어에만 적용됩니다. Windows 버전의 Apache에 대한 자세한 내용은 Apache 웹 사이트를 참조하십시오.
이미 Apache 소프트웨어를 다운로드하고 압축을 풀어놓은 상태여야 합니다.
OpenSSL 소스를 다운로드하고 압축을 풉니다.
OpenSSL을 컴파일하고 빌드합니다.
OpenSSL 0.9.7.e가 설치된 경우 Lunux 플랫폼에서는 이 단계가 필요하지 않습니다.
다음 명령을 입력합니다.
cd openssl-0.9.7e make make install |
OpenSSL에 대한 자세한 내용은 http://www.openssl.org/를 참조하십시오.
Apache 버전에 따라 다음 절차 중 하나를 수행하십시오.
Apache 1.3에서 다음 단계를 수행하여 mod_ssl을 사용하여 Apache를 구성합니다.
mod_ssl 소스의 압축을 풉니다.
cd mod_ssl-2.8.14–1.3.x
./configure –with-apache=../apache_1.3. x --with-ssl=../openssl-0.9.7e --prefix=install_path --enable-module=ssl --enable-shared=ssl --enable-rule=SHARED_CORE --enable-module=so
위의 명령에서 x는 Apache 버전 번호이고 install_path는 Apache를 설치할 디렉토리입니다.
mod_ssl에 대한 자세한 내용은 http://www.modssl.org를 참조하십시오.
Apache 2.0에 대해 소스 트리를 구성합니다.
Linux 2.1의 Apache에서 컴파일하기 전에
src/MakeFile 파일을 열고 자동으로 생성된 절의 종료 부분을 찾습니다.
자동으로 생성된 절의 첫 번째 네 줄 이후에 다음 줄을 추가합니다.
LIBS+= -licuuc -licui18n -lnspr4 -lpthread -lxerces-c -lsupport -lnsprwrap -lns-httpd40 LDFLAGS+= -L/appserver_installdir/lib -L/opt/sun/private/lib
-L/opt/sun/private/lib는 Application Server를 Java Enterprise System 설치의 일부로 설치한 경우에만 필요합니다.
예를 들면 다음과 같습니다.
##(자동으로 생성된 섹션의 끝) ## CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS) LIBS=$(EXTRA_LIBS) $(LIBS1) INCLUDES=$(INCLUDES1) $(INCLUDES0) $(EXTRA_INCLUDES) LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) "LIBS+= -licuuc -licui18n -lnspr4 -lpthread -lxerces-c -lsupport -lnsprwrap -lns-httpd40 LDFLAGS+= -L/appserver_installdir /lib -L/opt/sun/private/lib
환경 변수 LD_LIBRARY_PATH를 설정합니다.
모든 설치에서 이 환경 변수를 다음으로 설정합니다. appserver_install_dir/lib
Java Enterprise System 설치에서는 이 환경 변수를 appserver_install_dir/lib:opt/sun/private/lib로 설정합니다.
Apache를 사용 중인 버전 설치 지침에 따라 컴파일합니다.
자세한 내용은 http://httpd.apache.org/를 참조하십시오.
일반적으로 단계는 다음과 같습니다.
사용자의 환경에 맞게 Apache를 구성합니다.
로드 밸런서 플러그인 설치 프로그램은 웹 서버의 루트 디렉토리의 디렉토리에 필요한 파일의 압축을 풉니다.
Apache 1.3에서 이 디렉토리는 libexec입니다.
Apache 2.0에서 이 디렉토리는 modules입니다.
웹 서버 인스턴스의 httpd.conf 파일에 다음 항목을 추가합니다.
<VirtualHost machine_name:443> ##Addition for EE lb-plugin LoadFile /usr/lib/libCstd.so.1 LoadModule apachelbplugin_module libexec/mod_loadbalancer.so #AddModule mod_apachelbplugin.cpp <IfModule mod_apachelbplugin.cpp> config-file webserver_instance/conf/loadbalancer.xml locale en </IfModule> <VirtualHost machine_ip_address> DocumentRoot "webserver_instance/htdocs" ServerName server_name </VirtualHost> ##END EE LB Plugin ParametersVersion 7
Apache Web Server가 로드 밸런서 플러그인에서 제대로 작동하려면 올바른 보안 파일이 필요합니다.
apache_install_dir 아래에 sec_db_files라는 디렉토리를 만듭니다.
application_server_domain_dir /config/*.db를 apache_install_dir /sec_db_files로 복사합니다.
플랫폼에 따라 추가 구성을 수행합니다.
로드 밸런서 플러그인을 사용하도록 Microsoft 인터넷 정보 서비스(IIS)를 구성하려면 Windows 인터넷 서비스 관리자에서 특정 등록 정보를 수정합니다. 인터넷 서비스 관리자는 제어판 폴더의 관리 도구 폴더에 있습니다.
Sun Java System Application Server를 설치한 후에 다음과 같이 수정합니다.
인터넷 서비스 관리자를 엽니다.
플러그인을 사용할 웹 사이트를 선택합니다.
이 웹 사이트는 일반적으로 기본 웹 사이트로 명명됩니다.
웹 사이트를 마우스 오른쪽 버튼으로 누른 다음 속성을 선택하여 속성 노트북을 엽니다.
다음 단계에 따라 새 ISAPI 필터를 추가합니다.
새로운 가상 디렉토리를 작성하고 구성합니다.
sun-passthrough.dll 파일의 경로 및 application_server_install_dir/bin을 시스템의 PATH 환경 변수에 추가합니다.
시스템을 다시 시작합니다.
새로운 설정을 적용하려면 웹 서버를 중지했다가 다시 시작합니다.
웹 서버를 중지하려면 웹 사이트를 마우스 오른쪽 버튼으로 누르고 중지를 선택합니다. 웹 서버를 시작하려면 웹 사이트를 마우스 오른쪽 버튼으로 누르고 시작을 선택합니다.
웹 서버, 로드 밸런서 플러그인 및 Application Server가 제대로 작동하는지 확인합니다.
웹 브라우저에 다음 사항을 입력하여 웹 응용 프로그램 컨텍스트 루트에 액세스합니다. http://webserver_name/ web_application. 여기서 webserver_name은 웹 서버의 호스트 이름 또는 IP 주소이고 web_application은 C:\Inetpub\wwwroot\sun-passthrough\sun-passthrough.properties 파일에 나열한 컨텍스트 루트입니다.
설치 프로그램에서 sun-passthrough.properties의 다음 등록 정보를 자동으로 구성합니다. 기본값을 변경할 수 있습니다.
등록 정보 |
정의 |
기본값 |
---|---|---|
lb-config-file |
로드 밸런서 구성 파일 경로 |
IIS_www_root\sun-passthrough\loadbalancer.xml |
log-file |
로드 밸런서 로그 파일 경로 |
IIS_www_root\sun-passthrough\lb.log |
log-level |
웹 서버의 로그 수준 |
INFO |
Sun Java System Application Server 설치 프로그램을 사용할 경우 단일 시스템에 여러 로드 밸런서 플러그인을 설치할 수 없습니다. 단일 시스템에 로드 밸런서 플러그인과 함께 복수 웹 서버를 두려면 단일 클러스터 또는 복수 클러스터든 상관없이 로드 밸런서 플러그인을 구성하기 위한 몇 가지 수동 단계가 필요합니다.
로드 밸런서 플러그인을 사용하도록 새 웹 서버 인스턴스를 구성합니다.
Sun Java System Web Server 수정 사항, Apache Web Server 사용 또는 설치의 단계를 따릅니다.
DTD 파일을 복사합니다.
기존 웹 서버 인스턴스의 config 디렉토리에서 새 인스턴스의 config 디렉토리로 sun-loadbalancer_1_1.dtd를 복사합니다.
로드 밸런서 구성 파일을 설정합니다. 다음의 두 가지 방법 중 하나를 사용합니다.
기존 로드 밸런서 구성을 복사합니다.
기존 로드 밸런서 구성을 사용하여 기존 웹 서버 인스턴스의 config 디렉토리에서 새 인스턴스의 config 디렉토리로 loadbalancer.xml 파일을 복사합니다.
새 로드 밸런서 구성을 만듭니다.
asadmin create-http-lb-config를 사용하여 새 로드 밸런서 구성을 만듭니다.
asadmin export http-lb-config를 사용하여 새 구성을 loadbalancer.xml 파일로 내보냅니다.
해당 loadbalancer.xml 파일을 새 웹 서버의 config 디렉토리에 복사합니다.
로드 밸런서 구성을 만든 후 loadbalancer.xml 파일로 내보내는 방법에 대한 자세한 내용은 HTTP 로드 밸런서 구성 만들기를 참조하십시오.