ÀÚÀÛ NAS ±¸Ãà Èı⠼ÒÇÁÆ®¿þ¾î Æí....

isaiah   
   Á¶È¸ 11217   Ãßõ 0    



0편  http://www.coolenjoy.net/bbs/board.php?bo_table=36&wr_id=3649


1편 http://www.2cpu.co.kr/hojak/3878

2편 http://www.2cpu.co.kr/hojak/3878

에서 이어집니다.


 껍데기가 완성 되었으니 알맹이를 체워야 겠죠.

 초기의 소프트웨어 구성은 아래와 같았습니다.





셀러론 CPU에 120MM 짜리 방열판을 조합해서 패시브 쿨링으로 구성해서 항상 켜두는 컨셉으로 구축했엇기 때문에

위와 같은 조합이 나왔습니다. WINDOWS 시스템을 아주 가끔씩 사용하였기 때문에 매모리 관리의 이점을 살리기 위해서

ESXI 위에 XPEN과 WINDOWS 8.1을 얹어서 사용했습니다. 한동안은 문제가 없었지만 쓰다보니 단점이 좀 느껴지더군요.


 1. ESXI 가 하드웨어 모니터링을 거의 지원하지 않습니다.

 물론 ESXI에는 아주 체계적인 방법으로 하드웨어를 모니터링 하는 시스템이 내장되어 있고 자동으로 네트워크로 쏴 주기도 합니다만.

 특정 하드웨어만 지원되고 그 특정 하드웨어의 범위에 제 싸구려 h81 보드는 들어가지 않습니다. 팬속은 커녕 CPU 온도도 모니터링 할 수가 없었죠.


 2. ESXI가 S3 절전을 지원하지 않는 문제...

 이것도 지원하지 않는게 아니라 지원을 합니다만. 역시나 스텐드 얼론으로 사용하는 홈나스를 위한 배려는 전혀 없습니다.

 장사의 주된 표적이 아니기 때문이죠. 별도의 부하에 따라서 s3에 진입하고 s3에서 복귀하는 과정을 별도의 서버가 지극히 대규모 

 클러스터링의 관점에서 부하를 측정하기 때문에 어떤 방식으로든 적용할 여지가 없었습니다. 

 물론 라이선스도 비싸서 60일 한정이나 마찬가지고요.


 3. XPEN이 smb 3.0을 지원하지 않는 문제...

 이게 좀 큰데 10G nic는 여러모로 적용하기 힘든 부분이 있고 또 데스크탑 옆에 두고 내부망으로 연결한 장치에게 있어서 1Gbps는 좀 모자란게 사실이죠. 

smb 3.0은 꽤 중요한 요소인데 대부분의 리눅스 배포판과 개인용으로 쓸 만한 유닉스가 smb를 구현하기 위해서 사용하고 있는 SAMBA는 아직 멀티채널 기능을 지원하고 있지 않습니다. 현 시점에서도 배타버전의 SAMBA에서 태스트 되고 있을 뿐이므로 SMB 3 멀티채널 기능을 사용하려면 윈도우즈를 쓰는 수 밖에 없죠..


이런 문제들 때문에 소프트웨어 구성을 아래와 같이 바꾸어 보았습니다.

 

윈도우즈나 우분투 모두 아주아주 사용자가 많고 드라이버 지원의 범위가 넓어서 XPEN을 사용하면서 해야 했던 

삽질 같은걸 할 필요가 없을 것이라고 생각했엇는데요.


실재로 설치 하는 과정은 너무나도 부드럽게 진행이 되었습니다. 아무런 문제가 없었죠.

그리고 목적했던 SMB 멀티 채널의 속도를 누리면서 잠시 동안의 뿌듯함에 잠겼습니다.
뭐 그 직후 2CPU에서 2만원 짜리 10G nic가 유행하면서..... 아주 잠시동안의 뿌듯함이 되어 버렸죠.


 여튼 이 뿌듯함이 가시기도 전에 문제가 나오기 시작합니다. 크게 두가지 였는데요.

 1.원하는 대로 작동하지 않는 WAKE ON MATCH PATTERN 문제

 2. zeroconf network 문제


