6.2. 명령줄을 사용하여 기존 서버를 허브 서버의 공급자로 구성
공급업체로 기존 서버를 준비하려면 다음을 수행해야 합니다.
- 접미사 복제를 활성화합니다.
- 허브에 대한 복제 계약을 생성합니다.
- 허브를 초기화합니다.
복제 토폴로지의 기존 공급자에서 이 절차를 수행합니다.
사전 요구 사항
-
결합할 허브에서
dc=example,dc=com접미사에 대한 복제를 활성화했습니다.
프로세스
dc=example,dc=com접미사의 복제를 활성화합니다.# dsconf <supplier_instance_name> replication enable --suffix "dc=example,dc=com" --role "supplier" --replica-id 1이 명령은 provider
.example.com호스트를dc=example,dc=com접미사로 구성하고 이 항목의 복제본 ID를1로 설정합니다.중요복제본 ID는 토폴로지의 모든 공급 업체의 접미사에 대해
1에서65534사이의 고유한 정수여야 합니다.복제 계약을 추가하고 새 서버를 초기화합니다.
# dsconf <supplier_instance_name> repl-agmt create --suffix "dc=example,dc=com" --host "hub.example.com" --port 389 --conn-protocol LDAP --bind-dn "cn=replication manager,cn=config" --bind-passwd "password" --bind-method SIMPLE --init example-agreement-supplier-to-hub이 명령은
example-agreement-supplier-to-hub라는 복제 계약을 생성합니다. 복제 계약은 공급자가 데이터를 허브에 연결하고 복제할 때 사용하는 허브의 호스트 이름, 프로토콜 및 인증 정보와 같은 설정을 정의합니다.계약이 생성되면 Directory Server는
hub.example.com을 초기화합니다. 복제할 데이터 양에 따라 초기화 시간이 오래 걸릴 수 있습니다.
검증
복제 구성을 표시합니다.
# dsconf <supplier_instance_name> replication get --suffix "dc=example,dc=com" dn: cn=replica,cn=dc\3Dexample\2Cdc\3Dcom,cn=mapping tree,cn=config ... nsDS5ReplicaRoot: dc=example,dc=com nsDS5ReplicaType: 3 ...이러한 매개변수는 다음을 나타냅니다.
-
nsDS5ReplicaRoot는 복제되는 접미사를 설정합니다. -
nsDS5ReplicaType을3으로 설정하면 이 호스트가 공급자임을 정의합니다.
-
초기화에 성공했는지 확인합니다.
# dsconf <supplier_instance_name> repl-agmt init-status --suffix "dc=example,dc=com" example-agreement-supplier-to-hub Agreement successfully initialized.복제 상태를 표시합니다.
# dsconf <supplier_instance_name> repl-agmt status --suffix "dc=example,dc=com" example-agreement-supplier-to-hub Status For Agreement: "example-agreement-supplier-to-hub" (hub.example.com:389) Replica Enabled: on Update In Progress: FALSE Last Update Start: 20210331105030Z Last Update End: 20210331105030Z Number Of Changes Sent: 0 Number Of Changes Skipped: None Last Update Status: Error (0) Replica acquired successfully: Incremental update succeeded Last Init Start: 20210331105026Z Last Init End: 20210331105029Z Last Init Status: Error (0) Total update succeeded Reap Active: 0 Replication Status: Not in Synchronization: supplier (Unknown) consumer (Unknown) State (green) Reason (error (0) replica acquired successfully: incremental update succeeded) Replication Lag Time: Unavailable복제 상태및마지막 업데이트 상태필드를 확인합니다.
문제 해결
기본적으로 서버의 모든 계약에 대한 복제 유휴 시간 제한은 1시간입니다. 시간 초과로 인해 대규모 데이터베이스 초기화가 실패하는 경우
nsslapd-idletimeout매개변수를 더 높은 값으로 설정합니다. 예를 들어 매개변수를7200(2시간)으로 설정하려면 다음을 입력합니다.# dsconf <supplier_instance_name> config replace nsslapd-idletimeout=7200무제한 기간을 설정하려면
nsslapd-idletimeout을0으로 설정합니다.