베어본 PC로 새 서버 구축

베어본 PC로 새 서버 구축

PN41과 시대를 역행하는 ASUS 고객센터

옛날 서버들

내 첫 서버는 라즈베리파이로 만들었다. 예산 절감을 위해 있는 걸로 만들다 보니 노트북에서 뜯은 하드와 핸드폰 충전기가 들어 있다. 군대에 가 있는 동안에 계속 켜놓고 파일 서버로 쓸 목적으로 구축했는데, 무슨 일이 생겼을 때 내가 직접 껐다 켤 수가 없기 때문에 아두이노를 달아 강제로 전원을 내렸다 올릴 수 있도록 만들어 놓았다.

하지만 라즈베리파이는 서버로 쓰기에는 좀 구렸다. CPU가 x86처럼 보편적인 아키텍쳐가 아니다 보니 뭘 설치하려면 소스에서 직접 바이너리를 빌드해야 하는데, 컴파일에만 한세월이 걸리는 게 아닌가. 24시간 켜놓기에도 안정성이 썩 좋은 편이 아니었는지, 내 일병 진급과 함께 뻗어버려 다시는 일어나지 못했다.

그래서 휴가중에 집에 있던 데스크탑을 밀고 새로 우분투 서버를 올려 지금까지 써 왔다. 사진의 검은색 자그마한 데스크탑이다. CPU는 펜티엄 E6500인데, 출시 년도가 무려 08년 1분기다. 08년부터 19년까지 자그마치 11년 동안 3D 모델링과 게임으로 혹사당하다 서버로 역할전환을 하고 마지막 2년은 24시간 돌아가는 중노동을 겪고도 멀쩡히 작동한다. CPU가 잘 고장나지 않는다는 말은 진짜다.

하지만 데스크탑용 CPU라 전력 소모가 큰 편이고, 애초에 성능은 말도 못할 수준인데다 너무 구식 CPU라 아키텍쳐가 i686이다. x86_64로만 바이너리가 나오는 프로그램들을 죄다 돌릴 수가 없었다. 같이 쓰는 하드의 수명도 슬슬 걱정이 되어 교체하기로 결정했다. 요즘 AWS가 그렇게 흥하는데 클라우드 서버로 옮겨갈까 생각해 봤지만 얌전히 웹 서버로만 쓸 게 아니기 때문에 요금 폭탄을 피하고자 이전 방식 그대로 물리 서버를 집에 두는 방식으로 운영하기로 했다. 베어메탈에 운영체제부터 깔아서 시작하는 노가다 맛이 또 있다.

원래는 서버 하드웨어로 ZimaBoard라는 킥스타터 펀딩 보드를 사용하려고 했는데, 코로나 여파인지 예상 배송일에서 몇 달이 지나도 발송할 기미조차 없기에 환불 처리하고 다른 걸 사기로 했다. 이것저것 알아보다 보니 비용 절감에 베어본 PC만한게 없는 것 같아서 ASUS의 PN41로 정했다.

서버 구성


에너지 절약 스티커가 아주 예뻐 죽겠다. 바로 뜯어버렸다.

모델 선정에는 이 글이 많은 도움이 됐다. PN41 상세 설명에는 HDD를 1TB 용량까지만 지원한다고 적혀 있다. 1TB짜리 Micro SD도 나오는 세상에 하드를 1테라까지만 인식할 수 있다면 그건 존재가치가 없는 상품이다. 확인하려고 고객센터에 전화하니 더 기가 찬다. 해당 제품의 인식 가능한 최대 용량이 1TB가 맞냐고 물었는데, 고객지원은 상품을 구매한 고객에게만 제공되니 답변을 들으려면 먼저 구매하라는 황당한 답변이 돌아왔다. 이메일로 문의했더니 1TB 이상은 불가능한게 맞단다.

고객센터보다 내 상식이 더 믿을만하고 판단해 그냥 구매했다. 결과적으로 WD의 2TB 하드도 굉장히 매우 멀쩡하게 잘 인식된다. 아니 상식적으로, 그게 안 될 리가 없지 않은가.

진짜 장사할 생각이 있긴 한 건가??? 윗 글 작성자 분의 논평이 너무 적절해 잠시 인용하고자 한다.

ASUS 서비스센터는 앵무새가 되지 말고, 직접 확인을 좀 해보세요. 그러라고 월급 받는 거잖아요?

PN41은 셀러론 N5105 CPU가 탑재되어 있다. 21년 상반기에 출시된 따끈따끈한 CPU다. 이전 서버의 E6500은 2.9GHz 듀얼코어에 65W의 TDP를 가지는데, 얘는 2GHz 4코어에 10W TDP다. 그 와중에 싱글코어 벤치마크가 E6500을 압도한다. 내가 초등학생에서 복학생으로 진화하는 와중에 세상도 참 많이 발전한 것 같다. CPU와 메인보드, 파워가 내장되어 있는 베어본 PC이므로 구매해서 달아야 할 것은 저장장치와 램이 전부다. 4GB 노트북 램과 운영체제용 128GB PM981 M.2 SSD, 저장용과 백업용으로 2TB HDD를 2개 구매해 총 50만원 가량이 들었다. 역시 하드 비용이 제일 부담스럽다.

OS는 Ubuntu Server 20.04를 올렸고 예전 서버에 있던 서비스를 그대로 옮겨 담기 위해 Node.js v14와 NGINX, MariaDB를 설치하…려고 했는데, 네트워크 드라이버가 없어 인터넷을 전혀 잡지 못했다. 인터넷에 접속하기 위해 랜카드 드라이버를 인터넷에서 다운로드하려는데, 인터넷이 안 된다.


무한 루프

내 데스크탑에 깔아둔 우분투에서 패키지를 다운로드하고 USB로 옮기려 했는데, 데탑 우분투도 똑같은 문제로 인터넷이 안 되는게 아닌가. 깔아만 놓고 써 본 적이 없으니 이런 불상사가 생긴다. 그냥 속편하게 핸드폰과 USB 테더링으로 연결하면 인터넷이 잘 된다.

참고한 글에서는 CPU와 NVMe 온도로 인한 팬 소음이 심각하다고 하는데, 내 CPU는 워낙 저성능이라 그런지 딱히 그런 문제를 느끼지는 못했다. 다만 htop으로 보고 있으면 CPU load가 걸릴 때 thermald 서비스가 올라오는 것이 쓰로틀링이 걸리기는 하는 것 같다. 어차피 메인 데스크탑 안에 집어넣어 쓰는지라 소음이 그렇게 큰 문제가 되지 않아 thermald는 꺼버렸다. 어차피 제대로 작동하지도 않더만.


빅타워 케이스에 들어가면 아담하기 그지없다.

결론

이 서버는 개인 파일 클라우드와, 지금 보고 있는 이 웹사이트를 비롯한 몇 개의 소규모 서비스 호스팅, 백엔드 API 서버 등등을 돌리고 있다. 이 정도로는 N5105도 충분히 차고 넘친다고 생각된다. 전원 어댑터도 미지근한 것이 전력 소모는 확실히 작다고 생각된다. 안정성은 조금 더 지켜봐야 알겠지만, 일단은 베어본 PC로 서버를 구축해도 개인용으로는 충분히 차고 넘치는 것으로 보인다.