자주 일어나는 장애 유형
디스크 풀
- 로그를 기록하는 프로세스가 에러 또는 멈춘다
- 임시 파일을 생성해야 하는 명령어의 실행이 안된다
- 리눅스는 루트 유저만을 위한 예약 블록을 남겨두어 트러블슈팅이 가능하도록 설계
메모리 풀
- 메모리를 다 쓰고 스왑 영역까지 사용하여 시스템이 느려져 유저에게 응답이 느려짐
시스템 부하
- 로드 에버리지가 cpu코어 개수보다 높은 경우 유저 요청에 대한 응답이 늦어짐
프로그램의 문제
- 프로그램의 오동작
확인해야 할 사항
1. 같은 에러가 발생하지 않는가?
오류 발생한 명령 다시 테스트
2. 서버 로드가 높은가?
# cpu 코어수 확인
# cat /proc/cpuinfo
$ uptime
09:40:11 up 42 min, 2 users, load average: 0.44, 0.25, 0.19-
09:40:11현재 시간 -
up 42 min인스턴스가 켜진 시간 -
2 users현재 시스템에 로그인 세션 -
load average: 0.44, 0.25, 0.191분 / 5분 / 15분 평균 시스템 부하(load) 의미- load average = CPU가 처리 중이거나, CPU를 기다리는 프로세스 수
- 논리 코어가 16개 라면
- load 16 = 100%
- load 8 = 약 50% 부하
- load 1 = 거의 idle
3. 메모리를 많이 쓰는가?
$ free -m
total used free shared buff/cache available
Mem: 15642 1161 13760 16 943 14480
Swap: 4096 0 4096Mem행
-
total 할당된 전체 RAM 용량 (15,642 MB)
-
used 애플리케이션이 실제로 사용 중인 메모리 (1,162MB)
-
free 완전히 비어 있는 메모리 (13,760MB) → 아무도 사용하지 않은 RAM.
→ free 자체는 실제 사용 여유를 판단할 때 핵심 지표가 아님. -
shared 여러 프로세스가 공유하는 메모리 영역 (16MB) → 대개 매우 작게 나오는 값이 정상.
-
buff/cache 커널 버퍼 + 페이지 캐시 (943MB) → 파일 접근 속도를 높이기 위한 캐시.
→ 필요해지면 자동으로 해제되기 때문에 “사용량”으로 보면 안 된다. -
available 프로세스가 추가로 사용할 수 있는 실질적 여유 메모리 (14,480MB)
→ 이 값이 전체 메모리 상황을 평가할 때 가장 중요해.
→ 14GB 이상 여유면 사실상 완전 여유 상태.
Swap 행
-
total 스왑 영역 (4GB)
-
used 현재 사용 중인 스왑 (0MB)
-
free 남아있는 스왑 (4GB)
4. 디스크를 많이 쓰는가?
$ df -h
Filesystem Size Used Avail Use% Mounted on
none 7.7G 0 7.7G 0% /usr/lib/modules/6.6.87.2-microsoft-standard-WSL2
none 7.7G 4.0K 7.7G 1% /mnt/wsl
drivers 466G 119G 347G 26% /usr/lib/wsl/drivers
/dev/sdf 1007G 2.3G 954G 1% /
none 7.7G 80K 7.7G 1% /mnt/wslg
none 7.7G 0 7.7G 0% /usr/lib/wsl/lib
rootfs 7.7G 2.7M 7.7G 1% /init
none 7.7G 560K 7.7G 1% /run
none 7.7G 0 7.7G 0% /run/lock
none 7.7G 0 7.7G 0% /run/shm
none 7.7G 76K 7.7G 1% /mnt/wslg/versions.txt
none 7.7G 76K 7.7G 1% /mnt/wslg/doc
C:\ 466G 119G 347G 26% /mnt/c
D:\ 3.7T 228G 3.5T 7% /mnt/d
none 7.7G 548K 7.7G 1% /mnt/wsl/docker-desktop/shared-sockets/host-services
/dev/sdd 115M 59M 48M 56% /mnt/wsl/docker-desktop/docker-desktop-user-distro
/dev/loop0 609M 609M 0 100% /mnt/wsl/docker-desktop/cli-tools
tmpfs 1.6G 20K 1.6G 1% /run/user/1000
tmpfs 1.6G 20K 1.6G 1% /run/user/0
C:\Program Files\Docker\Docker\resources
466G 119G 347G 26% /Docker/host✔ /
WSL Linux 루트는 다음과 같다
/dev/sdf 1007G 2.3G 954G 1% /- WSL2 VHD (가상 디스크)
- 용량: 1TB 할당 형태
- 실제 사용: 2.3GB
- 여유: 954GB
✔/mnt/c, /mnt/d
Windows C, D 드라이브
C:\ 466G 119G 347G 26% /mnt/c
D:\ 3.7T 228G 3.5T 7% /mnt/d- Windows 드라이브 그대로 마운트된 상태
- 용량/사용량은 Windows와 동일 → 리눅스 앱이 Windows 파일을 직접 이용할 때 사용됨.