대부분 웹 서비스 확장성을 고려하여 L4 작업으로 진행을 하고 있다. 결국 이렇게 될 경우 효율적인 부분도 있지만 컨텐츠를 올리는(퍼브리싱) 작업도 만만치 않다. 별도의 퍼브리싱 프로그램을 FTP 로 올리는 경우도 있고 그 기능은 다양하게 작업을 하게 되며 또한 어려움도 많이 따른다.

올리는 상황에 멈출 경우 그 에러가 나타나서 메일 페이지가 비정상적으로 나타나는 경우도 있다.

이번에는 MS 기술자료에서 소개한 UNC 서버 및 NAS 장치로 같은 네트워크에 연결 된 저장 서버로 부터 웹 컨텐츠를 연결하는 방법을 소개 하겠다.

IIS와 같은 웹 서버의 주된 역할은 웹 클라이언트로부터 파일 요청을 받으면 해당 파일을 가져와 콘텐츠를 다시 클라이언트로 보냄으로써 요청을 처리하는 것입니다. 이때 클라이언트로 전송된 파일은 대부분 IIS 서버에 로컬로 저장됩니다. 이런 방식은 속도가 빠를 뿐만 아니라 파일이 업데이트되는 즉시 새 콘텐츠를 제공하는 장점이 있습니다. 따라서 관리하기 편한 소규모 파일 세트를 제공하는 일부 웹 사이트의 경우, 콘텐츠를 IIS 서버에 로컬로 호스팅하는 이 방식이 간단하고 성능면에서도 가장 유리합니다.

그러나 파일을 IIS 서버에 저장하는 이 방식이 실용적이지 않거나 불가능한 경우도 많습니다. 관리할 파일이 많은 시스템에서 콘텐츠를 IIS 서버에 저장하면 콘텐츠 관리 작업과 IIS 관리 작업을 동일한 시스템에서 처리해야 합니다. 이러한 작업 부하를 단일 서버가 감당할 수 있다면 콘텐츠를 로컬로 저장하는 것이 효율적이겠지만, 웹 서버를 추가하여 시스템을 확장해야 하는 상황이 발생하면 여러 서버에 파일 시스템을 계속 복제해야 하기 때문에 관리 작업이 복잡해집니다. 복제 작업에는 시간이 많이 소요될 뿐만 아니라 불완전한 콘텐츠를 전송되는 등의 기타 동기화 문제가 발생할 수 있습니다. 또한 여러 서버에 위치한 파일 시스템의 보안을 관리하느라 복잡함이 훨씬 가중됩니다. 더욱이 파일 저장에 필요한 용량이 커지면서 각 서버의 저장 용량을 확장해야 하는 경우에는, 추가 비용이 발생하는 것은 물론 하드웨어 수가 늘어남에 따라 하드웨어 고장으로 인해 가동이 중지될 확률도 그만큼 높아지게 됩니다.

이러한 문제를 해결하는 한 가지 방법은 IIS를 프런트 엔드로 사용하여 원격 시스템에 저장된 콘텐츠를 전송하는 것입니다. 이 백서에서는 IIS 6.0의 구성 및 튜닝 외에도, UNC(Universal Naming Convention) 경로 이름을 사용하여 IIS에 제공되는 파일이나 응용 프로그램 또는 기타 네트워크 리소스의 중앙 저장소 역할을 하는 원격 서버에 대해 중점적으로 다룹니다. 여기서는 파일 서버 역할을 하는 Microsoft 서버 운영 체제에 대한 액세스만 설명하지만, UNC 경로 이름을 사용하여 원격 파일을 공유하는 다른 저장소 솔루션(예: NAS 장치)에도 여기에 나온 많은 내용을 적용할 수 있습니다.



분산 시나리오

