Daybreakin Things
드디어 Daybreakin 서버의 업그레이드 작업이 거의 완료되었다. 아직 완벽하게 복구가 끝난 것은 아니지만 이곳에서 호스팅하는 주요 웹사이트들은 모두 정상 작동하는 것 같(?)다. 이번 업그레이드를 통해 메모리가 1GB에서 3GB로 늘어났고, 320GB짜리 하드디스크가 추가 장착되었다.
원래 이 업그레이드를 하게 된 가장 큰 이유는 Ubuntu 6.06을 최초로 설치했던 것을 6.10, 7.04, 7.10으로 계속 업그레이드해오다가 8.04로 넘어가려니까 /boot 파티션 용량이 모자라서(...) 업그레이드에 실패했고, parted 프로그램을 이용해 파티셔닝을 다시 할까 하다가 파티션 구조가 좀 답답하게 잡혀 있어서 그냥 확 엎어버리기로 했던 것. 그리고 Ubuntu보다는 Debian이 서버용으로는 아무래도 더 나은 것 같아(뭐라고 객관적인 근거를 대기는 좀 그렇고 데비안이 워낙 안정적이라고 하다보니..) 이쪽으로 새로 설치해버렸다.
Debian의 경우 현재 4.0r4까지 stable release가 나와 있지만 패키지 버전들이 좀 낮다는 게 단점이었다. 하지만 주변을 수소문해보니 lenny testing 버전도 안정적이고 쓸 만하다고 해서 그쪽 패키지 버전들을 알아봤는데 Python 2.5 + Trac 0.11.1 + Django 1.0 + PHP 5.2.6 등 각종 최신 패키지들을 모두 가지고 있었다. (특히 Trac은 업데이트 빠르다는 Ubuntu의 8.04 릴리즈에서도 0.11까지는 올라가지 않았을 정도.) 그래서 이걸로 콜~
하드웨어 업그레이드만 하면 부품을 그냥 호스팅회사로 택배부쳐버리면 되지만 OS 재설치 작업 및 특히 백업데이터를 새 하드에 옮겼다가 다시 가져오고 파티셔닝하는 것을 작업의뢰서로 남겨주기보다는 직접 하는 게 낫겠다 싶어서(또 간단한 상태 확인이나 리부팅이 아닌 OS 재설치 정도를 요청하면 유료 서비스가 된다는 점도 있고) 처음으로(!) IDC에 가봤다.;;;
내 서버는 분당 KT IDC에 있는데, 야탑역 4번 출구로 나와 왼쪽으로 꺾어 주욱 직진하면 코리아 디자인 센터 바로 앞에 생각보다(?) 작고 뚱뚱한 건물이 하나 있는데 그것이 바로 IDC다. 들어가면 방문자 등록을 하고 방문 회사의 부서와 담당자 이름까지 적어야 한다. 그러고나면 신분증을 맡기고 방문카드를 받게 되는데 이게 없으면 나오지도 못하게 되어있다; 카드 찍고 들어가면 첫 방문인 경우 지문 등록을 하고, 지문 인식기를 통과하면 엘레베이터를 탈 수 있는데 이것 또한 방문 카드가 있어야만 작동 가능하다. 엘레베이터에서 내려서 조금 걸어가면 바로 영화에서나 보던 그런 서버 랙들이 잔뜩 있는 방이 나오는데 여기 들어갈 때도 역시 방문카드와 방문카드에 적힌 별도 비밀번호가 있어야 한다. (실제로는 영화에서보다 더 좁고 더 많고 더 덥고 더 시끄럽다. -_-)
호스팅 회사라서 더 그런지는 모르겠지만 생각보다 좁은 공간 안에 최대한 많은 서버들을 우겨넣느라(...) 통로는 사람 하나가 딱 지나갈 수 있을 정도였다. 아무튼 수많은 서버들로 둘러쌓인--아마 반경 4~5m 이내에 서버 100개는 족히 될 듯--작은 공간이 하나 있고 여기에 콘솔과 인터넷 연결 가능한 PC 몇 대, 하드웨어 점검·교체 작업 등을 위한 작업대가 놓여져 있다. 아무튼 인솔해준 담당 엔지니어 분이랑 서버를 꺼내러 갔는데 하여간 정말 서버가 많았다;;; 중간중간 에어컨 시설이 되어 있는지 시원한 바람이 느껴지는 곳도 있었지만 워낙 많은 컴퓨터가 있었기 때문에 긴팔 입고 있기에는 살짝 더운 정도. 내가 쓰는 호스팅회사의 경우 렌탈서버 상품을 신청하면 직접 조립해서 2U짜리 서버를 만들어주는데 오히려 얘네들은 비교적 조용했지만 유명 업체들에서 만든 것으로 보이는 1U짜리 서버들은 정말 시끄러웠다. 애초부터 가정용이 아니라 IDC용이라 그런지 소음 따위는 전혀 신경쓰지 않고 만든 것 같다. 작업대 뒤쪽에 있는 랙 윗부분에 그런 서버들이 몇 개 있었는데 그 소음 때문에 평상시 목소리로는 대화가 힘들 정도였으니 뭐.;;
드디어 2년여 동안 고이 박혀있던(...) 날뷁서버(...)의 본 모습을 볼 수 있었다. 자체 제작한 것으로 보이는 2U짜리 케이스에 데스크탑용 메인보드를 이용해 만든 것인데 공간 활용을 잘 해서 그리 크지는 않았다. 2U으로 만들 수밖에 없었던 가장 큰 이유는 아마 메인보드 구조와 CPU 쿨러 때문이 아닐까 싶다. (사실 스팍스 동방에서도 2U 이상 서버들을 주로 써왔는데 1U짜리는 도대체 어떻게 쿨러를 다는지 궁금하다-_-) 조립 서버라고 하면 왠지 신뢰성이 떨어질 것 같지만 상당히 많은 서버가 이렇게 운영되고 있었고 내 서버 또한 하드웨어적인 문제가 발생했던 적은 한 번도 없으니 조합을 잘 맞춘 듯하다. (호스팅회사에서 상품 출시 전에 그 하드웨어 조합으로 엄청난 부하 테스트를 거친다고 한다. 예를 들면 1주일 내내 풀로드 가동시키기 등.)
아무튼 RAM과 하드디스크 장착은 금방 끝났고, 부팅해서 적당히 마운트해준 다음(집에서 미리 ext3로 파티션 나눠서 포맷해갔기 때문에 쉬웠다) 백업 데이터들을 옮겼다. 역시 네트워크로 옮기는 것보다 내부 하드로 복사하는 게 훨씬 빠르다;; 10분만에 백업 끝내고 드디어 데비안 설치. 설치야 뭐 이미 여러 번 해봤으니 자세한 내용은 생략. 파티셔닝은 앞으로 업그레이드할 때 용량 걱정할 일 없도록 간단하게 나눠주었다. 이때 옆에 있던 컴퓨터로 집 컴퓨터에 원격접속해서 미투데이에 글 하나 남겨주고; (담당 엔지니어가 항상 옆에 있는 건 아니고 서버 꺼내는 등의 작업만 도와주고 나머지는 내가 거기서 알아서 하면 된다. 사실 이럴 때 IDC 테러하면 어떻게 될까 하는 상상도.. 뒤에 있는 랙 몇 개 랜선만 주르륵 뽑아도 아마 난리날 거다. ㅋㅋ 물론 감시카메라 같은 거 다 있겠지만.)
작업 다 끝났다고 생각하고 담당 엔지니어 분을 불렀는데 가만보니 sshd가 안 깔려있어서 네트워크 설정 바꿔서 깔아주느라 삽질. (공인IP는 그 랙에서만 쓸 수 있고 작업대에서는 별도 사설IP를 쓴다.) 우분투에서는 /etc/init.d/networking restart로 되는데 여기선 ifdown, ifup으로 해줘야 했다. 어쨌든 이렇게 해서 다시 랙에 장착한 후 PuTTY로 접속 확인한 다음 집으로 돌아왔다. (dPuTTY를 소개해주고 싶었지만 그게 이 서버에 있었던 관계로...-_-)
생전 처음 해보는 IDC 구경(...)이라 긴장도 되고 정말 말로만 듣던 게 실제로 보니 이렇구나 하는 감탄도 했지만 정말 거기서 매일 들락날락하는 직원분들은 꽤나 괴로울 것 같다. 냉방이 잘 되어 있어서 열기는 큰 문제가 안 되나 그 엄청난 컴퓨터들이 뿜어내는 팬 공기와 소음은 정말 거기에 몇 시간만 있다가는 노이로제에 걸리게 할 정도다. 집에 돌아와서도 한동안 한 것도 없는데 괜히 피곤한 것 같고 머리가 아플 정도였으니... 그래도 담당자 분이 굉장히 친절하게 잘 해주셔서 별다른 문제 없이 작업을 끝낼 수 있었다. (중간에 어디서 오셨냐고 물어보길래 그냥 학생이라고 했더니 어디 과냐고 해서 카이스트라고 하자 명함 교환을 하자셨었다.;; 서버 조립을 취미삼아 하다가 IDC에서 일하게 되셨단다.)
조만간 CPU도 듀얼코어급으로 업그레이드할 생각인데 그러면 좀더 쓸만한 서버가 될 것 같다. 최근 들어 Apache의 CPU 사용량이 많이 늘어나 작업 중 버벅이는 경우가 종종 있었는데 그런 것도 줄어들 수 있을 듯. 서버야, 달려라;;