반응형
서버 Hang 상태 분석 — hung_task_timeout_secs
1️⃣ 현재 서버 상태 요약 분석
🔥 1) hung_task_timeout_secs 메시지 반복
발생 가능 원인:
INFO: task <프로세스명> blocked for more than 120 seconds
위 메시지는 리눅스 커널 레벨에서 특정 프로세스가
120초 이상 응답하지 않고 완전히 멈춰 있는 상태임을 의미한다.발생 가능 원인:
- I/O wait 증가
- 파일시스템 freeze
- NIC/스토리지 드라이버 deadlock
- 커널 락업(Kernel Lockup)
❌ 2) Shell 입력 오류 — “CCCCCCC…” 반복
완전한 hang 직전이며 프로세스 스케줄러가 거의 응답하지 않는 단계이다.
^C^C^C
c^C^C^C^c...
이는 입력 버퍼가 꼬이고, 시스템이 키 입력을 정상적으로 처리하지 못하는 상태다.완전한 hang 직전이며 프로세스 스케줄러가 거의 응답하지 않는 단계이다.
❌ 3) NIC 드라이버 오류 + I/O Hang 동시 발생
상단에 NIC/드라이버 관련 메시지, 하단에 I/O BLOCK 오류가 함께 출력되는 경우:
→ NIC 또는 스토리지 드라이버 deadlock → 커널 hang으로 이어지는 대표 패턴이다.
상단에 NIC/드라이버 관련 메시지, 하단에 I/O BLOCK 오류가 함께 출력되는 경우:
→ NIC 또는 스토리지 드라이버 deadlock → 커널 hang으로 이어지는 대표 패턴이다.
💥 결론: 커널 부분 Hang 상태 — 재부팅 외 해결 불가
현재 상태라면 다음은 대부분 실패한다:
현재 상태라면 다음은 대부분 실패한다:
- systemctl restart
- reboot / shutdown -r now
- 새 SSH 접속
- dracut/응급쉘 접근
2️⃣ 재부팅 전 가능한 확인(운 좋을 때만)
만약 콘솔이 아주 조금이라도 살아있다면 다음을 확인할 수 있다.
dmesg | tail -n 50
journalctl -xe
ps -ef | grep stuck
iostat -xm 1
mpstat -P ALL 1
하지만 shell이 깨지고 hung_task 메시지가 반복되는 상황에서는 위 명령 대부분이 응답하지 않을 가능성이 매우 높다.
3️⃣ 재부팅 방법(순서대로 시도)
✔ 1) Soft reboot (가장 안전 → 먼저 시도)
reboot
✔ 2) Force reboot
systemctl reboot -f
✔ 3) 커널 강제 재부팅(SysRq)
echo b > /proc/sysrq-trigger
※ 파일시스템 sync 없이 재부팅되므로 위험하지만 마지막 수단.
✔ 4) 하드웨어 리셋(IPMI / iDRAC / iLO)
- IPMI → Power Reset
- iDRAC/iLO → Reset Server
- 물리 서버 → 전원 버튼 5초 길게 눌러 강제 종료 후 재부팅
4️⃣ 재부팅 후 반드시 확인할 로그
이번 Hang의 원인은 대부분 NIC·스토리지 드라이버 관련이다.
dmesg | grep -i error
dmesg | grep -i nic
dmesg | grep -i eth
dmesg | grep -i reset
journalctl -k -b | grep -i timeout
journalctl -k -b | grep -i driver
NIC 문제일 가능성
- 드라이버 버그
- bonding 모드 설정 문제
- LACP mismatch (스위치와 설정 불일치)
- NIC 펌웨어 불안정
5️⃣ 오류 분석 순서도
1) hung_task 메시지 반복 여부 확인 →
2) I/O / NIC / 파일시스템 로그 비교 →
3) 드라이버 deadlock 여부 판단 →
4) 커널 부분 hang 감지 →
5) 재부팅 선택 →
6) 부팅 후 장치 로그 집중 분석
6️⃣ 결론 요약
🔥 현재 상태 = 커널 부분 hang
🔧 복구 방법 = 재부팅 외 없음
⚠️ 재부팅 후 원인 분석 = NIC/스토리지 드라이버 로그 필수 점검
🔧 복구 방법 = 재부팅 외 없음
⚠️ 재부팅 후 원인 분석 = NIC/스토리지 드라이버 로그 필수 점검
반응형
LIST
'지식 공유 > Server' 카테고리의 다른 글
| LACP Bonding(802.3ad) (3) | 2025.11.21 |
|---|---|
| 서버 리소스 모니터링 명령어 (iostat · mpstat · top · htop) (2) | 2025.11.21 |
| Bonding 설정 가이드 (active-backup · 802.3ad · Bond Mode 비교) (0) | 2025.11.17 |
| 네트워크 리트랜스미션(Network Retransmission) 원인 (0) | 2025.11.17 |
| 리눅스 리소스 모니터링 명령어 정리 (top, htop, gotop) (1) | 2025.11.16 |