IIS를 사용하여 원격 저장소와 분산 시스템을 구현한 한 학교를 예로 들어봅시다. 이곳에서는 100명의 교사가 일정과 서류를 만들고 각 학급의 성적을 게시합니다(그림 1 참조). 이 경우 IIS를 사용하여 각 교사의 시스템에 있는 개별 공유 폴더에 매핑하면 중요한 콘텐츠를 학생들에게 빠르고 쉽게 게시할 수 있습니다. 이때 IIS는 원격 저장소를 사용하여 분산된 정보를 중앙에서 처리하는 집중 장치 역할을 합니다.

원격 저장소를 사용하여 분산된 정보의 중앙 집중 장치 역할을 하는 IIS 6.0 화면으로 대략 구성도라고 보면 됩니다.

위의 경우는 DFS 방식으로 아마 대용량 파일일 경우 활용도가 있으리라 본다.

ISP(인터넷 서비스 공급자)
ISP(인터넷 서비스 공급자) 또한 IIS를 사용하여 원격 콘텐츠의 장점을 누릴 수 있습니다. 예를 들어, ISP는 공유 호스팅 환경에서 단일 서버로 수천 개의 웹 사이트를 관리할 수 있습니다. 콘텐츠가 많은 사이트를 통해 배포되지만 사이트당 트래픽은 낮기 때문입니다. 또한 콘텐츠를 IIS 서버 외부에 배치할 경우, 여러 서버의 콘텐츠를 단일 RAID(Redundant Array of Independent Disks) 장치에 저장할 수 있습니다(그림 2 참조). 많은 웹 서버에 분산하지 않고 한곳에 집중함으로써 저장소에 대한 투자를 최적화하는 것은 물론, 하드웨어 오류가 줄고 복구 전략이 간단해지는 장점도 얻을 수 있습니다.



대용량 웹 사이트
대용량 웹 사이트에는 주로 웹 팜이 사용됩니다. 웹 팜은 부하 분산 장치로부터 트래픽을 수신하는 동일한 구성의 여러 IIS 서버로 이루어져 있습니다. 이 시나리오에서 웹 팜의 서버는 MSCS(Microsoft Cluster Server)를 공용 데이터 저장소로 사용하여 하나 이상의 Microsoft SQL™ 서버 클러스터에 액세스하는 것이 일반적입니다. 이 클러스터 시나리오에서는 Microsoft 네트워크에 사용되는 SMB(서버 메시지 블록) 통신이 세션에 종속적이므로 여러 파일 서버 간에 NLB(네트워크 부하 분산) 기능이 적용되지 않습니다. 또한 IIS 6.0을 기반으로 실행되는 응용 프로그램이 서버 중 하나에 문제가 발생했을 때를 대비하여 장애 조치 기능이 내장된 공용 데이터베이스를 사용하기 때문에 가용성도 높습니다. 이와 마찬가지로, IIS 6.0이 제공하는 콘텐츠와 응용 프로그램을 클러스터 상의 파일 서버나 NAS 장치에서 호스팅하여 원격 저장소 중 하나에 오류가 발생해도 사용자에게 아무런 영향을 미치지 않도록 할 수 있습니다


필자가 한번 추천해 주고 싶은 시스템은 윈도우 서버 2003 R2 서버이다. iSCSI 방식을 지원 하는 체계해서는 UNC 잡는 방법이 수월하기 때문에 추가로 권해 드리고 싶다.
  • 웹서비스 컨텐츠 연결
  • 로컬 시스템 처럼 사용 가능하게 구성 할 수 있는 백업시스템 가능 - 별도로 백업 솔루션이 필요 없다.
  • 전용 파일 서버 역할
  • 클라이언트 장애 복구 시스템 가능
이러한 기능들이 윈도우 서버 2003 R2 로 가능하다고 본다.  당사가 공급하는 "RMS-2802 Storage " 참고 하시길 바랍니다.




자료출처 : UNC 서버 및 NAS 장치에 원격 저장된 콘텐츠를 사용하여 Internet Information Services(IIS) 6.0 배포 및 구성


Posted by NTFAQ

트랙백 주소 :: http://ntfaq.co.kr/trackback/3700 관련글 쓰기

댓글을 달아 주세요