[지난 이야기] kill -9이라는 강제 종료의 칼을 빼든 뒤에야 비로소 평화가 찾아왔습니다. 1분마다 4GB씩 차오르던 지옥 같은 숫자들이 멈춘 순간, 뒤늦게 도착한 응용팀의 뻘쭘한 표정... 하지만 이 '종결' 뒤에는 인프라 아키텍트의 치밀한 히스토리가 숨어 있었습니다.
👉 [[시즌 2-56편] "죽지 않는 좀비 프로세스와 4GB의 사투" 다시보기]
1. "내가 죽인 게 진짜 맞습니까?" – 영역을 넘나든 이유
앞서 말씀드린 대로 저는 응용 어플리케이션 담당자가 아닙니다. AA가 "프로세스 재기동하세요"라고 가이드를 던졌을 때, 사실 저는 고민에 빠졌습니다. 내 담당이 아닌 프로세스를 명령어로 내렸을 때, **'정상적으로 종료되었는가'**를 확신할 데이터가 제게는 없었기 때문입니다.
인프라 엔지니어에게 '대충 죽었겠지'라는 짐작은 곧 100% 장애라는 재앙으로 이어집니다. 그래서 저는 체면을 치우고 AA에게 집요하게 물었습니다. "제가 지금 죽인 프로세스를 ps -ef | grep으로 잡았을 때, 정확히 어떤 키워드가 남아야 '완전 종료'로 판단할 수 있습니까?"
2. 히스토리의 재구성: 왜 kill까지 가야 했나
단순히 제가 성격이 급해서 kill을 날린 게 아닙니다. AA가 알려준 키워드로 확인해 보니, 소프트웨어적인 종료 명령어(stop)를 내렸음에도 해당 프로세스는 여전히 메모리를 점유하며 **'좀비 상태'**로 버티고 있었습니다.
이 히스토리가 중요한 이유는 하나입니다. 정상적인 명령어로는 이 폭주를 막을 수 없었다는 증거이기 때문입니다. 제가 이 디테일을 놓치고 "명령어 내렸으니 됐겠지"라고 방관했다면, 응용팀이 현장에 도착했을 때 NAS는 이미 사망 선고를 받았을 겁니다. 아키텍트의 '확인 강박'이 시스템의 골든타임을 지켜낸 셈입니다.
3. 밝혀진 민낯: 솔루션 버그라는 결론
결국 이 모든 소동의 원인은 **'솔루션 자체의 심각한 버그'**로 밝혀졌습니다. 특정 임계치를 넘어서면 프로세스가 자폭하듯 무한 루프를 돌며 쓰레기 데이터를 NAS에 쏟아붓고, 심지어 자신을 종료하라는 명령조차 무시하도록 설계된 치명적인 결함이었습니다.
네트워크 담당자가 "껌"이라 비웃고, 응용팀이 "인프라 문제"라며 떠넘겼던 그 시간 동안, 인프라 아키텍트는 남의 집 프로세스 내부까지 들여다보며 이 '괴물'과 싸우고 있었던 것입니다.
📖 오늘의 인프라 묵상
"지혜로운 자의 마음은 그의 입을 슬기롭게 하고 또 그의 입술에 지식을 더하느니라" (잠언 16:23)
모르는 것을 부끄러워하지 않고 "정확히 무엇을 확인해야 하는가"라고 묻는 슬기로움이 결국 진실을 밝힙니다. 아키텍트의 날카로운 질문 하나가 솔루션의 버그를 만천하에 드러내는 가장 강력한 무기가 되었습니다.
"UAK가 User인가요? 침묵이 만든 빌런의 확신" (시즌 2-58편)
장애 보고서의 팩트 폭격에도 불구하고, 빌런의 '근거 없는 자신감'은 장소를 가리지 않습니다. 이번엔 IBM 서버의 핵심 키워드인 **UAK(Update Access Key)**를 두고 벌어진 황당한 참견.
"그거 'User 뭣인가' 아니에요?"
무지한 자의 아는 척에 대처하는 아키텍트와 팀장의 '침묵의 기술'. 대꾸할 가치조차 느끼지 못한 그 싸늘한 현장의 공기를 기록합니다.
'[인프라 생존기]' 카테고리의 다른 글
| [인프라 생존기] 사비 렌터카로 확보한 '30분', 1년의 오버클럭 (시즌 2-59편) (0) | 2026.06.04 |
|---|---|
| [인프라 운영] "UAK가 User인가요? 침묵이 만든 빌런의 확신" (시즌 2-58편) (2) | 2026.06.02 |
| [인프라 운영] "죽지 않는 좀비 프로세스와 4GB의 사투: 강제 종료(kill)의 결단" (시즌 2-56편) (0) | 2026.05.29 |
| [인프라 운영] "증설된 공간조차 집어삼키는 유령 데이터: 팀장의 한마디" (시즌 2-55편) (0) | 2026.05.28 |
| [인프라 운영] "1분마다 4GB의 폭격: 30분의 사투와 술 취한 엔지니어" (시즌 2-54편) (0) | 2026.05.27 |