Sun Java System Communications Express 6.3 관리 설명서

Address Book Server의 수평 확장성 지원

Sun Java System Communications Express 이전 릴리스에서는 특정 도메인의 개인 주소록 항목이 db_config.properties 파일에 정의된 defaultserver 인스턴스로 표시되는 단일 LDAP 위치에 저장되었습니다. db_config.properties 파일은 도메인의 personalstore.properties에 지정된 디렉토리에 있습니다. 예를 들면 uwc-install/WEB-INF/config/ldappstore와 같은 위치입니다.

이러한 설치는 개인 주소록별로 많은 수의 사용자와 연락처를 지원하도록 확장할 수 없었습니다. 이러한 제한을 해결하기 위해 Communications Express 6.3의 psRoot 속성에서는 관리자가 다른 사용자의 PAB 데이터를 다른 LDAP 위치로 분산시킬 수 있게 합니다.

예를 들면 ldap://mydir.com:389/piPStoreOwner=jsmith,o=siroe.com,o=PiServerDb와 같습니다.

그림 3–1에서는 Address Book Server를 수평으로 확장하는 데 사용되는 구조에 대한 상위 수준 개요를 제공합니다.

다음은 주소록 수평 확장성 구조의 주요 구성 요소입니다.

개인 저장소에는 사용자의 주소록 정보를 저장합니다. 또한, 사용자가 만든 모든 주소록의 정의와 해당 주소록의 모든 항목이 포함되어 있습니다. 개인 주소록은 URL로 표시되며 그 URL은 개인 주소록이 위치한 디렉토리의 인스턴스와 해당 디렉토리 인스턴스에 있는 DN을 설명합니다.

DB(DataBase)에는 그림 3–1에 표시된 것과 같은 개인 저장소가 표시되어 있습니다. 주소록에서는 어떠한 개수의 DB에나 액세스할 수 있습니다. 모든 DB는 해당 DB의 연결 매개 변수를 정의하는 DB 아이디로 정의됩니다. 다른 유형의 DB는 다른 DB 위치를 가리킵니다.

DBMap은 유형이 동일한 DB의 모음입니다. 각 DBMap에는 해당 DBMap에 대한 구성 정보를 참조하는 아이디가 있습니다.

그림 3–1 주소록의 수평 확장성

주소록의 수평 확장성을 보여 주는 그림

psRoot는 사용자의 LDAP에서 호스트, 디렉토리 인스턴스의 포트, 사용자의 주소록 항목이 저장되는 DN을 지정하는 속성입니다. psRootldap://ldap_host:ldap_port/DN 형식으로 사용됩니다.

psRoot 속성 값에 따라 DB 유형과 DB 위치가 결정됩니다.

다음 psRoot 예에서, ldap://mydir.com:389/piPStoreOwner=jsmith,o=siroe.com,o=PiServerDb

ldap://는 사용자의 주소록 개인 저장소가 LDAP DB 플러그 인을 통해 액세스되는 것을 나타냅니다.

mydir.com:389는 LDAP 호스트와 포트를 지정합니다.

piPStoreOwner=jsmith,o=siroe.com,o=PiServerDb는 개인 저장소의 DN을 지정합니다.


주 –

Address Book Server는 확장성 정책별로 사용자의 psRoot 값 배포를 위한 유틸리티를 제공하지 않습니다. 따라서 관리자는 조직에 가장 알맞은 특정 정책을 설정하고 사용자 정의 스크립트를 사용하여 정책에 대한 psRoot 값을 설정해야 합니다.


psRoot 속성은 도메인별 personalstore.properties 파일에 있는 db.UserPsRoot 매개 변수를 사용하여 설정하거나 해제할 수 있습니다. db_config.properties 파일의 defaultserver 매개 변수를 사용하려면 이 매개 변수를 "false"로 설정합니다. 사용자의 psRoot 값을 사용하려면 매개 변수를 "true"로 설정합니다. db_config.properties 파일에서 Address Book 개인 저장소 매개 변수 구성에 나열된 개인 저장소 매개 변수를 psRoot에 사용된 각 Directory Server 인스턴스에 제공해야 합니다. 런타임에 db-key.ldaphost db-key.ldapport를 사용하여 디렉토리 인스턴스에 대한 psRoot 속성 값을 확인합니다. 여기서 db-key는 인스턴스를 다른 인스턴스와 구별하는 임의의 문자열 값입니다. db-key.ldaphostdb-key.ldapport와 일치하는 항목이 없는 경우 defaultserver 인스턴스가 사용됩니다.

