Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Update 2는 대규모 생산 환경에서의 J2EE 응용 프로그램 및 Java 기술 기반 웹 서비스 개발 및 배포를 위한 J2EE 1.4 플랫폼 호환 서버입니다.
이 장은 다음 내용으로 구성되어 있습니다.
Application Server Enterprise Edition 8.1 2005Q2 Update 2에 포함된 향상된 기능은 다음과 같습니다.
향상된 관리 — Application Server는 브라우저 기반 콘솔 또는 스크립트 작성 가능 명령줄 인터페이스를 사용하여 복잡한 다중 시스템 개발의 원격 보안 관리를 지원합니다. 또한 관리 및 모니터링 기능에 대한 원격 보안 프로그램 액세스가 가능하도록 풍부한 JMX 기반 API를 제공합니다.
메시지 브로커 — Application Server는 고가용성, 신뢰성, 고성능 및 확장 가능 메시징을 제공하는 통합 엔터프라이즈급 메시지 브로커와 함께 제공됩니다.
확장 플랫폼 지원 — 추가 운영 체제, 데이터베이스, 로켈 및 하드웨어가 지원됩니다.
Sun Java Enterprise System — Sun Java Enterprise System의 주요 구성 요소로서 Application Server는 포털 및 네트워크 아이디 서비스와 완벽하게 통합되어 있습니다.
마이그레이션 및 업그레이드 도구 — 이러한 도구는 J2EE 응용 프로그램의 표준 준수 여부와 이식성을 검증하고 다른 J2EE Application Server(JBoss, WebLogic, WebSphere)에서의 마이그레이션 및 Sun ONE Application Server/ iPlanet Application Server 이전 버전에서의 업그레이드를 지원하는 데 사용됩니다.
Java 2 Standard Edition 5.0 지원 — Application Server는 향상된 관리 및 모니터링 기능과 개선된 성능 및 확장성 기능을 포함하는 Java 2 Standard Edition 5.0을 지원합니다.
Java Web Services Developer Pack 1.6 (JWDSP) 플러그인 지원 — 모든 JWSDP 플러그인이 지원됩니다. JWSDP 1.6은 http://java.sun.com/webservices/downloads/1.6/index.html에서 무료로 다운로드할 수 있습니다.
JDBC 드라이버 — Application Server는 Sun JDBC 드라이버와 함께 제공됩니다.
웹 서비스 보안 — 이 컨테이너 메시지 보안 기법은 OASIS WS-Security 표준의 X509 및 아이디/ 비밀번호 프로필을 사용하여 SOAP 웹 서비스 호출에 대한 메시지 수준 인증(예: XML 디지털 서명 및 암호화)을 구현합니다.
WS-I Basic Profile 1.1 — J2EE 1.4 사양에 명시된 대로 이 릴리스는 Web Services Interoperability(WS-I) Basic Profile 1.1을 구현하여 웹 서비스 응용 프로그램을 위한 상호 운용성을 사용 가능하게 합니다.
iWay 어댑터와의 백엔드 연결성 — Sun Microsystems는 현재 Application Server 환경 내에서 기존 IT 응용 프로그램을 활용하는 데 도움이 되도록 주요 백엔드 시스템(SAP, Siebel, Oracle, CICS 및 IBM MQ 시리즈)에 대한 22개의 iWay 어댑터를 전매 및 지원합니다. 이러한 어댑터는 J2EE Connector Architecture 1.5 사양과 웹 서비스(SOAP) 표준을 지원하며 백엔드 응용 프로그램에 연결하는 시간을 단축하는 개발자 도구를 포함합니다.
최신 HADB 관리 시스템 — UNIXTM 플랫폼에는 데이터베이스 서버, ODBC 2.5 드라이버, JDBC 3.0 Type 4 드라이버, clusql(SQL 문을 입력하고 실행하는 대화식 프로그램) 및 관리 시스템으로 구성된 새로운 고가용성 데이터베이스(HADB) 관리 시스템(HADB 버전 4.4.2–7)이 포함되어 있습니다. 이로써 SSH/RSH에 대한 종속성은 제거되지만 UDP 멀티캐스트를 위해 네트워크를 구성해야 합니다. HADB 요구 사항 및 제한 사항에 대한 자세한 내용은 Sun Java System Application Server Enterprise Edition 8.1 2005Q2 고가용성 관리 설명서를 참조하십시오.
Solaris 10 영역 지원 – Application Server는 Solaris 10 시스템의 전역 또는 그 외 영역에 설치할 수 있습니다. Solaris 영역에 대한 자세한 내용은 Solaris 영역 페이지를 참조하십시오.
이 절에서는 Sun Java System Application Server Enterprise Edition 8.1 제품을 설치하기 전에 반드시 갖추어야 하는 요구 사항에 대해 설명합니다.
다음 표는 Sun Java System Application Server Enterprise Edition 8.1 2005Q2 제품에서 지원하는 운영 체제 목록과 Application Server를 설치하고 실행하는 데 필요한 최소한의 권장 메모리 요구 사항을 나타냅니다.
표 2–1 Sun Java System Application Server 8.1 2005Q2 플랫폼 요구 사항
운영 체제 |
최소 메모리 |
권장 메모리 |
최소 디스크 공간 |
필요 하드 디스크 공간 |
JVM |
---|---|---|---|---|---|
Sun Solaris 8, 9, 10 (SPARC) Solaris 9, 10(x86) |
512MB |
1GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 1.4.2_06, J2SE 5.0 |
Red Hat Enterprise Linux 2.1 Update 2, 3.0 Update 1 |
512MB |
1GB |
220MB의 여유 공간 |
300MB의 여유 공간 |
J2SE 1.4.2_06, J2SE 5.0 |
Windows Server 2000 SP4+ Windows 2000 Advanced Server SP4+ Windows Server 2003 Windows XP Pro SP1+ |
1GB |
2GB |
500MB의 여유 공간 |
1GB의 여유 공간 |
J2SE 1.4.2_06, J2SE 5.0 |
UNIX에서는 uname 명령을 사용하여 운영 체제 버전을 확인할 수 있습니다. 디스크 공간은 df 명령을 사용하여 확인할 수 있습니다.
Sun Java System Application Server Enterprise Edition 8.1에 필요한 패치의 최신 목록은 http://sunsolve.sun.com의 "app server 8.1 patch"를 참조하십시오.Sun Java System Application Server Enterprise Edition 8.1 링크를 따르십시오. 운영 체제 패치 요구 사항이 변경되고 Java Enterprise System 구성 요소에 대한 패치를 사용할 수 있게 되면 SunSolve에서 업데이트를 권장 패치 클러스터 형태로 제공합니다.
Solaris 9, 10 (x86, SPARC) 사용자는 “Sun recommended patch cluster”를 설치할 것을 권장합니다. 이 패치 클러스터는 SunSolve의 Recommended and Security Patches에서 다운로드할 수 있습니다.
설치 프로그램을 비롯한 이 제품의 기본 구성 요소를 실행하려면 표준 RedHat Enterprise Linux 3.0 배포의 일부가 아닌 다음 패키지를 설치해야 합니다. compat-libstdc++-7.3-2.96.118.i386.rpm
이 패키지는 http://rpm.pbone.net/index.php3/stat/4/idpl/843376/com/compat-libstdc++-7.3-2.96.118.i386.rpm.html에서 다운로드할 수 있습니다.
Sun Java System Application Server는 DBMS와 해당 JDBC 드라이버의 연결을 지원하도록 설계되어 있습니다. Sun에서 테스트를 거쳐 J2EE 호환 데이터베이스 구성을 위해 사용할 수 있는 것으로 확인된 구성 요소 목록은 다음 표를 참조하십시오.
표 2–2 J2EE 호환 JDBC 드라이버
JDBC 공급업체 |
JDBC 드라이버 유형 |
지원되는 데이터베이스 서버 |
---|---|---|
i-net Software |
Type 4 |
Oracle (R) 8.1.7, 9i, 9.2.0.3 Sybase ASE 12.5.2 Microsoft SQL Server 2000 4.0 Service Pack 1 |
IBM |
Type 2 |
IBM DB2 8.1 Service Pack 3+ |
PointBase |
Type 4 |
PointBase Network Server 4.8 |
DataDirect |
Type 4 |
Oracle (R) 8.1.7, 9i, 9.2.0.3 Sybase ASE 12.5.2 Microsoft SQL Server IBM DB2 8.1 Service Pack 3+ |
Sun Java System JDBC Driver for Oracle |
Type 4 |
Oracle (R) 9.2.0.3, 10G |
Sun Java System JDBC Driver for DB2 |
Type 4 |
IBM DB2 8.1 Service Pack 3+ |
Sun Java System JDBC Driver for Sybase |
Type 4 |
Sybase ASE 12.5.2 |
Sun Java System JDBC Driver for Microsoft SQL Server |
Type 4 |
Microsoft SQL Server 2000 4.0 Service Pack 1 |
Oracle |
Type 4, Type 2 |
Oracle (R) 9.2.0.3, 10G |
i-net Software에 대한 자세한 내용은 http://www.inetsoftware.de/를 참조하십시오.
DataDirect Technologies에 대한 자세한 내용은 http://www.datadirect.com/을 참조하십시오.
Oracle JDBC 드라이버는 J2EE 1.4와 호환되도록 구성해야 합니다. Type 2 및 Type 4 드라이버는 다음 구성을 사용하십시오.
9.2.0.3 이상에서 JDBC 드라이버를 사용합니다.
Oracle 데이터베이스의 매개 변수 파일(init.ora)에 compatible=9.0.0.0.0 이상으로 설정해야 합니다.
ojdbc14.jar 파일을 사용합니다.
다음 JVM 등록 정보를 정의하려면 Application Server를 구성합니다.
-Doracle.jdbc.J2EE13Compliant=true |
Type-2 드라이버의 경우에는 Application Server가 시작된 환경에서 ORACLE_HOME과 LD_LIBRARY_PATH 변수($ORACLE_HOME/lib을 포함해야 함)를 정의해야 합니다. 예를 들어, 두 변수를 asenv.conf 파일에 추가하고 내보내야 합니다.
많은 샘플 응용 프로그램에서는 Application Server와 함께 제공된 PointBase 데이터베이스 서버를 사용합니다. Application Server Enterprise Edition 사용 시에는 PointBase 데이터베이스 서버를 구성한 다음 사용해야 합니다.
PointBase를 구성하는 방법은 다음 두 가지입니다.
운영 체제 및 쉘에 적합한 명령을 사용하여 JAVA_HOME 환경 변수를 J2SE가 설치된 디렉토리로 설정합니다. 예를 들면 다음과 같습니다. % setenv JAVA_HOME "/opt/SUNWappserver/jdk"
Application Server의 PointBase 구성 파일을 다음과 같이 편집합니다.
Solaris 및 Linux 시스템에서는 install_dir /pointbase/tools/serveroption/pbenv.conf 구성 파일을 편집하여 다음 줄을
PB_JAVA=%%%PB_JAVA%%%
아래와 같이 변경합니다.
PB_JAVA=J2SE_location
Windows 시스템에서는 install_dir\pointbase\tools\serveroption\pbenv.bat 구성 파일을 편집하여 다음 줄을
PB_JAVA=%%%PB_JAVA%%%
아래와 같이 변경합니다.
PB_JAVA=J2SE_location
여기서 J2SE_location은 J2SE가 설치된 디렉토리입니다. Application Server와 함께 J2SE를 설치한 경우 기본적으로 install_dir/jdk에 설치됩니다.
위와 같이 변경한 후 startserver 스크립트를 사용하여 PointBase를 시작할 수 있습니다.
이 절에서는 Sun Java System Application Server Enterprise Edition 8.1 2005Q2에서 지원되는 Web Server 목록을 제공합니다.
표 2–3 지원되는 웹 서버
Web Server |
버전 |
운영 체제 |
---|---|---|
Sun Java System Web Server |
6.1+ |
Solaris SPARC 8, 9, 10 Solaris x86 9, 10 Red Hat Enterprise Linux 2.1 Update 2, 3.0 Update 1 |
Apache Web Server |
1.3+, 1.4, 2.0 |
Solaris SPARC 9, 10 Solaris x86 10 Red Hat Enterprise Linux 2.1 Update 2, 3.0 Update 1 Windows Server 2003 Windows 2000 Advanced Server SP4+ Windows Server 2000 SP4+ Windows XP Pro SP1+ |
Microsoft IISTM |
5.0+ |
Windows Server 2003 Windows 2000 Advanced Server SP4+ Windows Server 2000 SP4+ Windows XP Pro SP1+ |
이 절에서는 Sun Java System Application Server Enterprise Edition 8.1 2005Q2와 함께 지원되는 브라우저 목록을 제공합니다.
표 2–4 지원되는 웹 브라우저
브라우저 |
버전 |
---|---|
Mozilla |
1.4, 1.5, 1.6, 1.7.x |
Netscape Navigator |
4.79, 6.2, 7.0 |
Internet Explorer |
5.5 Service Pack 2, 6.0 |
하드웨어 및 소프트웨어 요구 사항의 요구 사항뿐만 아니라 HADB를 실행하기 위한 아래의 요구 사항을 충족하는지 확인합니다.
시스템의 Java 구성 요소는 JDK 1.4.2_02로 작성되고 JDK 1.5에서 테스트 완료되었습니다.
Solaris(SPARC) – Solaris 8 MU7, Solaris 9 MU7, Solaris 10 RR
Solaris(x86) – Solaris 9 MU7, Solaris 10 RR
RedHat Enterprise Linux - 2.1 U5(ext3이 아닌 ext2 파일 시스템만 지원됨) 및 3.0 U4(ext2와 ext3 모두 지원됨. U4 이전의 업데이트는 과도한 스왑으로 인해 사용하지 않는 것이 좋음). HADB는 이러한 버전의 32비트 모드 운영 체제에서만 테스트 완료되었습니다. 또한 HADB는 운영 체제의 버그로 인해 64비트 모드에서 실행되는 RedHat Enterprise Linux 3.0을 지원하지 않습니다. HADB에 미치는 영향에 대한 자세한 내용은 고가용성 절에 있는 알려진 버그 6249685를 참조하십시오.
Microsoft Windows – Microsoft Windows 2000 Advanced Server Service Pack 4 및 Microsoft Windows 2003 Enterprise Edition. HADB는 이후 버전의 모든 64비트 모드 Microsoft Windows 운영 체제를 지원하지 않습니다.
최소 메모리 - 노드당 320MB
최소 여유 디스크 공간 - 호스트당 HADB 바이너리용 70MB. 데이터 장치를 위한 디스크 공간도 필요하며 노드당 테스트 설치를 위해 512MB가 필요합니다.
권장 메모리 - 노드 당 512MB
권장 여유 디스크 공간 - 호스트당 HADB 바이너리용 70MB. 데이터 장치를 위한 디스크 공간도 필요하며 노드당 테스트 설치를 위해 1200MB가 필요합니다.
HADB 데이터와 로그 파일을 저장하는 장치에는 쓰기 캐싱을 할 수 없습니다. 쓰기 캐싱은 기본적으로 Solaris x86 같은 일부 Solaris 플랫폼에서 사용할 수 있습니다.
최소 메모리 - 128MB
최소 여유 디스크 공간 - 노드당 HADB 바이너리에 대해 70MB
최소 메모리 - 120MB
최소 여유 디스크 공간 - 20MB
이전 Application Server 릴리스로부터의 인 플레이스 업그레이드는 지원되지 않습니다. Application Server의 이전 버전에서 현재 버전으로 업그레이드하는 자세한 방법은 Application Server Enterprise Edition Upgrade and Migration Guide를 참조하십시오.
Application Server에서 PointBase를 사용하려면 J2SE 1.4.2를 다운로드하여 번들로 제공되는 J2SE 5.0 JVM 대신에 사용합니다. 방법은 다음과 같습니다.
아직 시스템에 J2SE 1.4.2 SDK(JRE가 아님)를 설치하지 않았다면 다운로드하여 설치합니다.
J2SE 1.4.2 SDK는 http://java.sun.com/j2se/1.4.2/에서 다운로드할 수 있습니다.
Application Server를 중지합니다.
다음과 같은 명령줄을 사용할 수 있습니다.
install_dir/bin/asadmin stop-domain |
또는 관리 콘솔 GUI를 사용할 수 있습니다.
install_dir/config/asenv.conf 파일(Windows에서는 asenv.bat)을 편집하여 AS_JAVA의 값이 J2SE 1.4.2 홈 디렉토리를 가리키도록 변경합니다.
as-install/samples/common.properties 파일을 편집하여 com.sun.aas.javaRoot...로 시작하는 줄을 J2SE 1.4.2 홈 디렉토리에 대한 참조로 변경합니다.
Application Server를 다시 시작합니다.
다음과 같은 명령줄을 사용할 수 있습니다.
install_dir/bin/asadmin start-domain |
또는 관리 콘솔 GUI를 사용할 수 있습니다.
Sun Java System Application Server 소프트웨어를 설치하기 전에 충족되어야 하는 추가 요구 사항은 다음과 같습니다.
사용 가능 공간 — 임시 디렉토리에 Sun Java System Application Server 설치를 위한 35MB의 사용 가능 공간과 SDK 설치를 위한 250MB의 사용 가능 공간이 있어야 합니다 .
설치 제거 프로그램 사용 — Application Server를 시스템에서 제거하려면 소프트웨어에 포함된 설치 제거 프로그램을 사용해야 합니다. 다른 방법을 사용하려고 시도한다면 동일한 버전을 다시 설치할 때 또는 새 버전을 설치할 때 문제가 발생합니다.
사용 가능 포트 — 사용하지 않은 포트가 7개 있어야 합니다.
설치 프로그램에서 사용 중인 포트를 자동으로 감지하여 기본 설정을 위해 사용되고 있지 않은 포트를 제시합니다. 기본적으로 초기 기본 포트는 8080(HTTP용), 8181(HTTPS용) 및 4849(Administration Server용)입니다.
설치 프로그램에서 사용된 포트를 감지하고 다음과 같이 두 개의 다른 포트를 지정합니다. - Sun Java System Message Queue(기본값은 7676) 및 IIOP(기본값은 3700(IIOP), 1060 및 1061(IIOP/SSL)). 이러한 기본 포트 번호가 사용 중인 경우에는 동적 포트 범위에서 임의의 포트 번호가 지정됩니다. 지정되는 포트 번호는 사용 가능한 다음 포트 번호가 아닐 수도 있습니다.
이미 설치한 서버 시작(UNIX) — 설치한 서버를 교체하는 경우가 아니라면, Sun Java System Application Server 8.1 설치 프로세스를 시작하기 전에 서버를 시작해야 합니다. 이렇게 해야 설치 프로그램에서 사용 중인 포트를 감지하여 다른 용도를 위해 할당하는 것을 피할 수 있습니다.
이미 설치한 서버 교체(UNIX) — 이전 Sun Java System Application Server를 현재 Application Server로 교체하려면 새 서버를 설치하기 전에 이전 서버를 중지해야 합니다. 서버를 업그레이드하려면 설치 프로그램 업그레이드 마법사를 사용합니다.
방화벽 사용 안 함(Microsoft Windows) — Sun Java System Application Server 소프트웨어를 설치하기 전에 방화벽 소프트웨어를 중지해야 합니다. 일부 방화벽 소프트웨어는 기본적으로 모든 포트를 사용 불가능하게 만들기 때문입니다. 설치 프로그램에서 어떤 포트를 사용할 수 있는지 정확히 판단할 수 있어야 합니다.
호환성에 대한 자세한 내용은 Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Upgrade and Migration Guide를 참조하십시오.
이 절에서는 Sun Java System Application Server Enterprise Edition 8.1 제품에 대해 고객이 제기한 문제점 중 해결된 사항을 설명합니다.
버그 번호 |
설명 |
---|---|
4887079 |
배포/배포 해제 및 배포된 응용 프로그램 검색을 위한 프로그래밍 방식의 API |
4911462 |
포트가 사용 가능한 범위를 벗어났을 때 잘못된 메시지가 표시됨 |
4918535 |
sun-appserv-deploy()에서 플래그를 사용하여 createAndDropTables()을 지원하지 않음 |
4939749 |
xml:()lang() 값은 Deploytool로 자동 삽입해서는 안 됨 |
4946914 |
클러스터에 대한 배포 지원 |
4979136 |
디렉토리 기반 배포에서 백업 디렉토리에 응용 프로그램을 복사함 |
4987274 |
Bean의 원격 인터페이스 이름이 Util()인 경우 배포에 실패함 |
4988818 |
J2SE 1.5가 사용되는 경우 투명한 지속성 런타임 테스트가 실패함 |
4992295 |
명령줄 인터페이스에서 시스템 구성 요소를 배포할 수 있지만 서버 로그 파일에 오류가 기록됨 |
4994790 |
precompilejsp=true로 배포된 JSP가 sun-web.xml에서 컴파일러 플래그를 사용하지 않음 |
4996876 |
서로 다른 보고서에서의 verify=true인 검증자 대 배포 |
5003356 |
최신 server.policy 파일 업데이트를 Upgradetool에서 설명하지 못함 |
5006854 |
asadmin deploy --virtualservers를 배포하지 못함 |
5007309 |
HTTP Listener 억셉터 스레드에 대한 기본값이 부적절함 |
5008941 |
응용 프로그램의 배포를 해제한 후 다시 배포할 때 JSR88이 시작하지 않음 |
5016848 |
Windows에서 JDK JAR 파일 캐싱과 닫히지 않은 파일로 인해 일부 재배포가 이뤄지지 않음 |
5017956 |
JAR 모듈 수준에서 list -m이 EJB의 모듈을 나열하지 않음 |
5030425 |
deploydir 명령이 security-role-mapping 변경 사항을 무시함 |
5041343 |
항상 /로 둘러 싸인 servlet-mapping url-pattern- -directory를 검사하지 않음 |
5046120 |
규모가 큰 응용 프로그램을 배포하는 중 심각한 오류 로그 메시지가 표시됨 |
6041268 |
HTTP TRACE를 비활성화하는 메커니즘 없음 |
6062410 |
Upgradetool이 현지화된 시스템에서 영어로 실행됨 |
6067341 |
웹 응용 프로그램에서 ejb-refs의 deploydir 명령이 rmic 원격 인터페이스에서 실패함 |
6152752 |
SPEC J2004 테스트가 실행되는 동안 outofbound 예외가 기록됨 |
6154949 |
연결 검증이 실행되지 않음 |
6157310 |
관계를 관리하는 동안 Collection 필드가 재로드됨 |
6165491 |
도메인이 기본 도메인과 다른 경로에 만들어져 있는 경우 해당 도메인 시작에 실패함 |
6171667 |
라이프사이클 모듈 속성 요소가 domain.xml에서 만들어지지 않음 |
6171729 |
MDB 배포 과정에서 문자열이 아닌 RA ActivationSpec 속성이 IllegalArgumentException이 됨 |
6172178 |
OSS/J TT TCK에서 원격 응용 프로그램 서버으로부터 JMS 연결 팩토리를 가져오지 못함 |
6172589 |
보안 관리자 호출을 최적화함 |
6183492 |
[DataDirect] DB2: EJB 호출 과정에서 발생한 예외로 일부 투명한 지속성 응용 프로그램 서버 테스트가 실패함 |
6184864 |
null 단일 값 CMRS가 포함된 OR 연산자 및 표현식을 사용하는 EJB QL 쿼리에서 반환되는 결과가 없음 |
6197393 |
Deploytool이 배포 설명자에서 메시지 대상 요소를 만들지 못하는 경우가 있음 |
6198796 |
응용 프로그램 배포 시 EE 샘플 asadmin 명령에 availabilityenabled=true() 옵션을 포함해야 함 |
6198981 |
클래스 경로에서 xalan.jar 파일이 누락되어 드롭다운 목록이 비워지고 웹 서비스 마법사가 실패함 |
6199076 |
asant 스크립트로 Duke bookstore 샘플 페일오버 테스트를 실행하지 못함 |
6202363 |
mq-failover 예제 응용 프로그램에서 한 개의 ant대상에 클러스터 이름이 하드 코드됨 |
6202606 |
JMS 서비스 구성을 JMS와 Message Queue 사이의 SSL JMS에 사용할 수 없음 |
6206176 |
Application Server 8.1에서 755 권한을 얻기 위해 startserv/stopserv가 필요함 |
6207297 |
기본 SSL 포트 번호(443) 없이 응용 프로그램 서버에 액세스할 수 없음 |
6207862 |
asadmin create-domain --help로 인해 일부가 왜곡되어 표시됨 |
이 절에서는 Sun Java System Application ServerEnterprise Edition8.12005Q2Update 2 제품에 대해 고객이 제기한 문제점 중 해결된 사항을 설명합니다.
버그 번호 |
설명 |
---|---|
4842830 |
“ComStream이 닫혀 있음” 예외가 JDBC 클라이언트에 도달함 |
4847716 |
불필요한 동작을 야기할 수 있으므로 commit 모드를 설정하는 데 execute/executeUpdate를 사용하면 안 되고 표준 JDBC setAutocommit()를 사용해야 함 |
4861326 |
문 풀이 CREATE SCHEMA를 암시적 SET SCHEMA로 인식하지 않음 |
4891060 |
수신기가 소켓에서 수신할 때 주소 지시문을 무시함 |
5042351 |
새 노드를 추가한 후 만들어진 새 테이블이 추가된 노드에서 분산되지 않음 |
5061316 |
재조각화 중인 테이블에 쿼리하면 HADB-E-01792:Replica has been deleted로 실패할 수 있으므로 쿼리를 재시도해야 함 |
5063175 |
단일/다중 네트와 함께 호스트를 사용할 때 hadbm create에서 오류가 발생해야 함 |
5079029 |
단일 호스트에서 패키지 등록을 취소하면 “The software package is in use by a database instance and can not be removed” 오류로 실패할 수 있음 |
5094611 |
관리 리포지토리에서 쓰기 트랜잭션을 열어야 하는 관리 작업이 트랜잭션이 열릴 때까지 대기하면서 아주 가끔 완전히 중지될 수 있음 |
5103186 |
Windows 2003에서 한 개의 네트워크가 종료되어 NSUP가 시작하지 못함 |
6225613 | |
6271063 |
HADB c 패키지(Solaris: SUNWhadbc, Linux: sun-hadb-c) 버전의 설치/제거에서 심볼릭 링크 /opt/SUNWhadb/로 인해 오류가 발생함 |
6174781 |
명령 hadbm 상태 노드는 관리 에이전트가 재시작한 후 단기간에 알 수 없음과 같은 nodestate가 노드에 있다고 표시할 수 있음 |
6175436 |
hadbm addnodes 또는 hadbm refragment가 HADB-E-11747:Nodegroup all_nodes exists already 오류로 실패하면 다시 hadbm refragment를 실행해야 함 |
61746766179084 |
configure-ha-cluster를 실행하지 못함 |
6178228 6179010 |
configure-ha-cluster에 오류가 있음 |
6181845 |
Windows에서 2GB가 넘는 데이터 장치를 만들 수 없음 |
6189189 |
절대 경로가 주어지는 경우 export-http-lb-config에서 loadbalancer.xml 파일 이름을 만들지 않음 |
6198225 |
QuickStart Guide에 반복된 문장이 있음 |
6195779 |
일부 필터 드롭다운 목록의 옵션 값이 국제화되지 않음 |
6196741 |
J2SE 1.4.x 업그레이드 시 통합된 J2SE 구성 요소 위치의 업그레이드가 정확하게 이루어지지 않음 |
6207616 |
호스트가 다운되면 hadbm 명령이 관리 에이전트에 연결하기 위해 필요한 경우 몇 분 동안 정지될 수 있음 |
6212791 |
트리 노드를 누르면 오른쪽 창에 아무 항목도 표시되지 않음 |
6216096 |
트랜잭션이 중단되어 있으면 “로그 버퍼가 가득 차고” 많은 트랜잭션이 중단되기 때문에 노드 충돌이 발생할 수 있음 |
6225613 |
executeUpdate()의 LOB 크기가 일정하지 않음 |
6227502 |
EJB 타이머 서비스의 초기화 오류를 SEVERE로 기록하면 안 됨 |
6228789 |
hadbm delete 명령이 실패함 |
6230415 |
HADB-E-21070: 제한 시간 내에 작업이 완료되지는 않았지만 취소되지 않았으므로 나중에 완료될 수 있음 |
6230792 |
hadbm: 오류 22009: 생성된 명령이 지난 300초 동안 진행되지 않았음 |
6232347 |
dropandcreatetables가 asdamin deploy --help에 대해 정확하지 않음 |
6232838 |
불필요한 로그 호출로 응용 프로그램 서버가 확대되지 못함 |
6232974 |
8.0 Platform Edition에서 8.1 Enterprise Edition으로 업그레이드할 때 설치 관리자가 노드 에이전트를 만들지 못함 |
6233142 |
HADB를 설치하거나 제거하는 경우 소프트 링크 /opt/SUNWhadb/4는 유지되어야 하지만 그렇지 않은 경우가 있음 |
6233276 |
URL -pattern /*.jsp에 대해 양식 인증이 작동하지 않음 |
6233469 |
asadmin 도움말에서 도움말 텍스트가 잘못됨 |
6233476 |
update-file-user 및 비슷한 명령에 대해 도움말 텍스트가 잘못됨 |
6237567 |
관리 객체 자원 만들기 창에 adminObjectStep2PageHelp 키 없음 |
6238477 |
동일한 응용 프로그램 서버 인스턴스에서 "corba name" EJB 참조를 확인할 수 없음 |
6239630 |
특정 Entity Bean을 제대로 매핑할 수 없음 |
6239837 |
JMS server-config에 대한 관리에서 다시 연결 간격의 단위와 기본값이 잘못됨 |
6240661 |
일부 메시지가 로켈에 영어로 남아 있음 |
6241311 |
"풀 유휴 시간 초과" 필드의 주석이 잘못됨 |
6241368 |
관리 콘솔 로그인 화면과 온라인 도움말의 브라우저 언어가 영어가 아님 |
6243395 |
JMS 및 JDBC 자원을 이용한 트랜잭션 복구가 작동하지 않음 |
6245922 |
응용 프로그램 서버가 계속 충돌함 |
6246426 |
WEB-INF/lib에서 JAR 파일의 확장으로 숨겨져야 하는 내용이 노출됨 |
6249637 |
JDBC 연결 풀 등록 정보를 변경하려면 다시 시작해야 함 |
6249662 |
Proxy-auth-cert가 제대로 포맷되지 않음 |
6250989 |
SOAP 요소. addChildElement가 마크업 없이 불완전한 요소를 추가함 |
6252187 |
고가용성 단일 사인 온이 서로 다른 영역에 사용자를 전파함 |
6252810 |
설명서 페이지의 configure-ha-persistence가 최신 상태가 아님 |
6253735 |
QuickStart에 고가용성 정보 없음 |
6254393 |
번들로 제공된 QuickStart에 오래된 릴리스 노트가 링크되어 있음 |
6254462 |
데이터베이스가 재시작된 후에 연결 검증 코드에 의해 NPE가 발생함 |
6255253 |
번들로 제공된 설명서의 "구매 방법" 링크가 잘못된 URL임 |
6255440 |
동기화를 위한 성능 향상 |
6255458 |
delete-virtual-server에 오자 있음 |
6255524 |
UpdateTask ANT 작업이 ANT 1.6.2에서 동작하지 않음 |
6255564 |
Platform Edition에서 Enterprise Edition으로 업그레이드한 후에 관리 사용자 인증으로 인해 업그레이드된 도메인이 시작하지 못함 |
6258844 |
8.1 Update 1로 업그레이드한 후에 파일 영역 사용자 로그인이 작동하지 않음 |
6258997 |
명령줄 인터페이스 설명서 페이지에서 --secure 옵션의 설명이 정확함 |
6259125 |
asadmin get에 대한 설명서가 적절하지 않고 불명확함 |
6262564 |
PrivateKeyProcessor가 keyIdentifier로 가져오기를 지원하지 않음 |
6262824 |
Solaris 10: 전역 영역에서 ma-initd 스크립트를 사용하여 관리 에이전트를 중단하면 로컬 지역의 관리 에이전트도 중단됨 |
6263684 |
Linux RPM 패치 생성 스크립트의 경우 README에서 수동으로 변경해야 함 |
6263686 |
svr4 패치 생성에서 README에 잘못된 항목을 삽입함 |
package-appclient 스크립트 깨짐 |
|
6264969 |
PointBase를 사용하는 모든 AS 샘플의 설정이 실패하여 데이터베이스를 5.1 버전으로 업그레이드할 수 없음 |
6265687 |
설치 관리자의 그래픽 이미지 제품 버전이 잘못됨 |
6266183 |
고가용성 테스트가 실패하여 다시 시작한 후 영역 이름에 null이 포함됨 |
6267410 |
로그 수준이 FINE으로 설정되어 있는 경우 session.invalidate() 동안 예외가 발생함 |
이 절에서는 Application Server 8.1에 포함된 HADB 구현에 관한 중요한 추가 정보를 설명합니다.
새 관리 명령 hadbm setadminpassword가 데이터베이스 관리에 사용되는 암호를 변경할 수 있도록 구현되었습니다. 이 명령에는 사용할 관리 에이전트와 이전 암호 및 새 암호를 나타내는 옵션이 있습니다. 자세한 내용은 hadbm setadminpassword 설명서 페이지를 참조하십시오.
기존 관리 명령 hadbm listpackages가 수정되었습니다. 이전의 명령에서는 피연산자를 가져가지 않았으며 해당 관리 도메인에 모든 패키지를 나열했습니다. 수정한 결과 패키지 이름 피연산자를 옵션으로 제공하고 해당 이름의 패키지만 나열됩니다. 피연산자를 제공하지 않으면 모든 패키지가 나열됩니다. 자세한 내용은 hadbm listpackages 설명서 페이지를 참조하십시오.
기존 관리 명령 hadbm createdomain이 수정되었습니다. hostlist 피연산자가 확장되어 관리 에이전트의 포트 번호도 지정합니다. 이와 같이 도메인은 hostlist 피연산자만 사용하여 완전히 지정됩니다. 이전 버전과의 호환성을 위해 이전 동작은 여전히 지원됩니다. 자세한 내용은 hadbm createdomain 설명서 페이지를 참조하십시오.
관리 시스템의 일부 오류 메시지가 수정되었습니다. 오류 메시지의 이해도, 일관성 및 정확도를 개선하기 위해 수정이 이뤄졌습니다. 실제 수정한 내용은 이 릴리스 노트에 없습니다.
설치와 제거 동작이 약간 변경되었습니다. HADB를 설치하거나 제거할 때 항상 소프트 링크 /opt/SUNWhadb/4를 유지해야 하지만 그렇지 않은 경우가 있습니다.
명령줄에 명령 옵션으로 암호를 입력할 가능성이 없어졌습니다. 이는 암호를 명령줄 옵션으로 가져가는 모든 hadbm 명령의 경우와 관련이 있습니다. hadbm 명령의 경우 이전까지 암호는 다음과 같은 형식으로서 입력할 수 있었습니다.
암호 파일
명령줄 옵션
대화식 입력
두 번째 방법인 명령줄 옵션은 안전하지 않은 것으로 간주되어 더 이상 지원되지 않습니다. 이런 식으로 암호를 입력하면 경고 메시지가 표시됩니다. 대신 첫 번째 방법인 암호 파일 또는 세 번째 방법인 대화식 입력을 사용합니다. 명령줄에 암호를 사용하는 방법은 다음 릴리스에서는 더 이상 사용하지 않습니다. 이는 명령줄 암호 옵션을 사용하는 모든 hadbm 명령에 적용됩니다.
HADB는 JGroups 2.2를 사용하도록 업그레이드되었고 해당 소스 코드는 HADB와 함께 배포되었습니다. 이전 HADB 버전으로부터 온라인 업그레이드를 지원하기 위해 JGroups 2.1과 2.2가 HADB와 함께 제공됩니다. JGroups 2.1의 경우 바이트 코드만 제공됩니다.
다음 파일 시스템 중 하나를 사용하기 위해 HADB를 구성하려면 몇 가지 중요한 사항을 고려해야 합니다.
ext2 및 ext3 — HADB는 Red Hat Application Server 3.0을 위한 ext2와 ext3 파일 시스템을 지원합니다. Red Hat Application Server 2.1의 경우에는 ext2 파일 시스템만 지원합니다.
Veritas– Veritas 파일 시스템을 Solaris 플랫폼에서 사용하는 경우 WRN: Direct disk I/O mapping failed 메시지가 내역 파일에 기록됩니다. 이 메시지는 HADB에서 데이터 및 로그 장치에 대해 직접 I/O를 사용할 수 없다는 것을 의미합니다. 직접 I/O는 디스크 페이지를 기록하는 CPU 비용을 절감하는 성능 향상 기능입니다. 이 기능을 사용하면 운영 체제에서 사용한 데이터 페이지를 관리하는 오버헤드를 줄일 수 있습니다.
직접 I/O를 Veritas 파일 시스템과 함께 사용하려면 다음 중 한 가지 작업을 수행합니다.
mincache=direct 옵션을 사용하여 마운트한 파일 시스템에 데이터 및 로그 장치를 생성합니다. 이 옵션은 파일 시스템에 생성된 모든 파일에 적용됩니다. 자세한 내용은 mount_vxfs(1M) 명령을 참조하십시오.
Veritas Quick I/O 기능을 사용하여 파일 시스템에 대한 원시 I/O를 수행합니다. 자세한 내용은 VERITAS File System 4.0 Administrator's Guide for Solaris를 참조하십시오.
Application Server 8.1 2005Q2 Update 2의 경우는 이러한 구성에 대한 테스트를 거치지 않았습니다.
Application Server 소프트웨어와 함께 HADB를 설치하고 구성하는 데 대한 자세한 내용은 Application Server Enterprise Edition 고가용성 관리 설명서를 참조하십시오.
사용자는 HADB 내역 파일, 관리 에이전트 구성 파일, 로그 파일 및 리포지토리, 그리고 모든 데이터 장치를 설치 경로 밖에 두어야 합니다. 그렇지 않은 경우 업그레이드 전에 이를 실시해야 합니다. 관리 리포지토리와 구성 파일을 이동하는 방법은 다음과 같습니다.
이전 관리 에이전트를 모두 중단하고 HADB 모드를 실행 상태로 유지합니다.
각 호스트에서 리포지토리 디렉토리를 새 위치로 이동합니다.
각 호스트에서 dbconfig 디렉토리를 새 위치로 복사합니다.
각 호스트에서 mgt.cfg 파일을 업데이트하고, dbconfig 및 리포지토리 디렉토리의 정확한 경로를 설정합니다.
업데이트된 mgt.cfg 파일을 사용하여 관리 에이전트를 시작합니다.
HADB 버전 4.4.x에서 버전 4.4.2-7로 업그레이드하려면 다음 단계를 수행합니다.
위에서 설명한 사전 업그레이드 작업을 필요한 단계 만큼 수행합니다.
HADB 4.4.2-7 버전을 모든 HADB 호스트의 4.4.x 버전 경로가 아닌 /opt/SUNWhadb/4.4.2-7 등의 다른 경로에 설치합니다.
HADB 호스트와 다른 경우 HADB 4.4.2-7 버전을 hadbm 클라이언트 호스트에 설치합니다.
모든 HADB 호스트에서 실행 중인 관리 에이전트를 모두 중단합니다.
새 버전의 소프트웨어를 사용하여 이전 구성 파일로 관리 에이전트 프로세스를 시작합니다. 나머지 단계에서는 새 버전의 bin 디렉토리에 있는 hadbm 명령을 사용합니다.
관리 도메인에 패키지를 등록합니다. (기본 패키지 이름은 V4.4가 되므로 동일한 이름의 기존 패키지와 충돌을 방지하기 위해 다른 패키지 이름이 필요할 수 있습니다.)
hadbm registerpackage --packagepath=/opt/SUNWhadb/4.4.2-7 V4.4.2-7 |
hadbm listpackages 명령을 실행하고 새 패키지가 도메인에 등록되어 있는지 확인합니다.
새 hadbm 4.4.2-7 버전으로 데이터베이스를 다시 시작합니다. 장치 및 내역 파일을 이동해야 하는 경우 다음과 같이 장치와 내역 파일의 새 경로 설정과 결합된 온라인 업그레이드를 한 번에 실행합니다.
hadbm set packagename=V4.4.2-7,devicepath=new_devpath, historypath=new_histpath |
그러나 장치 및 내역 파일이 이미 설치 디렉토리의 외부에 있다면 노드에 대해 롤링 재시작만 수행하는 다음 명령을 실행합니다.
hadbm set packagename=V4.4.2-7 database name |
hadbm status 명령을 사용하여 데이터베이스 상태가 "실행 중"인지 확인하고, 정상적으로 작동하여 클라이언트 트랜잭션을 제공하는지 확인합니다.
모두 제대로 작동한다면 나중에 이전 설치를 제거할 수 있습니다. 이전 패키지를 등록 취소하기 전에 ma 리포지토리에서 이전 패키지에 대한 모든 참조를 제거합니다. 그렇지 않으면 hadbm unregisterpackage가 "사용 중인 패키지"로 인해 실패합니다.예를 들어, 가상 재구성 작업인 hadbm set connectiontrace=same as previous value는 이전 패키지에 대한 모든 참조를 제거합니다. 이제 다음 명령으로 이전 패키지의 등록을 취소합니다.
hadbm unregisterpackage [--hosts=host-list] old pacakge name |
파일 시스템에서 이전 설치를 제거합니다.
업그레이드가 성공적이었는지 테스트하기 위해 업그레이드가 제대로 수행되었는지 확인합니다(Solaris만 해당).
실행 중인 프로세스는 새 바이너리를 사용해야 합니다. 모든 HADB 노드에서 다음을 확인합니다.
new path/bin/ma -v new path/bin/hadbm -v |
데이터베이스가 실행 중인지 확인합니다. 다음 명령은 모든 HADB 노드가 “실행 중”인 상태인지를 보여주어야 합니다.
new path/bin/hadbm status -n |
HADB를 사용하는 제품의 포인터가 새 HADB 경로를 가리키도록 변경되었는지 확인합니다.
HADB를 사용하는 제품은 업그레이드 테스트를 실행하여 HADB 업그레이드가 작동하는지도 확인할 수 있습니다.
온라인 업그레이드 후에 새 버전이 제대로 작동하지 않을 경우 다시 이전 HADB 버전을 사용합니다. 그러나, 관리 에이전트 리포지토리가 변경되었다면 HADB 자체는 다운그레이드될 수 있지만 새 관리 에이전트가 실행 중이어야 합니다.
이 절에서는 HADB 배포 및 업그레이드에 관한 추가 정보를 제공합니다.
로컬 디스크의 저장 장치, 로그 및 내역 파일만 원격으로 마운트된 파일 시스템을 사용하지 않습니다.
호스트에 두 개 이상의 노드가 있을 경우 각 노드에 속한 장치를 각각 다른 디스크에 두십시오. 그렇지 않으면 디스크 충돌로 성능이 저하됩니다. 이 문제의 증상은 내역 파일의 BEWARE - last flush/fputs took too long과 같은 메시지로 확인할 수 있습니다. 단일 노드에 두 개 이상의 데이터 장치 파일이 있다면 이 장치 파일에 각각 다른 디스크를 사용하는 것이 좋습니다.
로컬 디스크(데이터 장치에 사용되는 디스크 외의 개별 디스크)를 사용하여 HADB 호스트에 HADB 바이너리를 설치합니다. NFS 지연 또는 디스크 충돌로 인해 내역 파일에 Process blocked for nnn, max block time is nnn이라는 경고가 기록되고 노드가 다시 시작될 수 있습니다.
HADB 장치, 내역 파일, 관리 에이전트 디렉토리 및 에이전트 구성 파일은 HADB 패키지 경로에 두지 마십시오. 그렇지 않으면 새 버전으로 업그레이드할 때와 이전 패키지 경로를 삭제할 때 문제가 생길 수 있습니다.
HADB의 이 릴리스는 최대 28개 노드에 대해 지원됩니다. 이 중 24개는 활성 데이터 노드이고 4개는 예비 노드입니다.
JDBC 드라이버와 HADB 서버에 동일 버전을 사용하는 것이 좋습니다.
IPv6이 아닌 IPv4만 지원합니다.
Windows에서 명령줄 길이는 2048바이트 수로 제한됩니다.
네트워크는 UDP 멀티캐스트를 위해 구성되어야 합니다.
RedHat Enterprise Linux 3.0 업데이트 1에서 3까지에서 과도한 스와핑이 발견되었으므로 이것을 배포 플랫폼으로 권장하지 않습니다. 이 문제는 RedHat Enterprise Linux 3.0 업데이트 4에서 해결되었습니다.
실시간 우선 순위로 NSUP를 실행할 수 있습니다.
노드 수퍼바이저(NSUP) 프로세스(clu_nsup_srv )는 "하트 비트" 메시지를 적절한 시기에 교환할 수 있도록 하여 HADB의 고가용성을 보장합니다. 타이밍은 NSUP가 자원 고갈을 일으키는 다른 프로세스와 같은 곳에 놓여질 때 영향을 받습니다. 그 결과 잘못된 네트워크 분할이 이루어지고 노드가 재시작되어(내역 파일에 “Process blocked for n seconds” 경고가 표시된 다음) 트랜잭션과 기타 예외가 중단됩니다.
이 문제를 해결하려면 clu_nsup_srv (installpath/lib/server에 있음)에 suid 비트 세트가 있어야 하며 파일은 루트로 소유해야 합니다. 이는 다음 명령을 사용하여 직접 수행할 수 있습니다.
# chown root clu_nsup_srv # chmod u+s clu_nsup_srv |
이로 인해 시작 시 clu_nsup_srv 프로세스가 root 사용자로 실행되고 시작된 이후에는 프로세스에서 자동으로 실시간 우선 순위가 자체 제공됩니다. setuid 사용으로 인해 보안에 영향을 미치지 않도록 처음에 실시간 우선 순위가 설정되고, 우선 순위가 변경되면 프로세스가 유효한 uid로 돌아갑니다. 다른 HADB 프로세스는 시간 공유 우선 순위에 따라 우선 순위를 낮춥니다.
NSUP가 실시간 우선 순위를 설정할 수 없는 경우 "Could not set realtime priority"(unix: errno will be set to EPERM)라는 경고 메시지가 나타나고 실시간 우선 순위 없이 계속됩니다. 해당 경고는 ma.log 파일에 기록됩니다.
실시간 우선 순위를 설정할 수 없는 경우는 예를 들면 다음과 같습니다.
Solaris 10 비전역 영역에 설치된 경우
PRIV_PROC_LOCK_MEMORY(프로세스가 물리적 메모리에서 페이지를 잠그도록 허용) 및/또는 PRIV_PROC_PRIOCNTL 권한이 Solaris 10에서 호출된 경우
사용자가 setuid 권한을 끈 경우
사용자가 소프트웨어를 tar 파일(App.server에 대한 nonroot 설치 옵션)로 설치한 경우
clu_nsup_srv 프로세스는 CPU를 사용하지 않고 용량이 작으며 실시간 우선 순위로 실행해도 성능에는 영향을 주지 않습니다.
Solaris에서 HADB에 대한 IP 네트워크 다중 경로를 구성합니다(Solaris 9에서만 테스트됨).
HADB를 실행 중인 Solaris 호스트는 가능한 최대 네트워크 가용성을 보장하기 위해 네트워크 다중 경로로 설정하는 것이 좋습니다. 네트워크 다중 경로 설정은 IP Network Multipathing Administration Guide에 자세히 설명되어 있습니다. HADB와 함께 다중 경로를 사용할 경우, 아래에 설명된 대로 HADB의 다중 경로 설정을 채택하기 전에 다중 경로를 설정하기 위해 IP Network Multipathing Administration Guide의 Administering Network Multipathing 절을 참조하십시오. IP Network Multipathing Administration Guide는 Solaris 9 System Administrator Collection의 일부로, http://docs.sun.com에서 다운로드할 수 있습니다.
네트워크 인터페이스 실패 감지 시간 설정
HADB가 다중 경로 페일오버를 올바르게 지원하려면 네트워크 인터페이스 실패 감지 시간이 /etc/default/mpathd의 FAILURE_DETECTION_TIME 매개 변수에서 지정된 1000밀리초를 초과해서는 안 됩니다. 원래 값이 큰 경우 파일을 편집하여 이 매개 변수의 값을 1000으로 변경합니다.
FAILURE_DETECTION_TIME=1000 |
변경된 내용을 적용하려면 다음 명령을 호출합니다.
pkill -HUP in.mpathd |
HADB에서 사용할 IP 주소
Solaris IP Network Multipathing Administration Guide에 설명된 대로 다중 경로는 물리적 네트워크 인터페이스를 다중 경로 인터페이스 그룹으로 그룹화하는 것입니다. 해당 그룹 내의 물리적 인터페이스는 물리적 인터페이스 주소와 테스트 주소 등 연관된 IP 주소가 두 개씩 있습니다. 물리적 인터페이스 주소는 데이터를 전송하는 데 사용되고 테스트 주소는 Solaris 내부용으로만 사용됩니다. hadbm create --hosts가 실행되면 각 호스트는 다중 경로 그룹에서 물리적 인터페이스 주소 하나만으로 지정되어야 합니다.
예제
호스트 1과 호스트 2에 물리적 네트워크 인터페이스가 두 개씩 있다고 가정합니다. 각 호스트에서 이러한 두 인터페이스는 다중 경로 그룹으로 설정되어 있으며 ifconfig -a를 실행하면 다음 결과가 생성됩니다.
호스트 1
bge0: flags=1000843<mtu 1500 index 5 inet 129.159.115.10 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge0:1: flags=9040843<mtu 1500 index 5 inet 129.159.115.11 netmask ffffff00 broadcast 129.159.115.255 bge1: flags=1000843<mtu 1500 index 6 inet 129.159.115.12 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge1:1: flags=9040843<mtu 1500 index 6 inet 129.159.115.13 netmask ff000000 broadcast 129.159.115.255 |
호스트 2
bge0: flags=1000843<mtu 1500 index 3 inet 129.159.115.20 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge0:1: flags=9040843<mtu 1500 index 3 inet 129.159.115.21 netmask ff000000 broadcast 129.159.115.255 bge1: flags=1000843<mtu 1500 index 4 inet 129.159.115.22 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge1:1: flags=9040843<mtu 1500 index 4 inet 129.159.115.23 netmask ff000000 broadcast 129.159.115.255 |
여기서, 두 호스트의 물리적 네트워크 인터페이스는 bge0과 bge1로 나열되어 있습니다bge0:1과 bge1:1로 나열된 인터페이스는 IP Network Multipathing Administration Guide에 설명된 대로 다중 경로 테스트 인터페이스(이에 따라 ifconfig 출력에 DEPRECATED로 표시됨)입니다.
이 환경에서 HADB를 설정하려면 각 호스트에서 물리적 인터페이스 주소 하나를 선택합니다. 이 예제의 호스트 1에서 129.159.115.10을 선택하고 호스트 2에서 129.159.115.20을 선택합니다. 호스트당 데이터베이스 노드가 한 개인 데이터베이스를 만들려면 hadbm create에 다음 인수를 사용합니다.
--host 129.159.115.10,129.159.115.20 |
각 호스트에 데이터베이스 노드가 두 개인 데이터베이스를 만들려면 다음 인수를 사용합니다.
--host 129.159.115.10,129.159.115.20,129.159.115.10,129.159.115.20 |
두 경우 모두 두 호스트의 ma.server.mainternal.interfaces 변수를 129.159.115.0/24로 설정해야 합니다.
4.2 또는 4.3에서 4.4로 온라인 업그레이드할 수 없습니다. 그러나, 4.4에서는 향후 버전에 대해 온라인 업그레이드를 지원합니다. 4.4.1에서 4.4.2로 업그레이드하려면 다음 단계를 수행합니다.
모든 HADB 호스트(/opt/SUNWhadb/4.4.2-6와 같이 4.4.1과 다른 경로)에 4.4.2를 설치합니다.
hadbm client 호스트에 새 버전을 설치합니다.
HADB 호스트에서 실행 중인 모든 관리 에이전트를 중단합니다.
새 버전의 소프트웨어를 사용하여 이전 구성 파일로 관리 에이전트 프로세스를 시작합니다. 나머지 단계에서는 새 버전의 bin 디렉토리에 있는 hadbm 명령을 사용합니다.
관리 도메인에 패키지를 등록합니다. (여기서 기본 패키지 이름은 V4.4가 되므로 동일한 이름의 기존 패키지와 충돌을 방지하기 위해 다른 패키지 이름이 필요할 수 있습니다.)
hadbm registerpackage --packagepath=/opt/SUNWhadb/4.4.2-6 V4.4.2 |
새 버전으로 데이터베이스를 다시 시작합니다. (다음 명령은 노드에 대해 롤링 재시작을 수행합니다.)
hadbm set packagename=V4.4.2 database_name |
(hadbm status 명령을 사용하여) 데이터베이스 상태가 “실행 중”인지 그리고 정상적으로 기능하여 클라이언트 트랜잭션을 제공하는지 확인합니다.
모두 제대로 작동한다면 나중에 이전 설치를 제거할 수 있습니다.
이전 패키지의 등록을 취소하기 전에 ma 리포지토리에서 이전 패키지에 대한 모든 참조를 제거합니다. 그렇지 않으면 hadbm unregisterpackage는 "사용 중인 패키지"로 인해 실패합니다.예를 들어 가상 재구성 작업인 hadbm set connectiontrace=<same_as_previous_value>는 이전 패키지에 대한 모든 참조를 제거합니다. 이제 다음 명령으로 이전 패키지의 등록을 취소합니다.
hadbm unregisterpackage [--hosts=<host_list>] <old_package_name> |
HADB 설치 지침에 설명된 대로 파일 시스템에서 이전 설치를 제거합니다.
테이블에 UNIQUE 보조 색인을 만들 수 없습니다.
표현식(DISTINCT column)은 유일하게 선택된 표현식인 경우에만 종합 표현식에 허용됩니다.
모든 테이블은 기본 키 사양을 사용해서 만들어야 합니다. (즉, 기본 키가 없는 테이블은 지원되지 않습니다.)
FULL OUTER JOIN은 지원되지 않습니다.
다음과 같이 테이블 하위 쿼리인 IN 하위 테이블은 지원되지 않습니다.
SELECT SNAME FROM S WHERE (S1#,S2#) IN (SELECT S1#,S2# FROM SP WHERE P#='P2') |
NOT NULL 및 PRIMARY KEY 외의 제약 조건은 지원되지 않습니다.
새 소유자를 자원에 할당할 수 있지만 이때 현재 소유자에게 부여된 권한이 새 소유자에게는 부여되지 않습니다.
각 하위 쿼리가 쿼리의 외부 수준과 (직접적인) 상관 관계가 없는 두 개 이상의 중첩된 NOT EXISTS 하위 쿼리는 지원되지 않습니다.
열 권한은 지원되지 않습니다.
행 값 구성자는 VALUES 절에만 허용됩니다.
하위 쿼리는 행 값 구성자에서 값 표현식으로 허용되지 않습니다.
다음 데이터 유형은 기본 키를 만들 때 사용할 수 없습니다.
REAL
FLOAT
DOUBLE PRECISION
DECIMAL
NUMERIC
Application Server에는 HTTP, IIOP 및 JMS 클라이언트에 대한 로드 균형 조정, HTTP 세션 페일오버 지원, EJB 클러스터링 및 페일오버 지원, 고가용성 EJB 타이머, 분산 트랜잭션 복구, 롤링 응용 프로그램 업그레이드, J2EE 응용 프로그램의 일시적 상태 저장용 고가용성 데이터베이스가 포함되어 있습니다.
가용성은 클러스터에서 Application Server 인스턴스의 페일오버 보호를 가능하게 합니다. 하나의 Application Server 인스턴스가 중지될 경우 사용할 수 없게 된 서버에 할당되었던 세션을 다른 Application Server 인스턴스에서 인수합니다. 세션 정보는 HADB에 저장됩니다. HADB는 HTTP 세션, Stateful Session Bean 및 단일 사인 온 자격 증명의 지속성을 지원합니다.
Application Server 제품은 다양한 방식으로 제공됩니다. 다음 표에서는 다양한 전달 메커니즘에 대해 제공되는 제품을 식별합니다.
Application Server 제품 릴리스 |
전달 메커니즘 |
---|---|
Sun Java Enterprise System 내 Application Server Enterprise Edition 구성 요소 |
파일 기반 배포 Sunsolve를 통해 패치를 설치해야 함 |
Application Server 표준 및 Enterprise Edition 독립 실행형 제품 |
파일 기반 및 패키지 기반 배포 |
Sun Java System Application Server Enterprise Edition의 다음 주요 릴리스에서 다음 비호환성 문제가 발생합니다.
HTTP 서비스에서는 성능을 향상하기 위해 계속해서 DNS 캐시를 사용하지만 DNS 캐시에 대한 모니터링은 지원되지 않습니다.
HTTP 파일 캐싱에 대한 지원이 개정되어 구성과 모니터링이 변경됩니다.
액세스 로그 회전 접미어의 형식은 http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html에 지정된 대로 날짜 및 시간 객체에서 지원하는 형식으로 변경됩니다. 이 릴리스에서 기본값 “%YYYY;%MM;%DD;-%hh;h%mm;m%ss;s”는 계속 지원되지만 다른 변형은 지원되지 않습니다.
더 이상 지원되지 않는 domain.xml 요소, 속성 및 특성은 서버 로그에 경고로 표시되고 업그레이드 로그 파일에는 생략됩니다.
server.http-service.dns 노드는 더 이상 모니터링 뷰에서 사용할 수 없습니다.
server.http-service.file-cache 노드에서 일부 속성이 제거될 수 있습니다. 결과적으로 이런 노드에서 제거된 속성을 액세스하려고 하는 asadmin 모니터링 명령은 실패합니다.
Deploytool은 더 이상 사용할 수 없습니다. 동일한 기능이 NetBeans IDE에 있습니다. 자세한 내용 및 마이그레이션 계획은 http://www.netbeans.org/files/documents/4/442/J2EE-NBTutorial.pdf에서 NetBeans 4.1용 J2EE 1.4 자습서를 참조하십시오.
(verifier -u로 호출된) 검증자 GUI 모드는 더 이상 사용할 수 없습니다. 동일한 기능이 NetBeans IDE에 있습니다.
검증자 도구를 사용할 때 응용 프로그램 검증의 기본 모드는 "J2EE 규칙 검증"에서 "J2EE 규칙 및 Sun Application Server 구성 규칙 검증"으로 변경됩니다.즉, 기본적으로 검증자는 응용 프로그램이 J2EE 규칙을 충족하고 Sun Application Server에서 실행되도록 구성되었는지 여부를 테스트합니다. 검증자 명령은 J2EE 규칙에 대해서만 응용 프로그램을 테스트하는 명령줄 스위치를 가지고 있습니다.
현재 릴리스에서 domain.xml(응용 프로그램 서버 구성 파일)의 classpath-prefix , server-classpath, classpath-suffix 등의 속성에 추가된 JAR 및 디렉토리 항목은 JVM 시스템 클래스 경로에서 사용할 수 있습니다. 이 동작에 따라 응용 프로그램은 java.lang.ClassLoader 클래스에서 다음 방법을 사용하여 JVM 시스템 클래스 경로에서 클래스나 다른 자원에 액세스할 수 있습니다.
getSystemClassLoader()
getSystemResource()
getSystemResourceAsStream()
getSystemResources
다음 주요 릴리스에서 classpath-prefix, server-classpath, classpath-suffix 등에 추가된 JAR 및 디렉토리 항목은 더 이상 JVM 시스템 클래스 경로에서 사용할 수 없습니다. 응용 프로그램에서 위의 방법 중 하나를 사용할 경우에는 해당 자원이 시스템 클래스 경로에서 사용 가능하다는 조건이 필요 없는 해당 방법을 사용하는 것이 좋습니다. JVM 시스템 클래스 경로에 영향을 받지 않는 해당 방법은 java.lang.ClassLoader에서 사용할 수 있으며 가능한 경우 다음과 같이 사용해야 합니다.
java.net.URL url = ClassLoader.getSystemResource ("com/acme/tools/tools.properties");
java.net.URL url = this.getClass().getClassLoader().getResource ("com/acme/tools/tools.properties");
코드를 변경할 수 없다면 다음 릴리스에 추가될 새 구성 옵션을 선택적으로 사용하여 JVM 시스템 클래스 경로를 설정할 수 있습니다.
웹 서비스 보안은 wss-client-config.xml과 wss-server-config.xml 파일을 사용하여 구성할 수 있습니다. 이러한 구성 파일의 내용과 이름은 불안정하여 변경되기 쉽습니다. 동일한 기능을 계속 사용할 수 있습니다.
Sun Java System Application Server Enterprise Edition 8.1 2005Q2는 J2EE 1.4 플랫폼을 지원합니다. 다음 표에서는 J2EE 1.4 플랫폼에서 사용할 수 있는 향상된 API에 대해 설명합니다.
표 2–5 J2EE 1.4 플랫폼에서 사용할 수 있는 API
API |
설명 |
구성 요소 |
|
응용 프로그램 및 응용 프로그램 클라이언트 |
XML 스키마를 사용한 표준 배포 설명자 구현 |
Enterprise JavaBeans(EJB) 2.1 |
타이머 서비스 및 EJB 웹 서비스 종점 |
Java 서블릿 2.4 |
웹 서비스 종점 필터 |
JavaServer Pages(JSP) 2.0 구조 |
표현식 언어 및 태그 라이브러리 |
J2EE Connector Architecture 1.5 |
인바운드 자원 어댑터 및 Java Message Service(JMS) 플러그 가능성 |
웹 서비스 |
|
Java Web Services Developer Pack 1.5 |
XML 응용 프로그램, 웹 서비스 및 웹 응용 프로그램의 구축, 테스트 및 배포를 위한 통합 툴킷 |
Java API for XML-based Remote Procedure Calls(JAX-RPC) 1.1 |
WSDL과 Java 기술에 대한 매핑과 웹 서비스 클라이언트 및 종점의 배포 지원 |
WS-I Basic Profile 1.0 |
WSDL 및 SOAP를 사용한 상호 운용성 활성화 요소 |
SOAP with attachment API for Java(SAAJ) 1.2 |
SOAP 기반 메시징을 위한 API. 첨부 파일이 있는 SOAP 메시지 작성 조장 |
Java APIs for XML Registries (JAXR) 1.0 |
Universal Description Discovery and Integration(UDDI 및 ebXML)을 위한 것과 같은 XML 레지스트리 액세스를 위한 표준 API |
기타 |
|
J2EE Deployment 1.1 |
J2EE 구성 요소 및 응용 프로그램의 배포를 가능하게 하는 표준 API |
J2EE Management 1.0 |
J2EE 플랫폼 관리를 위한 정보 모델의 정의 |
Java Management Extensions(JMX) 1.2 |
표준 관리 API |
Java Authorization Contract for Containers(JACC) 1.0 |
J2EE Application Server와 인증 정책 공급자 간의 보안 계약 정의 |
Java API for XML Processing(JAXP) 1.2 |
응용 프로그램에서 XML 문서를 구문 분석하고 변환할 수 있으며 또한 XML 스키마 처리에 대한 지원을 추가하는 API |
JMS 1.1 |
J2EE 응용 프로그램 구성 요소에서 메시지를 작성하여 보내고 받으며 읽을 수 있도록 하며 대기열 및 항목을 위한 일관된 API 지원을 추가하는 메시지 표준 |
JavaMail 1.3 |
메일 시스템을 모델화하는 일련의 추상 클래스. API에 대한 사소한 업데이트 포함 |
Application Server에는 고성능 EJB 컨테이너, 웹 컨테이너 및 서비스가 포함되어 있으며 Sun Java System Message Queue 소프트웨어와의 동시 메시지 전달을 지원합니다.
Application Server는 서버 인스턴스 클러스터링과 요청 로드 균형 조정을 통한 수평 확장성을 지원합니다. 또한 대형 다중 프로세서 시스템을 지원하는 수직적 확장성도 제공합니다. 메시지 브로커를 클러스터링하면 보다 나은 확장성과 가용성을 얻을 수 있습니다. HTTP 클라이언트, RMI/IIOP 기반 Rich Client Application, 웹 서비스 클라이언트 및 JRM 클라이언트로부터의 클라이언트 액세스 로드를 Application Server 클러스터에 대해 균형있게 조정할 수 있습니다.
Sun Java System Application Server Enterprise Edition 8.1은 JavaServer Faces 1.1 기술을 지원합니다. JavaServer Faces 기술은 상태, 이벤트, 처리 및 입력 검증을 관리하는 사용자 인터페이스 구성 요소를 나타내는 일련의 서버측 API로 구성됩니다. API는 또한 페이지 탐색을 정의하고 국제화와 내게 필요한 옵션 기능을 지원합니다. 사용자 정의 UI 구성 요소를 JSP 사용자 정의 태그 라이브러리와 함께 추가할 수 있습니다.
JavaServer Faces 기술을 개발하는 동안 개발 팀의 각 구성원은 프로세스의 한 부분에 집중할 수 있습니다. 그 후 간단한 프로그래밍 모델로 각 부분들을 연결하면 개발 주기가 훨씬 효율적이고 간단해집니다.