SQL 서버는 일반적으로 매우 낮은 가용성을 보이는 초보 개발자나 낮은 비용 대신에 저 가용성을 감수하는 서버로 인식되는 경우가 많다. 물론, 많이 개선되긴 했지만, 개선된 성능에 비해서 고객들의 인식은 여전히 멀다.
그도 그럴 것이 SQL 은 2000 버젼이 나오기 전에는 기본적으로 HA Failover 라는 것이 존재하지도 않던 저급 DB 였음은 사실이다. 이를 그나마 S/W 적으로 구현한 가용성 강화 대책이 Log shipping 이다.
역설적으로 log shipping 은 10년이 훨씬 지난 기술이며, MS 의 SQL 이중화 기술 중에 가장 오래되고 안정화된 기술중의 하나다.
-정의
Log shipping 은 단순히 말해 원본 서버의 로그를 시간 간격으로 백업한 후, 복제 서버로 전송하여 시간 간격으로 복원하는 작업을 자동화 한 것을 의미한다.
-기능
원본 서버에 장애가 발생사는 경우 log shipping 복제 대상 서버를 온라인 시켜서 서비스를 진행할 수 있다.
과도한 read 가 발생하는 분석 작업의 경우 복제 서버에서 수행하므로서 원본 서버의 성능 저하를 예방하고 업무 로드는 분산할 수 있다.
- 한계
원본 서버의 장애 발생시 복제 서버를 online 상태로 변경하여도 서버를 참조하는 DB Client 들은 자동 이동이 불가능하므로 서버의 IP 또는 이름 등 네트워크로 접근하는 표시를 변경하여야 한다.
자동으로 복제되기는 하지만, 시간의 차이가 발생한다. 최소 시간 간격은 1분 이하이여 그 이하고 줄이는 방법도 있으나 권고 되지는 않는다. 즉, 경우에 따라 중요 Data 의 손실이 발생하며, 실시간 Data 의 중요도가 높은 경우라면 사용하기 힘들다.
-구현
딱히 힘든 부분은 없다. 특히나 SQL 2005 부터는 Management studio 의 통합 메뉴로 모든 부분이 따라 하기 형식으로 동작할 수 있다. 몇가지 중요하게 신경 써야 할 부분은 아래와 같다.
1. N/W
원본과 복제 대상 간의 파일 공유 및 SQL 접근이 원활해야 한다. SQL 은 그렇다 쳐도 파일 공유를 왜 해야 하는지 의문을 가질 수 있다. 백업 파일의 전송이 SQL 서버간의 파일 공유로 이루어 진다. 보안이 걱정이 되더라도 방법이 없다.
2. AD
기본 요구 사항이야 AD 가 없지만, 완전하게 기능을 다 쓰면서 우회하지 않기 위해서는 AD 가 필요하다. 물론 우회할 수도 있지만...
AD 가 없을 때는 초기 복제 대상 머신에 DB 를 원본 백업본을 이용해 복구한 다음에 복제를 설정하여야 한다.
별것 아닌 것 같지만, AD 가 없으면.. 불가능하다.. 꼭..꼭... AD 가 없으면 복원 부터 수행해 두어야 한다....
'IT Professional' 카테고리의 다른 글
fail to start remote server please check task scheduler service. (0) | 2010.03.24 |
---|---|
말도 많고 탈도 많은 Hyper-v : 그 두번째 이야기 (0) | 2010.03.11 |
윈도우 자동 업데이트 사용시 문제점 (0) | 2010.03.02 |
Hyper-V 에 Linux 깔기 (0) | 2010.01.24 |
'RequireKerberos' to value '1' for resource ' (0) | 2010.01.12 |