혹시 모르는 분들을 위해서 2번 먼저 설명을 해야 할것 같네요..
zeroconf network는 주로 내부망에서 IP 성정 없이 통신을 하기 위해서 사용되는 프로토콜입니다.
IP 설정이 없다기 보다는 대부분의 경우 그냥 브로드 캐스트르 서로의 위치를 확인하는 선이고 좀 통신다운 통신은 결국 서로의 IP를 브로트캐스트로 교환 한 다음 이루어 집니다.

windows에서 쓰는 netbios
리눅스 계열에서 사용되는 avahi
osx에서 쓰이는 bonjour

주로 어떤식으로 사용자가 접하게 되냐면 윈도우즈 같은 경우 컴퓨터 이름으로 SMB에 접속을 시도하는 경우가 있죠.. \\컴퓨터 요런 식으로요 그리고 네트워크나 홈그룹에 자동으로 인접해 있는 컴퓨터 들이 등록되는 경우가 netbios를 이용한 통신입니다.
bonjour나 avahi는 netbios와는 다른 프로토콜을 쓰지만 용도는 거의 비슷하고요.


 그런데 항상 켜두전 시스템을 안쓸때 절전에 밀어 넣으니까 생기는 문제가 켜저 있을때는 nas가 항상 내부망에 자신의 위치를 이 zeroconf를 통해서 전파를 해서 간단히 접속이 가능하나 절전에 들어가면 그냥 침묵을 해 버리기 때문에 쾌적 하지 못하더군요.
 netbios 쪽은 별 불편이 없었습니다. windwos는 핑 때려도 대답을 안하는 컴퓨터도 네트워크 목록에 올려두고 유지하다가 접속을 시도하면




netbios 이름 퀴리를 내부망에 쏘고 이 netbios 이름 퀴리가 NAS를 s3 절전 모드에서 해제 시키게 됩니다 딱 제가 원하는 대로 작동을 하는거죠


 안쓸때 절전 모드 들어가고 SMB로 접속 시도 하면 켜지고..

 문제는OSX쪽이였습니다 OSX쪽에서 타임머신 백업 볼륨으로 접근하려고 경우는 행동원리가 달라서 자신의 위치를 전파하던 주채가 사라지면 쏜살 같이 목록에서 빼 버립니다.
 ip로 다시 접속을 시도해야 하므로 과거에 비해서 매우 번거롭고 불편하죠.




 그리고 첫번째 문제는는 WAKE ON MATCH PATTEN 문제 였습니다.
이 구성을 하면서 가장 노렸던 요소중 하나인 S3 절전 모드.. 진입하면 전력 소비는 거의 끈것과 마찮가지로 줄어 듭니다.그리고 메모리를 유지하고 있기 때문에 금세 꺠어나죠
s3 절전 상태에서는 NIC가 제공하는 WOKE ON MATCH PATTEN 기능으로 깨어나게 됩니다.
 
 즉 네트워크로 서비스를 요청하면 깨어나게 되어야 하는거죠. 이걸 시작할 떄 당시에 재가 인식하는 WAKE ON MATCH PATTERN 기능은 딱 '네트워크로 뭔가 요구하면 알아서 일어남' 이였습니다.
MS가 WINDOWS를 조금만 친절하게 만들었으면 여전히 딱 그정도로 생각하고 있엇겠죠.

 네트워크 카드가 지원하는 이 기능의 요지는 이렇습니다.
 -어떤 형태의 패턴이던 길이의 재한 내에서만 만들어서 입력하면 S3, S4 절전 모드에 있는동안 들어오는 패킷과 비교해서 깨워준다.

 즉 원하기만 하면 어떤 내용도 등록할 수 있는거죠.다른 컴퓨터 MAC을 찾는 ARP 패킷이나 특정 브로드캐스트에 반응하도록 만들 수 있습니다.

 그런데 이 WINDWOS가 지원하는 이 기능의 요지는 이렇습니다.
