하드웨어 리뷰 정도로만 끝내려고 했는데 -_- 굳이 활용도를 쓰라고 가이드를 주셔서...
보통 홈 서버를 이야기할 때, VMWare ESXi 등의 가상화 용도로 먼저 떠올리는데요. ESX, vCenter 도 현업에서 쓰고 있지만, 메인 서버로 쓰기에는 무리라고 생각 됩니다. 이유인 즉슨 메인 서버를 보조하는 용도거나 가상화 전용 박스 일 경우는 활용도가 좋지만, 단순히 한대의 메인 서버로 쓰기에는 데이터가 저장되는 각각의 VM으로 스토리지가 분산 되는 구조이다 보니, 디스크 저장소의 활용도가 떨어지게 되며, vmfs 위에 os 디스크 레이어가 추가 되다보니 성능이나, 데이터 유실/복구에도 취약한 부분이 있습니다. 그래서 개인적으로는 데이터의 집중을 위해 Windows 박스 내에 모든 것을 구성하는 것을 목표로하고, 테스트 환경 같은 간단한 VM은 Hyper-V로 운용하고 있습니다.
결론은, 서버의 용도와 활용도에 따라 OS 시스템을 선택 해야 하며, 항상 가상화가 정답은 아니다. 입니다.
smb 3.0 file server
제가 처음 파일 서버를 구축하게 된 건 사진 데이터 때문인데요. 몇년간 찍어온 개인 사진 데이터들의 유실을 방지하고자 기가바이트 보드의 RAID-1 Mirroring 기능을 이용해 120GB E-DIE 두 개를 미러링 구성을 했었습니다. 하지만 데이터의 용량이 점점 커지고 카메라 화소수가 늘어남에 따라 디스크 사이즈도 더 필요하게 되었는데요. 그 때 부터, 최소한 RAID-5 는 되어야 한다. 라고 개인 스토리지 구축을 시작 했습니다. 디지털 데이터는 언제든지 유실 될 수 있고 하드 디스크를 믿는 편이 아니기 때문에, 1차로 디스크의 Fault Reduandancy에 대비할 수 있어야 했고요. 2차로 업무용이 아닌 개인 스토리지이기 때문에 가격대비 공간도 어느정도 확보되어야 하는 조건이 있었습니다.
MicroServer N40L 과 Smart Array p410을 이용해서 하드웨어를 구성했고, OS로는 Windows Server 2012를 선택 했습니다. 데이터 중복 제거(Data Deduplication)을 이용하여 디스크 사용량을 극대화 했으며, NIC 티밍을 이용해 클라이언트간의 대역폭도 확보하게 됐습니다. 요약하면, 클라이언트 PC에서는 다운로드 대역폭 200MB/sec 업로드 대역폭 100MB/sec 로 언제든 대용량의 스토리지를 이용할 수 있는 조건이 갖추어졌습니다. 이 스토리지를 이용하여, 개인적으로 찍은 사진이나 동영상 등의 자료 혹은 드라마, 애니메이션 등의 대용량 영상 자료를 저장하고 있습니다.
SMB 3.0 멀티 채널을 이용한 전송 속도
데이터 중복제거를 통한 중복 제거 절감
위의 환경을 구성하실 때 주의하실 점은, Data Dedeuplication은 OS 디스크에는 적용되지 않습니다. 데이터 디스크에만 중복제거가 지원되며, 프로세스에서 파일을 핸들링하고 있는 온라인 파일은 중복제거가 시행되지 않습니다. (Windows Server 2012 R2는 온라인파일도 지원 합니다). 예상치보다 중복제거 비율이 높지 않은 이유는 디스크의 에러 (배드섹터) 시 복구를 위해 중복제거가 적용된 단일 청크라 하더라도 실제 디스크에는 2개씩 저장하므로 일반적인 용도의 파일에서는 절감 비율이 크지 않을 수 있습니다.
SMB 3.0 Multi Channel의 경우는 Windows Server 2012는 자체적으로 NIC 티밍을 지원하지만, SMB 3.0을 지원하는 Windows 8 이나 Windows 8.1의 경우는 NIC 티밍을 지원하지 않습니다. 인텔 ANS(Advanced Network Software)를 이용해서 티밍을 지원해야 합니다. 여기서 또 주의할 점은 Windows 8의 경우 대부분의 듀얼포트 기가비트 어댑터들이 ANS를 지원하지만(Full Support), Windows 8.1의 경우는 인텔 i340/i350 NIC에서만 ANS를 지원 합니다. (다른 MT/PT/ET 등의 구형 어댑터들은 기본 드라이버만 제공 합니다) 그리고 큰 대역폭을 사용하기 때문에 그만큼 스위치도 필요하게 되는데요. (이는 뒤의 PS1810 설명에서 다시 하겠습니다) LACP 같은 고급 기능을 지원하는 넌 블러킹 스위칭 허브를 필요로 합니다. (단지 SMB 프로토콜을 위한 대역폭 증가는 일반 스위치에서도 가능합니다)
Hyper-V server
Windows Server 2008 R2 시절만 하더라도 VMWare가 넘사벽의 클래스였으나, Windows Server 2012 발표를 기점으로 Hyper-V도 어느정도 만족할만한 수준으로 올라왔습니다. (오히려 VMWare 보다 더 뛰어난 부분도 있습니다.) 덕분에 힘들게 VMWare를 설치하고 이해하지 않더라도, 간단하게 가상머신, 가상 서버팜의 구성이 가능합니다. 물론 VMWare에 비해 macosx도 지원하지 않고, usb 패스쓰루도 지원하지 않아 몇가지 불편한 점도 있긴 합니다만 (R2의 2세대 VM에서 지원하지만 OS 제약이...) 일반적인 용도의 간단한 테스트에서는 굉장히 만족할만한 결과를 내주고 있습니다.
AirVideo/AirComics server
16GB 짜리 iPad를 산 이유이기도 한데요, iOS의 AirVideo 프로그램 및 서버를 이용해 동영상을 재생하고 있습니다. 코덱이나 컨테이너에 따라 다르겠지만, 제 경험적으로는 N40L 에서는 720p사이즈의 동영상 파일 재생이 어려웠으며(버퍼링) N54L로 업그레이드 한 뒤부터 720p 사이즈의 실시간 컨버팅이 가능했습니다. (역시나 N54L 도 1080p는 무리) AirVideo 최근 버전 부터 H.264 패스쓰루를 지원해, 실시간 컨버팅의 필요가 줄긴 했지만(iPad에서 디코딩), 자막이 들어있는 영상의 경우는 패스쓰루를 지원하지 않기 때문에, 여전히 AirVideo 서버의 CPU 파워를 요구하고 있습니다. Gen8 장비로 1080p 실시간 컨버팅은 가능한 수준입니다.
그리고, 비슷한 용도로 AirComics를 이용해 오래된 만화책을 보거나(...) 하기도 합니다. 네트워크 사용 대역폭이 영상에 비해 적기 때문에, 네트워크 상태가 안 좋거나 하는 상황에서 시간 때우기 용도로 가끔 사용합니다.
Plex Media server
파일 서버에 동영상을 TV나 Apple TV에서 보기 위해, PMS를 설치하여 사용합니다. 손이 많이 가는 단점이 있지만, LG TV (42LN5400)에서 DLNA를 통해 지원하기도 하고, Apple TV를 통해 직접 보는것도 가능합니다. AirVideo를 통해 영상을 보다가, Apple TV의 AirPlay로 전환하여 TV에서 전환이 되기도 합니다. (입력 소스 바꾸기 귀찮은건 함정...) PMS는 Apple TV 3세대 구매 후, 탈옥이 되지 않아 xmbc의 대응 용도로 PMS를 설치 하였는데요. 손이 많이 가는 만큼(포스터/섬네일) Qloud 등의 일반적인 동영상 스트리밍 툴 보다 훨씬 큰 만족감을 줍니다.
http://www.plexapp.com/medialink/files/K_pms_intro.html
torrent seed server
uTorrent 와 Dropbox를 사용하신다면, uTorrent의 환경설정을 이용해 Dropbox에 있는 .torrent 파일을 자동으로 로드, 다운로드 할 수 있습니다. 예를 들어 집이 아닌 외부에 나와있는데, 티비 프로그램을 놓쳤다. iPhone이나 휴대폰을 이용해 .torrent 파일을 Dropbox의 특정 폴더에 넣어주기만 하면, 집에있는 uTorrent 에서 새로 다운로드 된 .torrent 파일을 확인하고, .torrent 파일 .torrent_loaded 로 변경, 자동으로 실제 파일을 다운로드 받는 기능입니다. 논란의 이야이가 될 수 있기도 합니다만, 특별히 Synology 등의 NAS 어플라이언스를 구매하지 않더라도 구현은 가능합니다. 단지 손이 많이 갈 뿐이죠.
appple timemachine afp server
macosx 를 쓰다보면 타임캡슐/타임머신을 이용해 백업을 할 수 있는데요. Windows Server 2008 이후로 Microsoft에서 AFP에 대한 3rd party 프로토콜을 지원하지 않습니다. Windows Server를 이용해 타임머신을 구성하려면 Extreme-z IP와 같은 3rd Party 어플리케이션을 필요로 합니다. 아쉬운 점은 Extreme-Z IP가 상용입니다. 즉, 타임머신을 이용하기 위해 타임캡슐이나 외장 USB 하드를 구매하지 않아도 됩니다만, 어플리케이션을 구매해야 합니다.
윈도우의 특정 폴더를 AFP로 마운트 / 서비스 가능하게 해주며, 이 AFP 주소를 통해 osx에서 타임머신 백업을 지정해두시면 됩니다. 다만 초기(Initialize) 백업 시에는 많은 시간이 소요될 수 있으니 유선으로 백업 하시고, 그 후의 증분 백업에 대해서는 무선으로 하시면 편리할 것 같습니다. 타임머신 백업을 이용하기 위해 별도의 외장 드라이브를 연결하지 않아도 됩니다. 이 Extreme-Z IP를 개발한 Group Logic 회사는 Acronis에 통합 되었습니다.
cctv/dvr server
요즘은 무선으로 연동되는 ip cam이 많이 보급 되고 있지만, 사용하지 않은 USB 방식의 캠을 이용해서 cctv 용도로 모니터링 한다거나 dvr 서버를 구축할 수 있습니다. USB의 웹캠의 경우 최대 10M 정도는 연장이 가능하니, 필요하다면 webcamxp 같은 프로그램을 설치해서 cctv 서버로 사용할 수 있습니다. 추가로 보통 dvr 시스템을 구축하면 서버+카메라+설치+ 관리 소프트웨어 정도 지원해주는데, 이러한 솔루션만 따로 떼서 서비스 하는 업체도 있으니(azzd), 필요하시다면 직접 구축 해보는 방법도 있을 것 같습니다.
bitcoin miner
개인적으로는 파일서버 용도로도 충분히 만족하는데, 굳이 활용도를 찾다보니, 100% 온라인 중인 서버에서 어떤 일을하면 더 효과적일까. 라고 거꾸로 목적을 만들어보았습니다. 2000년 초반 SET@home이라고, 남는 컴퓨터의 자원을 외계 지적 생명체를 찾는데 기부 하는 프로젝트가 있었는데요. 최근에 이와 비슷하면서도 다른 비트코인(bitcoin)이 인기를 얻고 있어, 이를 잠깐 소개하고자 합니다.
비트코인
비트코인(Bitcoin)은 2009년 나카모토 사토시가 만든 디지털 통화로, 통화를 발행하고 관리하는 중앙 장치가 존재하지 않는 구조를 가지고 있다. 대신, 비트코인의 거래는 P2P 기반 분산 데이터베이스에 의해 이루어지며, 공개 키 암호 방식 기반으로 거래를 수행한다.
비트코인은 익명성과 공개성을 가지고 있다. 비트코인은 지갑 파일의 형태로 저장되며, 이 지갑에는 각각의 고유 주소가 부여되며, 그 주소를 기반으로 비트코인의 거래가 이루어진다.
비트코인은 1998년 웨이따이가 사이버펑크 메일링 리스트에 올린 암호통화(cryptocurrency)란 구상을 최초로 구현한 것 중의 하나이다.
비트코인 생성
비트코인 네트워크는 “코인 생성” 옵션을 선택한 소프트웨어를 구동하는 누군가, 구체적으로는 블록을 생성해내는데 성공한 누군가에게 한 묶음의 새로운 비트코인을 시간당 6번 정도씩 생성해 배분할 수 있도록 되어 있다. 그 소프트웨어나 같은 역할을 하는 사용자가 직접 만든 특수한 프로그램을 구동하는 사람은 누구나 비트코인 묶음을 받을 가능성이 있다. 비트코인을 생성하는 것은 금광 채굴에 빗대어 “채굴” 이라고 불리기도 한다. 사용자가 코인 묶음을 받을 수 있는 확률은 정해진 목표값 이하의 해시를 만들어낼 수 있는 확률과 같으며, 비트코인이 묶음당 생성되는 양은 50 BTC를 넘지 않는다. 그리고 변동분은 전 시간에 걸쳐 0으로 줄어들게 프로그램되어, 전부 2100만을 넘지 않게 된다.[2] 이 지불금이 줄어들면, 사용자들은 블록을 생성하는 노드를 구동하는 것 보다는 거래 수수료를 벌도록 유도된다.
네트워크의 생성용 노드들은 전부 그들의 후보 블록을 만들기 위한 암호화 문제를 찾아내기 위해 경쟁한다. 이 문제를 풀려면 반복적인 시행착오가 필요하다. 노드가 정답을 찾으면 네트워크의 나머지 노드에게 그것을 알리고 새로운 비트코인 묶음을 요구한다. 새로 해결된 블록(solved-block)을 받은 노드들은 그것을 허가하기 전에 인증하고 체인에 추가한다. 노드에는 표준 클라이언트를 사용하거나 GPU 가속을 이용하는 다른 소프트웨어가 사용될 수 있다.[2][7][8] 사용자들은 집단으로 비트코인을 생성할 수도 있다.[9]
블록 하나가 대략 10분마다 생성될 수 있도록 각 노드들은 P2P 네트워크의 집단적 연산 능력의 변화에 따라서 매 2016 블록(약 2주)마다 문제의 난이도를 재조정하게 된다.
http://ko.wikipedia.org/wiki/%EB%B9%84%ED%8A%B8%EC%BD%94%EC%9D%B8
요약하면 비트코인은 온/오프라인에서 사용되는 전자화폐로, 마이닝(채굴)을 통해 비트코인을 얻을 수 있는데, 이 과정에서 CPU혹은 GPU의 파워를 이용할 수 있다 입니다. 물론 누진세가 적용되는 우리나라 가정에서는 이러한 작업이 비효율적일 수 있으나, 전기요금이 저렴한 산업용 전기를 이용한다면 이야기가 조금 달라질 수 있을지 모르겠네요.
PS1810-8G switching hub
개인적으로 생각하기에는 MicroServer Gen8의 핵심 기능이라고 봐도 무방할 정도의 킬러 아이템인데, 의외로 소홀해지는 것같아 아쉽습니다. HP에서 디자인하길 MicroServer Gen8 와 단짝을 이루는 고성능, 저가격의 스위치로 내놓은 아이템인데요. (MicroServer Gen8과 Stackable 가능) 기존 환경에서 앞에 말씀 드렸던 LACP(802.3ad)를 구성하고자 하면 Cisco Catalyst 2960S-TC 급의 스위치를 사용해야 합니다. 기업용 스위치이며 가격이 높은 편이지만 문제는 가격이 아닙니다. 2960 급의 스위치에서는 70W 이상의 전력을 소모하고, 40db 이상의 소음이 발생하기 때문에, 일반 가정이나 사무실에선 사용이 꺼려집니다만, PS1810 스위치 같은 경우에는 Fanless 디자인에, 8포트 스위치 기준 최대 7.2W, 최대 스위칭 용량 16Gbps의 넌 블럭킹 스위치입니다.
MicroServer Gen8 의 브로셔를 보면 키워드 중, Link aggregation allows for faster file transfers and greater data availability. 라고 있는데요. MicroServe 와의 조합을 위해 만든 기능으로 볼 수 있을 것 같습니다. 그리고 굳이 MicroServer 접속 용도가 아니더라도 이 정도 급의 스위치는 홈 서버 구축 용도로 잇점이 있을것으로 생각 됩니다.
결론
그리고 마지막으로 한가지 문제점이 있는데, b110i 컨트롤러를 AHCI 로 놓을 경우 팬이 굉음을 내며 계속 돌아가게 되어있는데, 이는 BIOS (J06)의 이슈이며, RAID 모드로 둘 때는 팬 소음이 발생하지 않습니다. (현재 HP 에서는 버그를 수정 중이라고 합니다. 이곳에서 관련 글을 확인할 수 있습니다)
디스크의 확장성만 제외하면 기존의 문제점을 다 보완했으나, 가장 큰 장점을 잃어버린 것 같아 아쉽기도 합니다. 개인 용도의 서버, 혹은 사무실의 개발 서버, 가상화 서버 팜 용도, 엔터프라이즈 용도에선 2차3차 백업 서버 정도의 용도로 사용한다면 빛을 발할 것 입니다. MicroServer는 말 그대로 Micro의 용도에 적합한 용도이며, MicroServer 에서 메인스트림/퍼포먼스의 라인의 성능을 요구하는 것은 무리입니다.
기기를 임대해준 광고 대행사에서 타사 서버와의 비교를 해달라고 가이드를 주셨었는데, 실제로 MicroServer의 경쟁상대는 MicroServer뿐입니다. 최근 후지쯔 TX100이나 HP ML110 G7등이 싸게 풀려서 가격대비 경쟁이 되긴 하지만 MSRP 기준으로는 두 배 이상의 고가의 서버라인입니다. 그에 비해 MicroServer 는 크기/저전력으로 당당히 경쟁력을 갖고 있습니다. 오히려 MicroServer 의 경쟁 상대는 Synology나 Netgear/Qnap 등의 NAS 어플라이언스와 비교해야 될 것으로 생각 됩니다만, 4베이 NAS 스토리지의 스펙이나 가격을 보신다면 아마도 MicroServer로 마음이 더 끌리실 것입니다.
장점
기존대비 고성능의 (교체 가능한) CPU, PS1810 과의 조화
단점
기존대비 낮은 스토리지 확장성, AHCI 시 소음 (수정 완료), UEFI 미지원, ODD SATA 포트 (SATA2 속도 제한)
#2013.11.28 업데이트
Intelligent Provisioning 1.4 에서는 (1.5 도 changelog 보니 마찬가지인듯 하지만) Windows Server 2012 R2를 정식으로 지원하지 않고, 정상적인 과정을 거치는 것 같지는 않지만 (한 단계 더 소요 됨) 설치는 가능함. 다만 운영 시 발생하는 BSOD(KERNEL POWER FAILURE) 는 SmartArray B110i 의 드라이버 문제이다. Windows Server 2012의 support matrix 에 포함된 62.6.2.64 (10 Sep 2013) 버전으로는 WS2012 R2에서 BSOD가 발생하고 WS2008 R2 에 포함된 6.6.2.64 (10 Sep 2013)를 사용하면 BSOD가 사라진다. -_-