3D 프린터로 만든 10인치 서버 랙
장비의 변화 과정
2022년부터 Mac Studio M1 Max를 메인 장비로 사용하고 있었다. 이전에는 카페나 외부에서 작업할 일이 많아서 항상 MacBook Pro를 메인 장비로 썼다. 하지만 집의 작업 환경이 좋아진 뒤로는 굳이 나가지 않게 되면서 Mac Studio를 메인으로, MacBook Air를 휴대용으로 쓰는 구성으로 바뀌었다.
예전처럼 개인 작업을 많이 하진 않다 보니 성능에 큰 불만 없이 잘 쓰다가, 작년에 모니터를 LG 40U990AW로 바꾸었다. 이 모니터는 5K2K를 지원하는 모니터인데 이를 연결하니까 120Hz가 나오지 않았다. 정확히는 기존에 쓰던 32인치 4K 모니터랑 듀얼로 연결해 두었는데 5K2K 모니터에 120Hz를 설정하면 너무 느려서 컴퓨터를 사용할 수가 없었다. 비싼 모니터를 맘먹고 샀는데 성능을 제대로 활용하지 못하는 것 같아 아쉬웠다.
마침 작년 가을쯤 M5 칩을 장착한 MacBook Pro가 나와서, M5 Mac Studio가 나오면 오랜만에 장비를 바꿔야겠다고 생각했다. Mac Studio의 출시 시기를 정확히 예측하긴 어려웠지만 올해 초쯤이면 나오지 않을까 생각했다. 이때는 앞으로 벌어질 일을 한 치도 예상하지 못했다. 3월 이벤트에서도 기대했지만 Mac Studio는 출시되지 않았다.
다들 알다시피 2026년부터 메모리 가격이 엄청나게 오르고 전 세계적으로 공급 부족을 겪었다. Apple은 초여름쯤 대부분의 제품 가격을 올렸고, 로컬 LLM을 중심으로 메모리는 128GB 이상이 기본이라는 얘기가 나오기 시작했다. 로컬 LLM이 아니어도 AI로 로컬에서 뭔가 계속 돌리니까 이전 64GB M1 Max에서도 좀 컴퓨팅이 부족한 기분이 들곤 했다.
컴퓨터 가격이 계속 오르는 걸 보며 '난 도대체 언제 살 수 있는 거지?' 싶었는데, 사이드 프로젝트를 계속하다 보니 로컬에서 쓸 컴퓨터가 더 필요하겠다는 생각이 들었다. 몇천원이지만 호스팅이 계속 늘어가고 로컬에서도 돌리는 서비스가 추가되면서 내가 메인으로 쓰는 장비랑 분리하고 싶어졌다.
M5 Mac Studio는 언제 나올지 몰라서 고민하다가 Beelink SER9 MAX를 구매했다. 오랜만에 Linux도 다시 써보고 싶다는 생각도 들었고 서버용으로 쓰기엔 Mac이 아니어도 되겠다고 생각이 들었다. 원래는 더 높은 사양의 제품을 주문했는데, 품절이라는 연락을 두 번이나 받으면서 사양이 계속 낮아졌다. 결국 메모리가 64GB인 미니 PC를 구매하게 되었다.
구매 후 몇 주가 지나지 않아 1년간 기다리던 M5 칩을 단 Mac Studio가 출시되었다. 결국 Mac Studio M5 Max 128GB를 샀다. 내가 평생 산 컴퓨터 중 가장 비싼 컴퓨터가 되었다. 아이폰이 200만 원을 넘어설 때 '무슨 폰이 맥북 가격이 되었나' 했는데, 이제 맥북은 그 가격으로는 못 사는 시대가 되어 버렸다.
결국 나는 Mac Studio M5 Max 128GB와 Mac Studio M1 Max 64GB, Beelink SER9 Max 64GB 3대의 장비가 생기게 되었다. Mac Studio 2대라고 하면 다들 Ultra라고 생각하지만 난 Max만 2대다. 일단 Local LLM을 실제로 돌릴 생각이 없고 현실적으로 그정도 비용을 투자할 여력조차 없다. 그럼에도 앞으로를 생각하면 128GB 정도는 갖춰야 할 것 같아서 이번에 이것도 큰맘 먹고 샀다.
엄청 큰 투자를 했지만 결과적으론 3대의 장비가 생겼다. 가격만 생각하면 작년에 장비를 바꾸고 싶어졌을 때 M4 Mac Studio를 샀으면 훨씬 쌌을 것이다. 하지만 그 당시라면 128GB 이상의 장비를 사지 않았을 것 같고, M1 Mac Studio도 지금처럼 계속 쓰지 않고 바로 팔아 버렸을 것 같으니 나름대로는 잘 사지 않았나 싶다.
3D 프린터로 출력한 10인치 서버랙
원래는 책상 한구석에 Mac Studio를 올려 두고 썼다. 작년에 산 Bambu Lab P1S 3D 프린터를 종종 쓰고 있었기에, 몇 달 전부터는 책상을 더 넓게 쓰려고 3D 프린터로 트레이 같은 걸 만들어 책상을 정리하고 있었다. 장비가 늘어나다 보니 서버랙을 만들어야겠다는 생각을 했다.

