클러스터에서 복제 과정
클러스터 복제는 스케줄 수행이 아닌 이벤트 수행입니다. 클러스터 복제자가 데이터베이스에 대한 변경사항을 발견할 때마다, 클러스터의 다른 복제본에 해당 변경사항을 즉시 적용(push)합니다. 복제 이벤트의 백업 로그가 있는 경우, 다른 클러스터 서버에 적용하기 전까지 클러스터 복제자는 그 내용을 메모리에 저장합니다. 이전 변경사항을 전송하기 전에 동일한 데이터베이스가 변경되는 경우, 클러스터 복제자는 처리 시간을 절약하기 위해 이 변경사항을 모아서 같이 전송합니다.
HCLDomino®는 복제 이벤트를 메모리에만 저장하므로, 복제를 성공적으로 완료하려면 소스 및 대상 서버를 사용할 수 있어야 합니다. 대상 서버를 사용할 수 없는 경우, 클러스터 복제자는 대상 서버가 사용 가능해질 때까지 이벤트를 메모리에 계속 저장합니다. 클러스터 복제자는 주기적으로 대상 서버에 이들 복제 이벤트를 적용(push)하려고 합니다. 이런 간격은 한 시간부터 최대 하루까지 그 값이 증가됩니다.
복제가 완료되기 전에 소스 서버가 종료되면 메모리에 있는 복제 이벤트는 유실됩니다. 따라서 클러스터 서버를 재시작할 때마다 클러스터의 모든 구성원을 사용하여 즉시 복제를 강제 실행하려면 표준 복제(REPLICA 태스크)를 사용해야 합니다. 데이터베이스의 동기화 상태를 유지하려면, 하루에 몇 번과 같이 정기적으로 클러스터 서버 사이의 복제 스케줄을 설정하는 것도 좋습니다.
클러스터 복제자가 복제 이벤트를 로그 파일에 기록하면, 재시도 대기 중인 모든 복제 이벤트도 기록됩니다. 이렇게 하면 현재 동기화되지 않은 데이터베이스와 복제를 방해하는 오류를 알 수 있습니다. 오류를 수정한 후 복제가 성공적으로 완료되면, 오류 정보는 더 이상 기록되지 않습니다.
클러스터 복제자는 복제 수식의 처리를 표준 복제자에게 넘깁니다. 이런 수식은 많은 처리 성능을 사용하므로, 클러스터 복제자는 클러스터 복제 사용의 오버헤드를 최소화하기 위해 이 수식을 처리하지 않습니다. 따라서 선택적 복제를 사용하는 경우, 데이터베이스는 선택 수식과 일치하지 않는 문서를 일시적으로 포함할 수도 있습니다. Domino®는 표준 복제를 실행할 때 이 문서를 삭제합니다.
클러스터에 있는 복제 히스토리
복제 이벤트가 클러스터에서 자주 발생하므로, 클러스터 복제자는 데이터베이스를 복제할 때마다 데이터베이스의 복제 히스토리를 읽거나 기록하지 않습니다. 복제가 성공하면 히스토리 정보가 메모리에 저장됩니다. 이후의 성공적인 복제 이벤트는 모두 메모리에 저장된 히스토리 정보에 추가됩니다. 클러스터 복제자는 히스토리 정보를 한 시간에 한 번 정도 데이터베이스로 전송합니다.
클러스터에서 개인 폴더 복제
폴더 소유자의 클라이언트 복제를 제외한 표준 복제 시 개인 폴더와 그 내용은 복제되지 않습니다. 그러나 클러스터 내에서 개인 폴더는 클러스터 내의 다른 복제본에 복제됩니다. 이때 클라이언트에 장애 복구가 발생하면, 어떤 복제본에 액세스하든지 데이터베이스 내용은 항상 동일합니다. 클러스터 복제와 표준 복제는 모두 클러스터 내에 있는 개인 폴더 및 내용 복제를 지원합니다.
폴더 작성자나 클러스터에 있는 서버만 개인 폴더에 액세스할 수 있습니다. 액세스 제어 목록(ACL)에서 사용자 유형이 "서버" 또는 "서버 그룹"으로 정의된 서버만 데이터베이스의 개인 폴더에 액세스하여 복제할 수 있습니다. ACL에 명시적으로 포함되지 않은 서버는 개인 폴더를 복제할 수 없습니다.