읽는데 4 분 정도 걸려요
2021년 3월 3일 오후 3:44에 작성됨.

예전에 말한 대로 이 블로그는 오드로이드에서 돌아가고 있었다. 아무리 요즘 Arm서버 Arm서버 한다지만 저런 SBC에서는 간단한 서비스 정도 이상을 바라기는 힘들었고 홈서버에서 요구하는 기능이 점점 많아짐에 따라 (마크서버 돌려달라는 친구도 있었고!) Arm 기반 SBC에는 점점 한계가 다가오게 되었다. 그래서 로드율이 커져서 팬을 거의 항상 돌리는 처지가 된 오드로이드를 해방시켜 주는 것과 겸해서 홈서버를 X86 기반으로 이전하기로 하였다.

전력을 풀파워로 끌어봐야 20W 남짓한 Arm SBC에 비해 X86은 기본적으로 전기를 많이 잡아먹기 때문에 전기세의 압박을 피하기 위해서는 저전력에 초점을 맞춰야 했고, 24/7 켜놓아야 하니 저소음에도 초점을 맞춰야 했다. 그래서 이런 조건을 맞추면서도 적절하게 쓸만한 성능을 내는 시스템 구축이 이번 일의 목적인 것이다.

하드웨어

처음에는 중국에서 많이 풀리는 저전력 제온 시스템 기반을 생각했었다. 하스웰 제온이나 스카이레이크 제온같은 저전력 프로세서는 전기를 적게 먹으면서도 나름 검증된 물건이니 여러모로 쓰기 좋은 프로세서일 것이다. 예를 들어 E3-1240L v5 같은 친구들을 생각했었다.

근데 지인이 자기 데스크탑을 라이젠 3600으로 바꾼다고 라이젠 2400G를 사가라는 게 아니겠는가. 그래서 대충 9만원을 주고 2400G를 사왔다. 대충 4코어 8스레드니까 내가 원하는 범위 안에서는 그렇게 무거운 (인코딩이나 머신러닝을 잔뜩 굴리는 등의) 일의 일을 하지 않는 이상 충분히 잘 돌아갈 것이다.

예상되는 사용 용도에 마인크래프트 서버가 있고, 컨테이너에 꽤나 많은 서비스들이 올라갈 예정이라 램의 용량을 중요시했다. 그래서 램의 용량은 일단은 16GB로 맞추고, 필요시 확장하기로 했다. (결국 그 후에 추가로 꼽아서 32GB가 되었다.) 기존에 쓰던 오드로이드의 램 용량이 2GB인 걸 감안하면 충분히 써먹을 만한 램 용량이 될 것이다.

메인보드는 그렇게 PCI 레인이나 고급 기능이 필요하지는 않았기 때문에 A320 보드로 잡았고, 파워는 소모전력 60W 이내라면 제로팬이 되는 모델로 잡았다. (아마 이 시스템이 60W가 넘는 것은 극히 일부의 시간일 것이다.) 그리고 메인 스토리지는 집구석에 굴러다니던 WD 그린 SSD를 써먹기로 했다. (리퍼몰에서 2만원쯤 주고 사왔었다.)

그리고 케이스는 랙마운트도 고려해 봤으나, 아직 랙에 올릴 만큼 다양한 장비들을 들일 계획이 없고, 저소음과 최대한 싼 가격을 위해 적당한 앱코 Ncore 사일런티를 사용하였다.

소프트웨어

조립하는 과정 중에 CPU 핀이 휜 것이 와서 용산 다녀오는 등의 자잘한 사건은 뒤로 하고, 일단은 OS로 ESXI를 깔았다. 바로 서버용 우분투 같은 것을 깔아서 쓰는 것도 생각해 봤지만 기존에도 OS에 작업하다 뻑나면 고치는 수고를 들이기가 좀 싫었기 때문에, 그리고 한 서비스가 다른 서비스에 영향을 필요 이상으로 주는 게 싫었기 때문에 (특히 포트 겹치는 것) VM을 기반으로 한 시스템을 구성하기로 하였다.

VM은 총 3개를 설치하기로 했다. 하나는 기존 오드로이드가 하고 있던 아주 중요한 용도인 NAS와 라즈베리 파이에서 돌아가던 Adguard Home을 담당하는 VM, 다른 하나는 Docker기반으로 각종 서비스를 돌리는 VM. 그리고 다른 하나는 마인크래프트 서버용 VM이다. OS는 NAS용 VM은 해놀로지나 여러 다른 NAS 솔루션들을 고려해 봤으나 관리소요(특히 업데이트!) 같은 걸 하기 싫어서 간단히 데비안을 깔아놓았고 (돌아가는 서비스 자체가 거의 없으니 업데이트를 자동화 돌려도 되지 않을까?), 나머지는 우분투 서버를 깔았다.

뭐 그래서 결론적으로 이 블로그는 이제 X86서버에서 돌아가게 되었다. 예전에는 로딩 시간이 좀 걸렸었지만 지금은 링크를 누르자 마자 바로 렌더링하는 걸 보니 Cloudflare때문에 생기는 딜레이 정도가 아니면 거의 딜레이가 없어졌다. 예전에는 성능부족때문에 돌리지 못했던 GitLab이나 나스에 넣어놓은 사진 정리용 LibrePhoto와 같은 것들을 쉽게 돌릴 수 있게 되었으니 앞으로 써먹을 거리가 좀 늘 것이다.

Todo

사실 여기까지 왔으니 거의 원하던 것들은 다 갖춰졌지만 장기적으로 더 신경쓸 것들이 있는데, 대부분은 네트워크 문제이다. 지금 쓰고 있는 공유기가 openwrt 깔린 TP링크의 아처C50인데, 이 친구는 싸서 좋기는 하지만 내부망이 기가비트가 아니라 100Mbps짜리니 내부망에서 쓸 때는 조금 문제가 생긴다. (VM간 통신도 이와 비슷한 이유가 있다. ESXI에 pfsense를 까는 선택지도 있었으나 지인이 굴리던 서버가 터지니 집 인터넷 전체가 망했더라 하는 이야기를 들으니 이 선택지는 자연스레 소멸하였다.) 그래서 이를 대체할 공유기를 물색해야 하는 상황에 놓였는데, 아마 미크로틱의 물건을 사지 않을까 생각한다. 다른 것은 랜카드인데, 보드 내장의 리얼텍 랜 칩셋은 ESXI단에서 지원하지도 않고, 여러 포트가 있는 것이 좋으니 아마 인텔 랜카드 (대충 2포트 남짓)를 사지 않을까 생각한다.

다른 하나는 SSD인데, ESXI의 특성상 바로 쓰는 것보다는 스토리지를 더 필요로 한다. 240기가짜리 WD Green으로는 지금 수준으로 쓰기엔 충분하나 윈도우 VM같은 걸 추가하기에는 애로사항이 생기기 때문에 500기가정도를 더 땡기는 것을 고려해보고 있다. 아마 업그레이드를 하면 다음에 글을 추가로 쓸 기회가 있을 것이다.