Makerworld에는 서버 랙 모델이 많은데, 내 눈에 띈 것은 위 사진의 모듈형 10인치 서버 랙이었다. 디자인이 깔끔하고 나사로 조립해 튼튼해 보였다. 모듈형이라 원하는 높이로 쌓을 수 있었다. 후기에 올라온 디자인에도 다양하게 변형해서 사용하는 걸 볼 수 있었다.
일단 모든 부품을 다 출력하고 필요한 나사를 구매한 다음에 조립을 해보니 대충 어떤 구조인지를 알게 되었다. 처음에는 그냥 기본 모형대로 쌓고 있다 보니까 좀더 내 장비에 맞게 최적화하고 싶었다.

그래서 Apple 치즈 그레이터 마운트 모델 등을 참고해서 Codex로 설계를 했더니 10인치 랙에 연결할 수 있는 마운트를 만들어주었다.

예전에는 다른 사람이 만든 모델만 써서 제약이 컸다. 올여름쯤부터는 LLM이 3D 모델 설계도 잘해 주어서 원하는 대로 만들 수 있게 되었고, 덕분에 작년에 산 3D 프린터를 엄청 열심히 돌리고 있다.

3D 프린터는 저런 것 하나 찍는 데도 10시간 이상 걸려서 피드백 루프가 길다. 그래서 웹에서 검증해 볼 수 있는 페이지를 만들어 확인하면서 출력하고 있다.

Mac Studio가 2대니까 2개를 올렸다. 평소에는 PLA 필라멘트만 사용하고 있지만 서버랙은 아무래도 열이 신경쓰여서 PETG 필라멘트를 사용했다. 비교표에서도 PETG Basic의 열 변형 온도가 훨씬 높아서 더 잘 버틸 것이라고 생각했다.

Mac Studio를 위한 공간은 마련했으니 Beelink를 넣는 공간을 마련했다. Beelink는 Mac Studio보다 훨씬 작아서 비슷한 트레이의 아래 부분만 사용할 수 있었고 스펙상의 크기를 이용해서 고정되도록 잘 만들어주었다. 물론 중간중간 정확한 사이즈는 내가 재서 알려줬다.

당시에 Remote KVM인 GL.iNet의 Comet X가 배송중인 상황이었다. 연초에 컴퓨터를 원격으로 써 보려고 Comet Pro를 사서 Remote KVM이란 게 어떤 건지 이해한 상태였다. 그 뒤에 크라우드 펀딩으로 판매한 Comet Q의 펀딩에 참여했다. 그리고 펀딩이 끝날 무렵 장비를 4대까지 연결할 수 있는 Comet X를 함께 살 수 있는 옵션이 추가되어 같이 샀다. 사실 제일 마지막에 추가된 Comet X가 제일 좋다고 느껴진다.
장비 3대에 모두 모니터, 키보드, 마우스를 연결하기는 쉽지 않으므로 Remote KVM을 쓰는게 제일 편하다. 사실 Comet X를 살 때는 컴퓨터 구성이 정해지지 않았지만, 잘 샀다는 생각이 들었다. 그래서 여기 연결할 Comet X를 놓을 공간도 마련했다.

이 받침대는 나사로 연결해 잘 고정되도록 만들었다. 제품이 오기 전에 사양만 보고 설계했는데, Comet X를 받았을 때 딱 맞게 들어가서 기분이 좋았다. 바람이 잘 통하도록 뒷부분은 다 개방된 상태로 설계했다.
이 정도까지 왔을 때 서버랙이 이미 꽤 높아져서 잘 버틸지 불안해지기 시작했다. 하지만 조립해 보니 튼튼하게 느껴져서 더 올릴 수 있겠다는 생각이 들었다.
컴퓨터 책상 옆에 AP가 있었는데, 여기에는 유선 포트가 4개 달려 있었다. 이미 2개를 사용 중이어서 새로운 Mac Studio 2대와 Beelink, Comet X를 모두 유선으로 연결하려니 포트가 부족했다. 참고로 거의 쓰진 않지만 가끔 공공기관 서류 발급을 위한 Windows PC가 1대 더 있다. 집 전체에서는 포트가 부족하진 않아서 일부는 신발장으로 연결하거나 하는 방법등이 있었지만 고민하다가 Unifi Flex 2.5G 8포트 스위치를 샀다.
집 네트워크는 다 Unifi로 구성되어 있는데 다 1G로 구성되어 있다. 한번 사면 오래 쓰니까 구성을 업그레이드하기는 쉽지 않은데 고민하다가 이번엔 2.5G를 샀다. 10G는 너무 비싸고 다른 장비까지 바꾸지 않으면 의미도 거의 없다. 그렇다고 1G를 사면 나중에 후회할 것 같았다. 2.5G 스위치를 사면 컴퓨터끼리는 2.5G로 통신할 수 있으니(다행히 Mac Studio와 Beelink는 2.5G를 지원한다) 바로 이득도 볼 수 있다.

