Communications Server는 대규모 작업 환경에서 웹, SIP 및 수렴형 응용 프로그램과 Java 기술 기반 웹 서비스를 개발 및 배포하는 데 사용되는 Java EE 5 플랫폼 호환 서버입니다.
이 장은 다음 내용으로 구성되어 있습니다.
Communications Server는 Sun GlassFish Enterprise Server에서 제공되는 모든 기능을 지원하는 동시에 여기 나열된 여러 가지 새로운 기능을 제공합니다. Sun GlassFish Enterprise Server의 기능 목록은 Sun GlassFish Enterprise Server 릴리스 노트를 참조하십시오.
JSR 289와 호환 — Communications Server에는 RFC 3261, 3262, 3265, 3311, 3515, 3903 등과 호환되는 SIP 스택이 들어 있으며, 또한 JSR 289에서 정의한 SIP 서블릿 Java API도 나타냅니다.
업그레이드 — Communications Server는 Communications Server 1.5에서 Communications Server 2.0으로의 업그레이드를 지원합니다.
수렴형 SIP 및 HTTP 세션 — Communications Server는 JSR 289에서 정의한 수렴형 HTTP 및 SIP 세션 기능을 지원합니다.
DCR 플러그인 지원 — Communications Server는 Java 클래스의 형식으로 플러그인을 사용하는 DCR(데이터 중심 규칙)의 구성을 지원합니다.
오버로드 보호 — Communications Server는 CPU 기반 및 메모리 기반의 오버로드 보호를 지원합니다.
SIP 세션 복제 — Communications Server는 SIP 세션의 믿을 수 있는 페일오버를 제공합니다.
롤링 업그레이드 — Communications Server는 서비스 및 세션 손실을 최소화하면서 응용 프로그램 또는 서버의 업그레이드를 지원합니다.
멀티홈 지원 — Communications Server는 둘 이상의 서로 다른 서브넷에서 SIP 통신을 지원하고 동일한 서브넷 내에서 중복 네트워크 연결을 제공합니다. Communications Server는 여러 NIC가 있는 환경에서 사용할 수 있습니다.
통합 SIP 서블릿 컨테이너 — SIP 서블릿 컨테이너는 다음 기능을 제공합니다.
SIP 요청을 수신하는 네트워크 종단점을 제공합니다.
SIP 서블릿의 라이프사이클을 호스트 및 관리하는 환경을 제공합니다.
SIP 서블릿 컨테이너는 웹 컨테이너와 함께 작동하여 SSA(SIP 서블릿 API) 사양에 정의된 수렴형 응용 프로그램에 대한 지원을 제공합니다.
간편한 관리 — Communications Server를 사용하면 CLI 및 GUI를 사용하여 SIP 컨테이너와 배포된 SIP 응용 프로그램을 쉽게 관리할 수 있습니다.
보안— HTTP 및 SIP 프로토콜 모두에 대해 다이제스트 인증이 지원됩니다. SIP 프로토콜에 대해 P-Asserted-Identity가 지원됩니다. SIP 컨테이너는 SIPS over TLS를 지원합니다.
수렴형 로드 밸런서 — CLB(수렴형 로드 밸런서)는 서버 인스턴스 클러스터에서 응용 프로그램 요청을 배포하여 수렴형 응용 프로그램의 고가용성을 촉진시키는 소프트웨어 로드 균형 조정 구성 요소입니다. CLB는 다음 기능을 제공합니다.
SIP(S) 및 HTTP(S) 요청을 서버 인스턴스 클러스터로 전달합니다.
일관된 해싱/라운드 로빈 정책을 사용하여 요청을 로드 균형 조정합니다.
클러스터의 서버 인스턴스를 활성화 및 비활성화합니다.
서버 인스턴스의 상태를 모니터링합니다.
SIP 및 수렴형 응용 프로그램 배포 지원 — Communications Server는 GlassFish의 확장 모듈 메커니즘을 사용하여 순수 SIP 응용 프로그램 및 수렴형 응용 프로그램의 배포를 지원합니다. 또한 SIP 응용 프로그램에 대한 Sun 특정 배포 설명자로 sun-sip.xml을 지원합니다.
NetBeans 툴링 — Communications Server는 NetBeans 6.0 위에 JSR 289에 기반한 SIP 서블릿 응용 프로그램을 지원합니다. SIP 서블릿을 테스트하는 테스트 에이전트를 사용하여 간단한 SIP 클라이언트를 만들 수 있습니다. 이 플러그인은 as-install-dir/lib/tools 아래에 있습니다.
응용 프로그램 라우터 배포 — Communications Server는 확장 모듈 메커니즘을 사용하여 응용 프로그램 라우터 아카이브(JAR 파일)의 핫 배포를 지원합니다. 요청을 라우팅하기 위해 간단한 알파벳 규칙을 따르는 응용 프로그램 라우터가 기본적으로 제공됩니다.
패키징 및 파일 레이아웃 — Communications Server는 파일 기반으로 설치 가능하게 제공됩니다.
Sun Connection에 등록 - 설치 프로그램, 관리 콘솔 GUI나 업데이트 센터를 사용하여 Sun Connection에서 제품을 등록할 수 있습니다. Communications Server를 Sun Connection에 등록하면 다음과 같은 이점이 제공됩니다.
패치 정보 및 버그 업데이트
스크린캐스트 및 자습서
뉴스 및 이벤트
지원 및 교육 오퍼링
SuSe Linux 64비트 지원
Java EE 5 플랫폼 지원 — Sun GlassFish Communications Server에서는 차세대 엔터프라이즈 응용 프로그램 및 웹 서비스를 위한 최고의 응용 프로그램 런타임 중 하나를 제공하는 Java EE 5 사양을 구현합니다. Communications Server에서는 다음과 같은 Java EE 표준을 구현합니다.
Enterprise Java Beans 3.0
JAXB 2.0
Java Persistence
Java Server Faces 1.2
Java Server Pages 2.1(JSP 2.1)
Java Server Pages Standard Tag Library(JSTL) 1.2
Streaming API for XML(StAX)
Web Services Metadata
Java API for XML based Web Services 2.0(JAX-WS 2.0)
Common Annotations for the Java Platform 1.0(CAJ 1.0)
Java Servlet 2.5
Java EE 5 플랫폼 기술에 대한 전체 목록은 이 노트의 뒷부분에 제공됩니다.
WSIT(Web Services Interoperability Technologies) 지원 – Sun은 메시지 최적화, 안정적인 메시징 및 보안과 같은 웹 서비스 엔터프라이즈 기술의 상호 운용성을 위해 Microsoft와 긴밀하게 협력하고 있습니다. WSIT 초기 릴리스는 이러한 공동 노력의 결과입니다. WSIT는 엔터프라이즈 기능을 지원하기 위해 다양한 오픈 웹 서비스 사양을 구현한 것입니다. WSIT에는 메시지 최적화, 안정적인 메시징 및 보안 외에도 부트스트랩 및 구성 기술이 포함되어 있습니다. WSIT는 Java 플랫폼에 현재 구축되어 있는 코어 XML 지원을 포함하여 기존 기능을 사용 또는 확장하고 추가적으로 다음과 같이 상호 운용 가능한 웹 서비스를 새로 지원합니다.
부트스트랩 및 구성
메시지 최적화 기술
안정적인 메시징 기술
보안 기술
JBI 지원 – JBI에서는 비즈니스 통합 SPI(서비스 공급자 인터페이스)로 Java EE를 확장합니다. 개발자는 이러한 SPI를 사용하여 WSCI, BPEL4WS, W3C Choreography Working Group 등의 사양을 위한 JBI 환경을 만들거나 구현할 수 있습니다. JBI 구현은 Communications Server 설치 프로그램에서 대개 as-install/jbi 디렉토리에 직접 설치합니다. 이 디렉토리에는 Communications Server JVM에서 JBI 프레임워크를 시작하는 lifecycle 모듈을 포함한 JBI용 시스템 구성 요소와 모든 일반 JAR 파일이 포함됩니다.
사용 프로필 – 모든 관리 도메인은 해당 도메인의 기능을 식별하는 사용 프로필과 연관됩니다. Communications Server에서는 다음 프로필을 제공합니다.
개발자 – 개발 환경에서 도메인을 실행하며 응용 프로그램에 로드 균형 조정, 고가용성 및 세션 복제 등의 클러스터링 기능이 필요하지 않은 경우에 이 프로필을 사용합니다. 프로필의 실제 이름은 "developer"입니다(대소문자 구분).
클러스터 – 배포된 Java EE 응용 프로그램에 확장성과 고가용성을 제공하는 응용 프로그램 서버 인스턴스의 클러스터를 만들려는 경우 이 프로필을 사용합니다. 응용 프로그램의 상태는 메모리 내장(in-memory)으로 지속됩니다. 프로필의 실제 이름은 "cluster"입니다(대소문자 구분).
오픈 소스 및 SailFin 커뮤니티 — SailFin 커뮤니티는 Java EE 5 플랫폼 및 관련 엔터프라이즈 기술의 최신 기능을 구현하는 상용급 무료 오픈 소스 통신 서버를 개발하는 데 목적을 둡니다.
업데이트 센터 지원 – Communications Server 업데이트 센터에서는 자동화된 Communications Server 업데이트와 추가 구성 요소에 대한 간편 액세스 기능을 지원합니다.
이 절에서는 Sun GlassFish Communications Server를 설치하기 전에 충족해야 할 요구 사항에 대해 설명합니다.
다음 표에서는 Sun GlassFish Communications Server와 호환되는 운영 체제에 대해 설명합니다.
표 2–1 지원되는 운영 체제
운영 체제 |
최소 메모리 |
권장 메모리 |
최소 디스크 공간 |
필요 하드 디스크 공간 |
JVM |
배포 유형 |
---|---|---|---|---|---|---|
Sun Solaris 10 (x86)(32비트 및 64비트) |
512MB |
512MB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
프로덕션 |
Sun Solaris 10 (SPARC)(32비트 및 64비트) |
512MB |
512MB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
프로덕션 |
Red Hat Enterprise Linux 3.0 업데이트 1, 4.0 및 5.x(32비트 및 64비트) |
512MB |
1GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
프로덕션 |
SUSE Linux Enterprise Server 10(32비트 및 64비트) (SP1 및 SP2도 지원됨) |
512MB |
1GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
프로덕션 |
Windows XP Windows Vista Windows 2008 |
1GB |
2GB |
500MB의 여유 공간 |
1GB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
개발 |
Windows 7 |
1GB |
2GB |
500MB의 여유 공간 |
1GB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
개발 |
Macintosh OS 10.4, 10.5 |
512MB |
1GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 |
개발 |
OpenSolaris 2009.06 |
512MB |
1GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
J2SE 5.0 - 32비트 Java SE 6 - 32비트 및 64비트 |
개발 |
UNIXTM에서는 uname 명령을 사용하여 운영 체제 버전을 확인할 수 있습니다. 디스크 공간은 df 명령을 사용하여 확인할 수 있습니다.
Windows 플랫폼에서 Communications Server를 실행하는 경우에는 FAT 또는 FAT32 대신 NTFS 파일 시스템을 사용하는 것이 좋습니다.
Solaris 10(x86, SPARC) 사용자는 "Sun recommended patch cluster"를 설치할 것을 권장합니다. 이 패치 클러스터는 SunSolve 웹 사이트의 "Recommended and Security Patches"에 있습니다.
Communications Server에 필요한 JDK의 최소(인증) 버전은 1.6.0_7입니다.
asenv file을 여기에 설명된 대로 편집하여 지원되는 Java SE 버전으로 전환할 수 있습니다.
시스템에 Java SE 버전이 설치되지 않은 경우 새 Java SE 버전을 설치하십시오.
Java SE SDK는 http://java.sun.com/javase에서 다운로드할 수 있습니다.
Communications Server 도메인을 중지합니다.
as-install/config/asenv.conf 파일(Windows에서는 asenv.bat)을 편집하여 AS_JAVA의 값을 새 Java 홈 디렉토리로 변경합니다.
as-install/samples/common.properties 파일을 편집하여 com.sun.aas.javaRoot...로 시작하는 행을 새 Java 홈 디렉토리를 참조하도록 변경합니다.
Communications Server를 다시 시작합니다.
SailFin JAR 설치와 함께 번들된 Ant 버전은 1.6.5입니다. 사용자 정의 응용 프로그램 라우터 응용 프로그램을 구축하려면 Ant 1.7이 필요하며, 이는 별도로 다운로드해야 합니다.
표 2–2에서는 Java EE 호환성 요구 사항에 맞는 데이터베이스 및 드라이버에 대해 설명합니다. Sun GlassFish Communications Server의 지원되는 모든 구성에는 번들로 제공되는 Java DB 데이터베이스/드라이버 조합이 적어도 하나는 포함되어 있어야 합니다. 또한 Communications Server는 추가 DBMS와 해당 JDBC 드라이버 사이의 JDBC 연결을 지원하도록 설계되어 있습니다.
표 2–2 Java EE 호환 JDBC 드라이버
JDBC 드라이버 공급업체 |
JDBC 드라이버 유형 |
지원되는 데이터베이스 서버 |
---|---|---|
Derby 네트워크 클라이언트 |
Type 4 |
Derby 10.2 |
DataDirect 3.6.x, 3.7.x |
Type 4 |
Oracle 10g Oracle 9i Sybase ASE 12.5, 15 MS SQL 2000, 2005 DB2 9.1 DB2 8.1, 8.2 |
MySQL Connector/J Driver 5.1.6 |
Type 4 |
MySQL 5.0 |
Oracle 10g, 11g |
Type 4 |
Oracle 10g, 11g -RAC |
PostGres |
Type 4 |
8.2.x |
일반적으로 Communications Server에서는 Java EE 사양에 맞는 모든 JDBC 드라이버를 지원합니다.
파일 기반 설치의 경우, Message Queue 4.4가 Communications Server와 함께 제공됩니다.
Communications Server의 일부로 포함되어 제공되는 Sun GlassFish Message Queue는 일반적으로 동일한 버전의 Message Queue 브로커에 대해서만 테스트되고 인증되었습니다. 즉, 포함되어 제공된 Message Queue 코드를 사용하여 다른 버전의 Message Queue 코드를 실행하는 원격(Communications Server에서 관리되지 않음) Message Queue 브로커에 연결할 수 없습니다.
이 절에서는 Sun GlassFish Communications Server 2.0에서 지원되는 브라우저에 대해 설명합니다.
표 2–3 지원되는 웹 브라우저
브라우저 |
버전 |
---|---|
Mozilla |
1.7.12 |
Internet Explorer |
6.0 Service Pack 2, 7.0 |
Firefox |
2.x, 3.x |
Safari |
3.x,4.x |
Netscape |
8.0.4, 8.1, 9.0, 9.0.x |
Sun GlassFish Communications Server 소프트웨어를 설치하기 전에 충족되어야 하는 추가 요구 사항은 다음과 같습니다.
사용 가능 공간: Sun GlassFish Communications Server 설치를 위해서는 임시 디렉토리에 최소 35MB의 사용 가능한 공간이 있어야 합니다.
설치 제거 프로그램 사용: Communications Server를 시스템에서 제거하려면 소프트웨어와 함께 제공된 설치 제거 프로그램을 사용하는 것이 중요합니다. 다른 방법을 사용하려고 시도한다면 동일한 버전을 다시 설치할 때 또는 새 버전을 설치할 때 문제가 발생합니다.
사용 가능 포트: 사용하지 않는 포트가 7개 있어야 합니다. 설치 프로그램에서 사용 중인 포트를 자동으로 감지하여 현재 사용하고 있지 않은 포트를 기본 도메인에 사용하도록 제안합니다. 기본적으로 초기 기본 포트는 다음과 같습니다.
HTTP의 경우 8080, HTTPS의 경우 8181
IIOP의 경우 3700, IIOP/SSL의 경우 3820, 상호 인증을 사용하는 IIOP/SSL의 경우 3920
관리 서버의 경우 4848(HTTP)
순수 JMX 클라이언트의 경우 8686(RMI) 포트
방화벽 사용 안 함(Microsoft Windows) — Sun GlassFish Communications Server 소프트웨어를 설치하기 전에 방화벽 소프트웨어를 중지해야 합니다. 일부 방화벽 소프트웨어는 기본적으로 모든 포트를 사용 불가능하게 만들기 때문입니다. 설치 프로그램에서 어떤 포트를 사용할 수 있는지 정확히 판단할 수 있어야 합니다.
Sun GlassFish Communications Server 2.0에서는 Java EE 5 플랫폼을 지원합니다. 다음 표는 Java EE 5 플랫폼에서 사용할 수 있는 향상된 API의 목록입니다.
표 2–4 Java EE 5 플랫폼의 주요 API 변경 사항
API |
JSR |
---|---|
Java EE 5 |
|
웹 서비스 기술 |
|
엔터프라이즈 웹 서비스 구현 | |
Web Service Metadata for the Java Platform | |
구성 요소 모델 기술 |
|
관리 기술 |
|
기타 Java EE 기술 |
|
Common Annotations for the Java Platform | |
업데이트 센터를 통해 자동으로 Communications Server 업데이트를 수행하고 추가 구성 요소에 간편하게 액세스할 수 있습니다.
업데이트 센터가 활성화되어 있으면 소프트웨어 업데이트를 자동으로 수행합니다. 자동 업데이트 프로세스를 진행하는 동안 업데이트 센터에서는 다음 데이터를 수집하여 Sun Microsystems(또는 해당 서비스 공급자)에게 전송합니다.
GUID(고유 설치 ID)
IP 주소
운영 체제 정보(이름, 버전, 구조, 로켈)
JDK 버전
모듈 다운로드 정보(모듈 이름, 날짜, 시간, 상태, 다운로드 시간, 다운로드된 바이트 수)
개인적으로 식별 가능한 정보는 추적되지 않습니다. 개인적으로 식별 가능한 정보가 다른 데이터와 연관되거나 보고 목적으로 사용되지 않습니다.
자동 업데이트에 대한 명시적인 동의를 얻기 위해, 업데이트 센터는 기본적으로 비활성화됩니다. 업데이트 센터를 활성화하여 정기적인 검사와 자동 업데이트를 수행하려면:
업데이트 센터를 시작합니다.
Unix의 경우: <installdir>/updatecenter/bin/updatetool
Windows의 경우: <installdir>\updatecenter\bin\updatetool.bat
기본 설정 탭을 선택합니다.
업데이트 계획 창에 있는 업데이트 확인 드롭다운 상자의 값을 안 함(수동)에서 원하는 값으로 변경합니다. 예를 들면 매일 또는 매주 등이 있습니다.
업데이트를 수행할 요일과 시간을 지정합니다.
저장 버튼을 선택하여 변경 사항을 저장합니다.
이제 업데이트 센터에서 지정한 일정에 따라 SailFin 또는 Communications Server 구성 요소 업데이트를 자동으로 검사합니다. 설치할 업데이트가 있는 경우 업데이트 센터가 시작되고 업데이트할 수 있는 구성 요소를 사용자에게 알려줍니다.
WSIT 상태에 대한 자세한 정보는 WSIT Status Notes 페이지를 참조하십시오.