728x90

현재의 포스트는 홈서버를 구축하기 위해 계획을 세울때 고려해야 하는 사항을 짚어보고자 한다.
'뭐 그냥 남는 컴퓨터 하나 놔두면 되는거 아냐?' 라고 묻는 분이 계신다면 이렇게 답해드리고 싶다.

'딩동댕, 정답입니다!' ㅡ.,ㅡ;

맞다! 남는 컴퓨터가 있다면 그것을 이용하는게 가장 현명한 방법이 될 것이다.
서버라고 해서 제온CPU와 ECC램 같은 비싼 장비가 꽂힌 육중한 시스템만을 생각한다거나 무조건 어렵다고 생각하고 고개부터 흔드는 것은 바람직하지 않다.


이런 무시무시한 서버를 이야기 하는게 아니다.


이렇게 작고 귀엽지만 똘똘하게 자기일을 잘 해내는 녀석을 키워보려는 것이다.

이번 포스트가 이야기하는 것은 그냥 '서버'가 아닌 '홈서버'이며, 홈서버에서는 그 무엇보다도 경제성이 가장 우선된 가치가 될 것이다.
이때문에 그냥 서버를 위해 새로 컴퓨터를 장만하는것 보다는 가지고있는 컴퓨터를 활용하는게 가장 좋은 방법이 될 수도 있다.

자 그럼 홈서버를 구축하기 위해 고려해야 할 사항을 짚어보자.

A. 서버의 목적

서버에게 할당된 업무를 고려하여 하드웨어를 선택해야만 한다.
좀 더 자세하게 말하자면 CPU를 많이 사용하는 작업인지, 하드디스크등을 많이 사용하는 작업인지에 따라 적절하게 부품을 선택해야 한다는 말이다.
몇가지 예를 들어 설명해보자

1. 동영상 플레이를 주 목적으로 하는 서버
- 서버에서 곰플레이어등으로 동영상을 직접 플레이하는 경우 - 이 경우 말이 서버이지 DIVX플레이어를 대신하는 시스템이라고 생각하는게 좋다.
: 어떤 소스라도 무난히 플레이 하기를 원한다면 CPU가 기본 이상은 되어야 한다.
: ATOM등의 저전력 CPU보다는 i3 이상의 CPU를 사용하는게 유리하다.
: CPU의 성능이 좀 떨어진다면 nVidia의 ION급 이상의 그래픽카드를 선택하는것이 유리하다.

2. VMWARE등을 이용한 가상화 시스템 구동
- 다양한 응용프로그램들을 동시에 구동시키거나 테스트를 목적으로 가상화 시스템을 구동하는 경우
: 이러한 시스템은 시스템 자체보다 가상화 시스템의 내부에서 동작하는 프로그램이 얼마큼의 리소스를 소모하는가가 중요하다.
: 솔직히 이러한 예는 따로 설명할 것도 없다. CPU건 메모리건 하드디스크이건 '여유'롭게 준비하라.

3. 웹서버, DB서버 설치를 통한 웹서비스 구현
- 한마디로 웹서버를 구동하기 위한 시스템
: 웹서버 및 DB서버 프로그램이 사용하는 리소스는 매우 적다.
: 웹서버의 경우 단순히 '구동'보다 동시 접속자수가 얼마나 되는가가 중요한 척도.
: 일반 적인 '구동'을 위해서는 그저 설치하고자 하는 DBMS의 권장사양 정도에 맞추어 주면 된다.

4. 파일서버
- 서버의 내부에 파일을 저장하고, 파일의 전송을 목적으로 하는 시스템
: 공유폴더등을 이용하여 파일을 전송하는게 주목적인 시스템은 하드디스크의 용량과 성능을 가장 중점적으로 고려해야만 한다.
: 웹서버와 마찬가지로 하드웨어의 사양보다 동시 접속자수나 네트워크 환경이 서버 구동을 위해 더 중요한 요소가 된다.

B. 동시 접속자

온라인게임에서 흔히들 말하는 그 동시 접속자 수이다.
여기에 한가지를 더 덧붙이자면 이 사용자들이 동시에 주고받는 데이터의 양을 고려하고 서버를 구성해야만 한다.

원활한 운영이라는 측면에서는 다른 그 어떤 요소보다도 가장 중요한 사안이 될 수 있다.
아무리 좋은 시스템이더라도 동접자수가 수백명에 달한다면 리소스의 한계를 느낄 수 밖에 없다.
특히 파일서버와 같이 느린 속도의 I/O 장치를 많이 사용하며, 순간적인 전송 데이터의 양이 내 시스템이 사용하는 한계 대역폭 대부분을 사용하는 서비스를 운영하기 위해서는 동시 접속자의 수나 전송량의 적절한 분배를 고려해야만 원활한 운영이 가능하다.