수평 확장성 지원에 필요한 추가 구성

사용자 LDAP 항목의 psRoot 속성은 사용자의 개인 주소록 항목을 저장 및 검색할 LDAP 위치를 정의하는 Address Book Server 호환 URL입니다. psRoot 속성은 관리자가 모든 사용자의 PAB 데이터를 여러 디렉토리 위치에 분산시킬 수 있게 합니다.

기존 Messenger Express 사용자의 경우 PAB 마이그레이션을 활성화하면 기존 pabURI 속성을 사용하여 psRoot 속성이 구성되고 매핑 테이블이 uwc-deploy-dir/WEB-INF/config/migrate.properties에 정의됩니다.

migrate.properties 파일의 조회 테이블은 다음 형식의 pabhostpabport 항목으로 구성됩니다.

pabhost.pabport.abhostport = abldaphost:abldapport

여기서 pabhost.pabport는 소스 디렉토리 인스턴스를 나타내고 abldaphostabldaport 는 PAB 데이터를 마이그레이션해야 하는 대상 디렉토리 인스턴스를 나타냅니다.

예를 들어 pab.example.com:389에서 실행되는 디렉토리로부터 abs.example.com:389에서 실행되는 주소록 디렉토리로 PAB 데이터를 마이그레이션하는 경우 migrate.properties 파일에는 다음과 같은 항목이 있어야 합니다.

pab.example.com.389.abhostport = abs.example.com:389

migrate.properties 파일에서 필요한 만큼의 조회를 찾을 수 있습니다. 사용자의 pabURI 속성이 pabhostpabport를 사용하는 경우 기본 psRoot 패턴을 사용하여 구성되는 psRoot의 형식은 다음과 같습니다.

ldap://abldaphost:abldapport/piPStoreOwner=%U,o=%D,o=PiServerDb

pabURI 값에 대한 조회가 정의되어 있지 않은 경우, 즉 매핑 테이블에 pabURI과 일치하는 항목이 없는 경우 pabhostpabport 값이 abldaphostabport의 기본값으로 사용됩니다. 매핑 테이블이 없는 경우 Messaging Server의 PAB 항목이 각 주소록 스키마와 동일한 디렉토리 인스턴스의 다른 루트에 마이그레이션된다는 것을 의미합니다. 이 시나리오에서 대상 디렉토리 인스턴스는 소스 디렉토리 인스턴스와 같습니다.


주 –

조회 테이블은 패치 설치 프로그램에서 자동으로 정의되지 않습니다. 패치를 설치한 후 조회 테이블을 직접 정의한 다음 웹 서버를 다시 시작해야 합니다.

abldaphost:abldapport 디렉토리 서버 인스턴스는 해당 도메인의 personalstore.properties에 지정된 db_config.properties 파일에 정의해야 합니다.


자동으로 psRoot 값 설정

새 사용자가 로그인하면 사용자 항목의 psRoot 속성에 대한 기본값이 설정됩니다.

새 사용자에 대한 psRoot 값은 personalstore.properties 파일에 정의된 psRoot 패턴과 db_config.properties 파일에 있는 defaultserverhostdefaultserverPort 값을 사용하여 구성됩니다. 예를 들어 기본 psRoot 패턴을 사용하는 기본 psRoot 값은 다음과 같은 형식입니다.

ldap://default-server-host:default-server-port/piPStoreOwner=%U,o=%D,o=PiServerDb

여기서

사용자의 %U = login ID입니다. 예를 들면 jsmith와 같습니다.

사용자의 %D = domain입니다. 예를 들면 siroe.com과 같습니다.