스위치의 랜 포트를 앞쪽에 둘지 뒤쪽에 둘지 고민을 많이 했다. 뒤쪽에 두면 연결이 쉽고 더 깔끔하겠지만, 서버 랙 감성에는 앞쪽이 더 어울리는 것 같았다. 연결 상태도 바로 확인할 수 있어 앞쪽에 배치했다. 설계를 여러 번 바꾼 끝에 내구성 등을 고려해 저렇게 2가지 부품으로 나누고, 스위치에서 랜선을 빼서 뒤로 돌릴 수 있게 만들었다. 스위치를 넣는 공간도 나사로 고정하도록 했다. 이것도 배송오기 전에 설계해서 만들었는데 크기가 딱 맞아서 좋았다.
책상 옆 AP로는 Unifi U6 In-Wall을 쓰고 있다. 예전에 다른 사람이 만든 3D 모델로 거치대를 만들어 쓰고 있었는데, 만질 때 생각보다 쉽게 쓰러져서 바꿔야겠다고 생각하고 있었다.


이번에 서버랙을 만드는 김에 공간이 남은 천장에 아예 부착해버리는 형태로 설계했다. 원래 평평했던 천장에 U6 In-Wall의 브래킷을 나사로 고정할 수 있는 구조를 만들었다. U6 In-Wall은 본체 한가운데로 PoE용 랜선이 연결되고 아래쪽에 랜 포트가 있어서, 이렇게 부착하면 뒤쪽으로 랜선을 연결할 수 있다. 아래쪽에는 나사에 손을 다치거나 다른 장비가 긁히지 않도록 나사 보호 캡을 만들어 씌웠다.

다른 사람들의 서버랙 후기를 보면 글자를 넣은 게 많아서 나도 그러고 싶었는데, 설계할 때는 그럴 정신이 없었다. 서버랙을 다 만들고 나니 맨위에 영역이 있어서 천장 커버를 이용해서 글자를 입력해서 깔끔한 서버랙이 완성되었다.
이 서버 랙을 책상 옆 PC 위에 올릴 생각이었는데, 랙이 PC 폭보다 약간 더 컸다. 올라가긴 하지만 상태가 불안해 보여서 잘못하면 쓰러질것 같았다.

그래서 이번에도 이를 고정할 수 있는 받침대를 만들어서 출력했다. 한쪽으로 쓰러지지 않게 PC에 고정하면서 서버랙을 잘 받쳐 줄 수 있도록 상판 공간을 확보했다. 튼튼하게 만들려고 내부도 꽤 채워서 이거 하나 찍는 데도 23시간이 걸렸다.
완성된 10인치 서버랙


내가 3D 프린터로 뭔가 출력하기 시작한 이후 최대 규모의 프로젝트였다. 실제로 작업을 시작해서 완성하기까지 다양한 이유로 여러 달이 걸렸다. 설계하고 바로 출력한 것처럼 설명했지만 실제로는 그렇지 않았다. 웹페이지에서 3D로 돌려 보며 검증하고 출력해도, 막상 실물을 보면 '여기에 밀리지 않게 걸리는 부분이 있으면 좋겠다'거나 '이런 모양이 더 편하겠네' 같은 생각이 들곤 했다.
그리고 3D 출력을 해 본 사람은 알겠지만, 잘 출력되다가도 필라멘트 일부가 제대로 붙지 않고 풀려 마감이 이상해지기도 했다. 벽 같은 부분과의 간격을 잘못 계산해 부품이 끼워지지 않는 등, 출력을 다 하고도 폐기하는 일이 많았다. 물론 중간에 아쉽긴 하지만 다시 출력하기 귀찮아서 그냥 놔둔 부분도 있긴 하다. 나중에 다시 만들면 더 잘 만들 수 있을 것 같다.
결국 서버랙을 다 출력하는 데 필라멘트를 7~8kg은 쓴 것 같다. PETG는 여기 말고는 쓸 일이 없어서 힘을 덜 받는 상단 부분에는 PLA를 쓰기도 했다. 그래도 깔끔하고 튼튼하게 잘 완성되어서 아주 만족스럽다.
Comments