6.9. RBD 미러링
last_copied_object_number
값이 모든 이미지에 대해 올바르게 업데이트됨
이전에는 구현 결함으로 인해 last_copied_object_number
값이 완전히 할당된 이미지에 대해서만 올바르게 업데이트되었습니다. 이로 인해 스파스 이미지에 대해 last_copied_object_number
값이 올바르지 않고 abrupt rbd-mirror 데몬 재시작 시 이미지 복제 진행률이 손실됩니다.
이번 수정을 통해 last_copied_object_number
값이 모든 이미지에 대해 올바르게 업데이트되고 rbd-mirror 데몬 재시작 시 이미지 복제가 이전에 중지된 위치에서 재개됩니다.
기존 일정을 사용하면 이미지를 1차로 승격할 때 적용됩니다.
이전 버전에서는 일치하지 않는 최적화로 인해 기존 일정이 이미지 승격에 따라 최근 승격된 이미지를 시작할 수 없었습니다.
이번 릴리스에서는 최적화 causing this issue is removed and the existing schedules now take effect when an image is promoted to primary and the snapshot-based mirroring process starts as expected.
스냅샷 기반 미러링 프로세스가 더 이상 취소되지 않음
이전 버전에서는 내부 경쟁 조건으로 rbd 미러 스냅샷 일정 추가
명령이 취소되었습니다. 다른 기존 일정이 적용되지 않은 경우 영향을 받는 이미지의 스냅샷 기반 미러링 프로세스가 시작되지 않습니다.
이번 릴리스에서는 경쟁 조건이 수정되고 스냅샷 기반 미러링 프로세스가 예상대로 시작됩니다.
원격 이미지가 기본이 아닌 경우 재생 또는 다시 동기화가 더 이상 시도되지 않습니다.
이전 버전에서는 구현 결함, 재생 또는 다시 동기화로 인해 원격 이미지가 기본 이미지가 아닌 경우에도 다시 시도되어 해당 이미지를 재생하거나 다시 동기화할 위치가 없었습니다. 이로 인해 스냅샷 기반 미러링이 라이브 잠금으로 실행되고 "failed to unlink local peer from remote image" 오류를 지속적으로 보고합니다.
이번 수정으로 원격 이미지가 기본이 아닌 경우 구현 결함이 수정되고 재생 또는 다시 동기화되지 않으므로 오류가 보고되지 않습니다.
보조 클러스터에서 rbd-mirror 데몬에서 사용 중인 미러 스냅샷은 제거되지 않습니다.
이전 버전에서는 내부 경쟁 조건으로 인해 보조 클러스터의 rbd-mirror 데몬에서 사용 중인 미러 스냅샷이 제거되어 영향을 받는 이미지의 스냅샷 기반 미러링 프로세스가 중지되어 "split-tekton" 오류를 보고했습니다.
이번 수정을 통해 미러 스냅샷 큐가 길이가 연장되고 미러 스냅샷 정리 절차가 적절하게 수정됩니다. 보조 클러스터에서 rbd-mirror 데몬에서 사용 중인 미러 스냅샷은 더 이상 제거되지 않으며 스냅샷 기반 미러링 프로세스가 중지되지 않습니다.
schedule_request_lock()
중에 소유자가 잠길 때 RBD 미러가 더 이상 충돌하지 않습니다.
이전에는 schedule_request_lock()
중에 이미 손상된 소유자의 경우 블록 장치 미러가 충돌하고 이미지 동기화가 중지되었습니다.
이번 수정으로 소유자가 이미 잠겼으면 schedule_request_lock()
가 정상적으로 중단되고 블록 장치 미러링이 충돌하지 않습니다.
이미지 복제가 완료되지 않은 로컬 로컬 스냅샷
오류로 인해 더 이상 중지되지 않음
이전에는 구현 결함으로 인해 abrupt rbd-mirror 데몬을 다시 시작하면 이미지 복제가 완료되지 않은 로컬 로컬 비-도스 스냅샷
오류로 중지되었습니다.
이번 수정을 통해 이미지 복제가 불완전한 로컬 비 snapshot
오류로 더 이상 중지되지 않으며 예상대로 작동합니다.