...
타깃에 복제된 파일들은 소스로부터 수신하는 미러링 데이터 이외의 다른 쓰기 I/O 로 부터 보호되어야 합니다. 그렇지 않을 경우 않으면 복제 사본을 유지하기 위한 데이터 일관성이 훼손됩니다보장되지 않습니다. 특히 HA를 운영하는 경우 Secondary의 파일 잠금은 항상 활성화 시켜서 데이터를 보호할 수 있어야 합니다.
파일잠금은 리소스의 역할에 따라 Secondary에서 활성화 되고 Primary에서 비활성화 되어 통상 타깃 파일보호 기능으로서 제공됩니다동작합니다.
파일잠금은 리소스의 nodes 섹션내의 섹션내의 auto_file_lock 옵션을 통해 설정할 수 있으며 리소스의 역할에 따라 자동으로 설정되게 하거나 fsradm lock 또는 unlock 명령을 통해 수동으로 활성화하거나 비활성화 할 수 있습니다.
파일잠금 절체
...
자동 잠금
auto_file_lock 옵션은 기본 활성화되어 있습니다. 리소스의 역할이 강등된다면 파일들은 기본적으로 잠겨진 상태가 됩니다. 잠겨진 파일들을 해제하려면 리소스의 역할을 승격하거나 unlock 명령을 통해 잠금을 해제해야 합니다.
잠금은 자동이지만 해제는 자동이 아닙니다.
수동 잠금
auto_file_lock 옵션을 비활성화 하고 파일잠금을 수동으로 운영할 수도 있습니다. 파일잠금을 수동으로 운영하려면 다음과 같이 잠금명령과 강등명령을 개별적으로 수행하고 명령 순서를 지켜야 합니다.
Code Block |
---|
c:\>fsradm lock r0 done c:\>fsradm secondary r0 done |
-l 옵션을 명시할 경우 위의 두 명령을 하나의 강등명령으로 처리할 수도 있습니다. 명령의 순서는 위와 동일하게 락을 먼저 걸고 강등합니다.
Code Block |
---|
c:\>fsradm secondary -l r0
done |
이와 반대로 승격 과정에선 fsradm primary 명령 이후 잠금을 해제 합니다.
Code Block |
---|
c:\>fsradm primary r0
done
c:\>fsradm unlock r0
done |
-u 옵션을 사용하면 하나의 승격명령에서 처리할 수 있습니다.
Code Block |
---|
c:\>fsradm primary -u r0
done |
Info |
---|
파일 잠금이 활성화 되면 해당 복제 파일 셋에 대한 쓰기 I/O가 차단 되므로 관련된 애플리케이션 및 서비스들을 모두 종료하여 해당 파일로 I/O 가 더이상 발생하지 않게 한 후 잠금이 수행되도록 해야 합니다. 이렇게 하지 않으면 I/O 가 발생하는 도중 쓰기가 차단되어 I/O 에러가 유발되거나 애플리케이션이 가지고 있는 캐쉬 영역에 대한 Flush 가 실패되어 중요한 데이터의 기록이 누락될 수 있습니다. 절체 시에는 반드시 애플리케이션이 완전히 종료된 후 파일잠금이 수행되도록 보장해야 합니다. |
...