[인프라 생존기]

[서버 장애 원인 분석] 스토리지 I/O와 Swap 사용률 100%의 관계: 인프라 생존기 시즌2-19편

기록자 느혜미야 2026. 4. 2. 08:30

[지난 이야기 다시보기]


솔루션팀의 근거 없는 '스토리지 탓'이 계속되던 중, 나는 직접 데이터로 반격하기 위해 서버 상태를 하나하나 뜯어보기 시작했다. 스토리지 담당이지만 서버 운영까지 병행하고 있었기에 가능한 일이었다. 그리고 거기서 결정적인 증거를 발견했다.

1. 2~3개월간 방치된 'Swap 100%'의 진실

문제가 된 솔루션 서버 중 한 대를 점검하던 중 내 눈을 의심했다. **스왑(Swap) 사용률이 무려 100%**였다. 그것도 최근 며칠 사이의 일이 아니라, 무려 2~3개월 동안이나 지속된 상태였다.
 
메모리가 부족해서 디스크를 메모리처럼 끌어다 쓰고 있고, 그마저도 꽉 차서 시스템이 비명을 지르고 있었다. "느리다"는 요청의 원인이 스토리지 I/O 때문이 아니라, 서버 자체의 리소스 고갈 때문일 확률이 매우 높은 상황이었다.

2. 인프라 팀장님의 당황스러운 한마디

나는 곧바로 이 사실을 팀장님에게 보고했다. 당연히 "솔루션팀에 메모리 누수나 프로세스 점검을 요청하자"는 결론이 나올 줄 알았다. 하지만 팀장님의 답변은 내 상식을 완전히 뒤엎었다.

팀장님: "아~ 그 스왑 높은 거요? 그거 당연히 스토리지에 문제가 있으니까 스왑까지 높은 거죠."

순간 귀를 의심했다. 스토리지는 그저 NAS로 연결되어 데이터를 주고받을 뿐이고, 솔루션 서버는 VM(가상머신) 환경이다. OS 단의 스왑 사용률이 100%인 것과 외부 NAS 스토리지의 성능 문제는 인과관계가 전혀 다른 차원이다. 그런데 인프라 팀장이라는 분이 **"스토리지가 안 좋아서 스왑이 찼다"**는 해괴망측한 논리를 펴고 있었다.

3. 무지보다 무서운 '확증 편향'

팀장님 역시 이미 '스토리지 범인설'에 뇌를 점령당한 상태였다. 원인이 무엇이든 간에 결국 스토리지 탓으로 끝맺어야 마음이 편해지는 것 같았다. 인프라팀의 수장이라면 논리적인 데이터로 팀원을 보호하고 솔루션팀의 억지 주장을 방어해 줘야 하는데, 오히려 적군의 논리에 힘을 실어주고 있었다.
 
그는 내 황당한 표정을 읽었는지, 툭 던지듯 덧붙였다.

팀장님: "뭐... 일단 솔루션팀에 확인 요청은 해볼게요"

4. 에필로그: 데이터로 싸워야 하는 외로운 싸움

19편을 기록하며 씁쓸함을 감출 수 없다. 외부의 공격보다 더 무서운 건, 같은 팀 안에서 논리가 통하지 않는 상사와 일하는 것이다. 엔지니어링은 '느낌'이나 '정치'가 아니라 '데이터'로 말해야 한다.
 
성경은 말한다.

"지혜로운 자의 입의 말들은 은혜로우나 우매한 자의 입술들은 자기를 삼키느니라" (잠언 10:12)

근거 없는 확신으로 팀원을 힘 빠지게 하는 리더 아래서, 엔지니어는 오늘도 숫자로 증명하기 위해 외로운 모니터링을 계속한다. 진실은 결국 로그가 말해줄 테니까.
 
[다음 편 보기] "입은 '스토리지'를 외치고, 손은 '메모리 증설'을 누르다"
 
"스왑이 찬 건 스토리지 문제"라는 팀장님의 기적의 논리. 그 황당한 진단 속에 솔루션팀에 확인 요청이 전달되었습니다.
 
하지만 돌아온 피드백은 예상치 못한 **'조용한 자백'**이었습니다. 겉으론 당당하던 그들이 왜 갑자기 서버 메모리를 늘리고 파일시스템을 증설하기 시작했을까요? 말과 행동이 따로 노는 그들의 비겁한 '회피형 조치', 20편에서 공개합니다.
 
인프라 생존기 시즌2-20편: [리눅스 서버 점검] Swap 100%와 swappiness 설정의 함정 (다음 편에서 계속됩니다.)