매우 성능이 떨어지는 시스템(CPU:ATOM 230, 메모리:2G, 그래픽:GMA 950, OS:Win2000)을 가정하고 앞서 이야기한 예들을 다시한번 호출해 본다.

1. 동영상 플레이를 주 목적으로 하는 서버
가능 동시 접속자 : 1명
: 현재의 예시는 어차피 1개의 디스플레이를 사용하는 환경이기 때문에 2명 이상의 사용자가 동시에 이용하는것은 불가능하다.
: 어차피 현재 가정 시스템으로는 1080i 이상의 해상도를 가지는 동영상은 재생 자체가 힘들다.


2. VMWARE등을 이용한 가상화 시스템 구동
가능 동시 접속자 : 0명
: 가상화 시스템의 구동 자체가 어렵다.
: 전반적인 느린 속도도 문제지만, 가상화 시스템에 분배해 줄 메모리의 양이 부족하다.
: 앞서 말한듯이... '여유'로운 시스템 구성이 필요하다.

3. 웹서버, DB서버 설치를 통한 웹서비스 구현
가능 동시 접속자 : 10명
: 일반적인 블로그 화면정도의 데이터를 담는 웹페이지라면 위의 동시 접속자 수는 능히 버틸 수 있다.
: 웹서비스는 사용자의 시스템과 동기화하여 지속적으로 데이터를 주고받는 서비스가 아니기 때문에 실제로는 위의 가능 동시 접속자의 몇배 이상의 접속자를 커버할 수 있다.

4. 파일서버
가능 동시 접속자 : 2명
: 최근에는 대부분의 가정에 들어가는 인터넷 속도가 100Mbps에 가깝게 상향 평준화 되었기때문에, 이론적으로는 다운로드 이용자 1명, 업로드 이용자 1명만이 동시에 서버의 전체 대역폭을 사용할 수 있다.
: 공유기의 Qos를 이용하거나, 서버 프로그램에서 사용자별 제공속도를 제한함으로써 동시접속자 수를 늘릴 수 있다.
: 다만 한정된 대역폭 대문에 각 이용자에게 분배되는 대역폭은 반비례하여 줄어들게 된다.
: 동시 사용자가 많은 경우 하드디스크 RPM이 높은 것을 사용하는게 유리하며, 최근에 많이 생산되는 저전력 하드디스크는 피하는 것이 좋다.
: 1~2명 정도로 적은 수의 사용자가 동시에 이용하는 경우 전력소모를 줄이기 위해 저전력 하드디스크를 사용하는 것이 좋다.

C. 소모비용

소모비용은 서버를 구축하기 위한 하드웨어의 구입비용뿐만 아니라 서버를 지속적으로 운영하기 위해 소요되는 비용 전체를 이른다.
일반적으로 홈서버라 함은 개인이 집에서 구동하는 간이 서버를 이른다.
이는 일반적인 서버와는 다르게 추가적으로 고려해야만 하는 사항이 존재하는데, 가장 대표적인 것이 바로 시스템의 소비전력 및 이에 따른 전기세이다.
'컴퓨터 한대 켜 놓은다고 전기가 얼마나 들어가겠어?' 라고 생각할지 모르겠지만 '누진세'의 정체를 알게되면 진땀 좀 흘릴것이라고 생각된다.

지금까지 쓸데없는 예를 들어가며, 누구나 다 아는 내용들을 적어주고 있었던 것이 이 누진세에 대한 무서움 때문이었다.
어떤용도로 사용하든 시스템은 빠르면 빠를수록 좋다.
이것은 만고불변의 진리다.
하지만 빠른 시스템은 그만큼 전기도 많이 빨아드릴 수 있다는 점. 충분히 고려해야만 한다.

24시간 가동하는것을 전제로 하는 서버라면, 최대한 목적과 접속자수를 계산하고 이에 맞는 시스템을 구축해 주는것이 지갑걱정을 줄여줄수 있는 길이다.
비록 이전에 사용하던 시스템을 그대로 사용한다고 하더라도, 전기를 많이 사용하는 부품은 변경을 해 주는것을 권장한다.

출처 : http://www.cyworld.com/cskbs1/3834755

728x90

'UTIL' 카테고리의 다른 글

랜선 만들기  (0) 2012.07.29
정규식 재사용  (0) 2012.07.29
엑셀 COUNT  (0) 2012.07.29
싸이월드 블로그 익스플로러9 첨부 문제  (0) 2012.07.29
sqlinform 쿼리 정리 프로그램  (0) 2012.07.29

+ Recent posts