-끄면 기능이 꺼집니다 켜면 기능이 켜집니다. 패턴의 내용은.. 우리가 다 알아서 할게요.

 뭐 알아서 잘 해 준다니 고맙군요.
 구체적으로는
 https://technet.microsoft.com/ko-kr/library/ee617165(v=ws.10).aspx
 이런 규칙으로 등록을 해 준다고 합니다.
 그러니까 제 시스템 에서는 192.168.1.30 을 찾는 ARP나 컴퓨터 이름인 "NAS"를 찾는 NETBIOS 이름 퀴리가 오면 꺠우겟다는 겁니다.
 그런데 잠깐만요 hyper-v에 내장된 VM에 대한 접근 시도는 192.168.1.30이 아니라 192.168.1.31로 들어오는데요??
 뭐 Hyper-v는 윈도우즈 빌트인 하이퍼 바이저니 자동으로 패턴을 등록해 주겠죠?

 아니였습니다 그런 영리함을 전혀 없엇고 심지어 windows 10에서는 아무런 고지도 없이 원칙이 변했는지 ARP는 등록도 되지 않아서 넷바이오스 네임 퀴리만 nas를 깨울 수 있더군요.

 근데 여기서 빡치는 점은 어디를 둘러 봐도 수동으로 설정할 수 있는 옵션을 찾을 수가 없다는 겁니다. 아무리 검색을 해 봐도요.
 
 옵션은 커녕 등록을 하고 싶었는데 실패한 건지 등록은 안하는건지 아무것도 알려주지 않습니다. 뭐가 문제인지도 찾을 수가 없어요.. 처음에는 드라이버가 원흉인줄 알았는데
 나중에 알고 보니 드라이버는 멀쩡 하더군요.


 징징 거림은 여기 까지 하고 2번째 문제는 그렇게 빡치지 않게 해결 했습니다.

http://www.hardkernel.com/main/products/prdt_info.php?g_code=G145457216438




요거 하나 사서. NAS 내부에 설치하고 원래 메인보드 내장렌에 연결해주려고 했던 포트를 이 보드에 물려 주었습니다.
그리고 이 보드에 avahi를 설치해서 bonjour(bonjour와 avahi는 같은 프로토콜을 사용하고 호환이에요...) 신호를 대신 뿌려 주도록 만들었습니다.

실재 AFP 서비스를 재공하는 NETATALK가 설치된 ubuntu vm 에서는 bonjour 신호를 꺼버렷고요..

겸사겸사 항상 켜저 있어야 하면서 성능 별로 필요 없는 PXE 서버 DNS 서버 등등을 여기로 옮겼고 전원은 파워 서플라이에서 나오는 5v 상시전원에 연결해 주었습니다.

예 돈이 최고네요...

 



신호가 잘 잡힙니다...


이제 남은 문제는 WAKE ON PATTERN MATCH 부분인데.... 이건 다음 글에 적겠습니다.. 어째서인지 글이 길어지니 키가 씹히고 입력이 잘 안되네요..


ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
NinaDobrev 2016-07
¾È³çÇϼ¼¿ä. ±Û Àß ºÃ½À´Ï´Ù!
2´Þ·¯ 10G nic¸¦ ¾ð±ÞÇØÁ̴ּµ¥, ¾î¶²°ÇÁö ¸»¾¸ÇØÁÖ½Ç ¼ö ÀÖÀ¸½Å°¡¿ä?
     
isaiah 2016-07
20´Þ·¯ ¾È¹Û¿¡ À̺£ÀÌ¿¡¼­ Ç®·È´ø ¸á¶ó´ª½º 10G ¾îµªÅÍ°¡ ÀÖ½À´Ï´Ù..
 ¿©±â¼­ ±×°É »ç½ÅºÐµéÀÌ ²Ï ¸¹¾ÒÁÒ.. ÂÁ..
°¨»çÈ÷ Àß º¸°í °©´Ï´Ù


NAS
Á¦¸ñPage 218/307
2014-05   4947999   Á¤ÀºÁØ1
2015-12   1484690   ¹é¸Þ°¡
2016-07   6080   ³ª³ëÅ¥ºê
2016-07   6545   ¿©¼ö21
2016-07   14989   ³ª³ëÅ¥ºê
2016-07   7987   ³ª³ëÅ¥ºê
2016-07   5128   »õÃÑ
2016-07   21387   iambori
2016-07   4403   mkprint
2016-07   4429   86±èÅ¿µ
2016-07   11768   N54L
2016-07   6362   ½Âö22
2016-07   6816   isaiah
2016-07   4285   ±ë¶Ç±ø
2016-07   5499   ºÀ´ÞÀÌ
2016-07   3784   sensekuh
2016-07   6533   °³±¸Àï
2016-07   4594   »õÃÑ
2016-07   7883   »õÃÑ
2016-07   6952   Acura
2016-07   5199   Æ۽̱Û
2016-07   9500   È£ÀÌÈ£ÀÌÈ£