개발자 도시 전설
21세기 초에 접어들 무렵, Initrode Global의 서버 인프라는 균열을 보이기 시작했다. 서버실에 들어간 사람이라면 누구나 그 성장 과정이 즉흥적이었다는 것을 바로 알 수 있었다. 랙마운트 서버 옆에는 재활용한 워크스테이션이 놓여 있었고, 케이블들은 케이블 타이로 대충 묶여 있을 뿐이었다. 누군가 정리하려고 애쓴 흔적은 있었으나, 그 노력은 반쯤에서 포기된 듯했다.
보기엔 형편없었지만, 이 구조는 오랫동안 돌아갔다. 시간이 지나면서, 신용 처리 기관과 통신하기 위한 독자적인 게이트웨이 서버가 점점 더 잦게 다운되기 시작했다. 그것도 아주 안 좋은 방식으로 — 핑에도 응답하지 않고, 관리자 에릭이 수동으로 재시작 버튼을 눌러야 하는 수준이었다. 에릭이 근무하는 40시간 동안은 별 문제가 아니었지만, 신용 조합 측은 이 서버가 24시간 항상 가동되기를 원했고, 데이터센터에 24시간 상주 직원을 둘 생각은 없었다. 문제는 갈수록 심각해졌고, IT 매니저인 로라가 회의를 소집했다.
“자, 우리가 할 수 있는 게 뭐가 있을까요?” IT 매니저 로라가 물었다. “개발팀에서 이 문제를 해결할 수 있나요?”
“아뇨,” 개발팀이 답하기도 전에 에릭이 나섰다. “문제는 서버 자체에서 오는 거지, 우리 소프트웨어 문제가 아니에요.”
“그럼 지원 계약은 언제 끝났죠?”
“2년 전에 끝났어요.”
“좋군요. 그리고 지금은 예산 동결 상태라 이 장비를 교체할 수도 없고…” 로라는 난처했다. “그럼 지금 상황에서 우회 방안이라도? 서버가 다운되면 어떻게 하고 있죠?”
“현재는 제가 수동으로 재시작 버튼을 누르고 있습니다.”
“좋아, 예산 승인 받을 때까지 기다리는 수밖에 없겠네요. 당장 24시간 가동해야 하는데… 다른 아이디어 없나요?”
회의실은 순식간에 조용해졌고, 모두 시선을 피했다. 에릭은 서버에 주기적으로 핑을 보내 응답 없을 시 알림을 주는 스크립트를 돌리고 있었지만, 결국 다운되면 수동으로 재시작해야 했다. 원격으로 해결할 간단한 방법이 없었다.
“관리자 로봇을 하나 만들까요?” 에릭이 농담을 던졌다.
몇 시간 뒤, 에릭은 다시 데이터센터에서 재시작 버튼을 누르고 있었다. 회의는 실질적인 해결책 없이 끝난 상황이었다. 그때 로라가 방에 들어와 에릭에게 말했다.
“아까 회의에서 로봇을 만들자고 했잖아.” 로라는 진지한 듯 보였다. “그거 진짜 할 수 있을까?”
“음, 그냥 농담이었는데… 전 회로나 로봇 만드는 거 몰라요.” 에릭은 로라의 반응을 살피며 진지한 듯 아닌 듯 대답했다.
그때 마침 에릭의 컴퓨터는 그가 굽던 디스크 이미지 DVD를 배출하고 있었다. 말도 안 되는 생각이 떠올랐지만, 입 밖에 내긴 민망했다. 그래도 웃음을 참을 수 없었다.
“뭐가 웃긴데?” 로라가 물었다.
“아니, 별 거 아니에요. 바보 같은 생각이에요.”
“우린 절실해. 무슨 생각인데?”
“진짜 말도 안 되는 생각이에요.” 에릭이 한숨을 쉬었다. “옛날 PC의 CD-ROM 드라이브를 이용해서 이걸 꺼내서 재시작 버튼을 누르게 하는 거죠. 완전 터무니없죠.”
“잠깐,” 로라가 말했다. “그게 정말 가능해?”
에릭은 또다시 어색해졌다. 하지만 그녀가 진지해 보였으니 그냥 솔직히 말했다. “음, 네, 할 수는 있는데… 최고의 해결책이라고 할 수 없죠. 서버들을 정확히 배치해야 하고, 높이나 각도도 맞춰야 하고, 핑에 응답 없을 때 CD-ROM 드라이브를 꺼내도록 스크립트도 바꿔야 하거든요.”
결국 에릭은 그날 오후 내내 그 짓을 하고 있었다. 그는 오래된 PC를 구해 스크립트를 수정했다. 2분마다 서버에 핑을 보내 응답 없으면 CD-ROM 드라이브를 꺼내도록 했다. 두껍게 쌓은 전화번호부 책으로 높이를 맞추고, 서버를 딱 알맞은 위치에 세팅했다. 설치 내내 로라가 어디선가 “농담이었어!” 하고 튀어나올 줄 알았지만, 그러지 않았다. 마침내 에릭은 일어나서, 부끄럽지만 자기 작품을 감상했다. 그는 “ITAPPMONROBOT”이라는 라벨을 붙이고, 아래에 “DO NOT MOVE”라고 크게 밑줄까지 그어 적었다.
수년 후, 에릭이 떠난 뒤 그 고장 난 서버는 새 IP 주소로 동작하는 새로운 서버로 교체되었다. 그 과정에서 ITAPPMONROBOT은 서버실 한 구석으로 치워졌고, 다시 전원이 들어간 채 방치되었다. 그 후 마지막 몇 주 동안도 이 장치는 2분마다 CD-ROM 드라이브를 꺼냈다. 더 이상 도달할 수도 없는 재시작 버튼을 향해 헛되이 손을 뻗으며 말이다.
2007-12-18, https://thedailywtf.com/articles/itappmonrobot
