Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
이동철입니다. 4월인데도 아직 바람이 차갑습니다. 지난 번에 Hyper-V 8에 관한 폭풍 포스팅 후에, 다시 Window Server 8에 대한 신규 기능을 소개하고자 합니다. 오늘 소개할 신규 기능은 “Scale-Out File Server” 역할입니다.
Windows Server 8 Failover Clustering의 “역할(前, Service 또는 Application)” 에 “File Server” 라는 역할이 있습니다. 즉, 이전 Failover Clustering에서 제공하는 파일 서버의 공유에 대한 high availability를 제공하는 역할이 바로 “File Server” 입니다. “File Server” 역할을 구성할 수 있는 볼륨은 일반적인 공유 저장소였습니다. 그런데, 이러한 “File Server” 역할을 구성할 수 있는 볼륨을 CSV(Cluster Shared Volume) 으로 확장한 것이 바로 “Scale-Out File Server” 역할입니다. 즉, “Scale-Out File Server” 역할의 공유 폴더에 위치하는 데이터는 이제 Failover Clustering에 참여하는 노드들 모두 동시에 접근 가능합니다. 이러한 “Scale-Out File Server” 역할의 공유 폴더을 활용할 수 있는 서버 어플리케이션으로는 현재 Hyper-V 와 SQL 2012 및 2008 입니다. 즉, 이제 Hyper-V의 VM에 관련된 데이터 파일(ex, *.vhd 또는 *.vhdx) 을 “Scale-Out File Server” 역할의 공유 폴더에 위치시킴으로써, 좀 더 안정적인 high availability를 구현할 수 있습니다. 즉, “Scale-Out File Server” 역할의 공유 폴더를 소유하고 있는 노드 A에서 장애가 난다면, 다른 노드 B가 바로 take-over 함으로써, VM 사용자들은 실제 장애 여부를 거의 느낄 수 없습니다. 과거와 같이 CSV가 아닌 일반 볼륨에 파일 공유을 생성한다면, VM 사용자는 노드 A의 장애를 직접적으로 경험함으로써, 실제 VM 사용에 어려움을 겪습니다.
아래는 Scale-Out 파일 서버의 장점입니다.
- Scale capacity dynamically : Scale-Out File Server는 2노드를 지원하고, 최대 4노드까지 지원합니다. 또한, 파일 서버에 연결된 “서버 어플리케이션”에 전혀 영향을 주지 않고, 노드 추가 삭제가 가능합니다.
- Increased bandwidth : 모든 클러스터 노드는 scale-out 파일 공유를 위한 SMB 클라이언트 요청을 허용하고 serve할 수 있습니다. 결론적으로, scale-out 파일 공유는 높은 사용율을 기대할 수 있습니다. 추가적으로, SMB 클라이언트 용량은 backend 스토리지 시스템 성능이 아니라 클러스터 노드의 성능에 좌우됩니다.
- Transparent failover and node fault tolerance : 비즈니스 중요 서버 어플리케이션는 중단없는 스토리지 이용이 가능해야 합니다. “SMB 2.2 서버 클러스터 및 클라이언트”는 대체 클러스터 노드들로 transparent failover 를 지원합니다.
- Load Balancing : Scale-Out 파일 공유는 클러스터 노드 사이에서 load가 분산됩니다.
아래 그림은 아래 첨부 문서의 데모 환경입니다.
데모 환경에서 확인할 수 있듯이, NODE01 및 NODE02의 Failover Clustering에서 “Scale-Out File Server” 역할을 구성했습니다. 특이한 점은 “Scale-Out File Server” 역할을 구성시 필요한 공유 폴더의 위치가 바로 CSV 에 존재한다는 것입니다.
“Scale-Out File Server” 역할을 구성한 후, Hyper-V VM 및 SQL 2012의 데이터베이스 파일을“Scale-Out File Server” 역할의 공유 폴더에 위치시키고, 테스트를 진행해 보았습니다.
Step3 에서 Hyper-V VM 데이터를 “Scale-Out File Server” 역할의 공유 폴더에 위치시킨 후, 테스트를 진행했습니다. 물론, 제가 구성한 환경은 Hyper-V의 가상 환경이기 때문에, Hyper-V VM을 구성하는 작업만 테스트를 진행했습니다. 아래 그림이 Hyper-V VM의 구성 예입니다.
Step4 에서 SQL 2012 데이터베이스 파일을 “Scale-Out File Server” 역할의 공유 폴더에 위치시킨 후, 테스트를 진행했습니다. 제가 실제 테스트를 수행해 본 결과, NODE01 및 NODE02 가 모두 데이터베이스 트랜잭션을 동시에 처리하는 것 같지는 않습니다. 다만, NODE01이 장애가 발생하더라도, 트랜잭션이 끊기지 않고, 바로 NODE02를 통해 데이터베이스 파일에 접근할 수 있음을 확인했습니다. 즉, Load Balancing 기능에 대해서는 아직도 약간 실체가 불분명한 것 같습니다.
아래 그림은 참고로, Windows Server 8 Failover Clustering의 “File Server” 역할 구성 시에, “Scale-Out File Server” 구현을 위한 옵션을 보여 줍니다.
Windows Server 8 Failover Clustering의 “Scale-Out File Server” 역할을 한 마디로 요약하면, SMB 프로토콜에 대한 continuous available 을 구현한 것으로 말씀드릴 수 있습니다. 이제 SMB 프로토콜에 대한 continuous available를 구현하고, SMB에 대한 속도 향상은 SMB 2.2를 사용함으로써, 값비싼 SAN 및 iSCSI기술이 아니더라도 Hyper-V VM 및 SQL 2012의 데이터에 대한 continuous available을 구현할 수 있습니다.
다음 포스팅까지 여러분들 모두 건강하세요
Windows 8 Deploy Scale-Out File Server.pdf
Comments
Anonymous
January 01, 2003
강철님,,, 본명이신가요,, 이름이 넘 멋있습니다. 저 자체가 워낙 기술 레벨이 낮아서 어려운 내용은 포스팅하고 싶어도, 못 합니다. 그래도, 이렇게 좋은 말씀 남겨주시니 더욱 힘내서 포스팅해야 겠네요... 감사합니다.Anonymous
April 09, 2012
이동철부장님의 자료는 정말 구현하기 쉬운 설명과 가이드가 핵심입니다. 항상 자료 잘 보고 잘 사용하고 있습니다. 감사합니다.