카카오에 처음 들어가서 리눅스와 웹서버를 다루는 일을 처음 해봤습니다.
2012년.

개발 서버가 겨우 한 대 있었다는 것에 놀랐던 기억이 납니다.
서버 이름이 아직도 기억납니다. sun024
아파치. CentOS 5. 메모리는 8기가였나 4기가였나.

여기에 카카오톡 서버가 올라갔습니다. 카카오 스토리 서버도.
이모티콘 서버도 올라갔습니다. 그리고 또 뭐가 있었더라? 카카오 계정 서버?
회사 내에 있는 모든 서버가 이 한 대에 올라갔습니다.

CentOS 5에는 SNI라는 것이 기본으로 지원이 안 돼서 여러 도메인을 서빙하려면 귀찮은 짓을 좀 해야 했던 걸로 기억합니다.
그런 귀찮은 짓을 다 하고 서버가 세팅되어 있었습니다.

카카오톡은 이미 성공했고, 카카오 스토리도 순식간에 천만 사용자를 넘었을 때였습니다.
서비스별로 분리해서 서버 한 대씩 써도 될 것 같은데 이걸 아직까지 이렇게 쓰고 있네?

이런 사람들은 흔치 않았습니다.
다들 회사 돈을 별생각 없이 썼으니깐.
서버 두 대만 있으면 될 것 같은데 10대를 달라고 했습니다.
이유는 ‘혹시 모르니까’.
aws small 인스턴스로도 충분할 것 같은 서비스를 2xlarge 로 만들었습니다.
‘너무 작은 거 쓰다가 서버 죽으면 어떡해요’.

그래서 속으로 기뻤습니다.
와, 이 사람들 너무 좋다.
돈 아끼려는 근성이 남다른걸.
졸라 stay hungry 하군.

2012년 카카오톡
2012년의 카카오톡 모습

개발 서버 한대에 모든 앱이 올라가있으니 잘못 건드려선 안 됐습니다.

어느 날 저녁.
서버들이 잔뜩 올라가 있는 그 개발 서버의 apache 설정을 고치고 restart 했다가 모든 서버를 내려버린 적이 있습니다.
“테스트도 안 하고 그냥 막 껐다 켜는 거니?”
팀장님이 화가 나서 저에게 말했습니다.

아파치는 Configuration 테스트를 하는 기능이 있습니다. nginx에도 물론 있고요.
-t 옵션으로 설정이 문제없는지 미리 확인한 다음 서버를 껐다 켜야 하지 않냐는 질책이었습니다.

그때는 몰랐습니다.
웹서버를 다루는 것에 익숙하지 않았거든요.

제가 해본 웹 경험이란..
대학생 때 ASP로 홈페이지를 만들어서 Windows의 IIS 서버에 올려 본 것이 전부.

서버 개발 경험은 있었지만 항상 서버를 손수 만들어 사용했습니다.
그런 저에게 nginx(웹 서버)에 puma나 unicorn(앱 서버)를 연결해서 그 위에 루비 온 레일즈(애플리케이션)를 얹는 환경은 낯선 환경이었습니다.

그때 시간이 저녁 여덟 시가 넘었을 겁니다.
저녁밥을 먹고 돌아와서 였으니까.

사실 서버를 꼈다 켜기 전 고장날 것 같다는 생각이 들긴 했습니다.
불안했지만 그냥 껐다 켰던 겁니다.
어차피 다 퇴근했을 텐데. 누가 이걸 보고 있겠어. 잘못되면 빨리 고치지 뭐.
그런데 이게 웬걸.
서버가 내려가자마자 곧바로 아지트와 카톡을 통해 이팀 저팀에서 메시지들이 날아오기 시작했습니다.
“지금 서버 꺼졌나요?”
“갑자기 api가 안 되는데요.”

이 시간에 이렇게 많은 사람들이 작업하고 있다는 것에 놀랐습니다.
잠시 식은땀이 났지만 문제를 해결한 후 곧 기분이 좋아졌습니다.

이 회사는 분명히 잘될 거야.
이런 사람들하고 일해서 너무 좋다.

카카오 역삼 카페톡

함께 읽으면 좋은 글: