본문 바로가기
리눅스의 모든 것

리눅스 시스템 모니터링 – 서버 상태 점검을 위한 명령어와 도구 총정리

by 운따돈 2025. 8. 18.

리눅스 서버 운영에서 시스템 모니터링은 필수입니다.
CPU, 메모리, 디스크, 네트워크 상태를 지속적으로 확인해야 장애를 예방하고, 성능 저하 원인을 신속히 파악할 수 있습니다.
특히 트래픽이 많은 웹 서버나 중요한 데이터베이스 서버는 실시간 모니터링이 안정적인 서비스 운영의 핵심입니다.


CPU 사용량 확인

top

가장 대표적인 실시간 모니터링 도구입니다.
명령어 입력:
top

  • P: CPU 사용률 기준 정렬
  • 1: CPU 코어별 사용량 표시

mpstat (sysstat 패키지)

cpu 사용량을 통계 형태로 표시합니다.
sudo apt install sysstat (Ubuntu/Debian)
sudo yum install sysstat (CentOS/RHEL)
mpstat 1


메모리 사용량 확인

free

메모리 전체 용량, 사용량, 캐시 등을 간단히 확인할 수 있습니다.
free -h

vmstat

CPU, 메모리, I/O 상태를 종합적으로 보여줍니다.
vmstat 1


디스크 사용량 확인

df

파일 시스템별 디스크 용량 사용률 확인
df -h

du

디렉토리별 디스크 사용량 확인
du -sh /var/log/*

iostat

디스크 I/O 성능 모니터링
iostat -xz 1


네트워크 모니터링

netstat / ss

열려 있는 포트와 연결 상태 확인
ss -tuln

iftop

실시간 네트워크 트래픽 확인
sudo apt install iftop
sudo iftop

iperf3

네트워크 대역폭 테스트
iperf3 -s (서버 모드)
iperf3 -c 서버IP (클라이언트 모드)


종합 모니터링 도구

htop

top보다 직관적인 UI 제공
sudo apt install htop
htop

glances

CPU, 메모리, 디스크, 네트워크, 프로세스까지 한 화면에 표시
sudo apt install glances
glances


로그 기반 모니터링

서버 상태를 장기적으로 분석하려면 로그 확인이 필수입니다.

  • /var/log/syslog (Ubuntu/Debian)
  • /var/log/messages (CentOS/RHEL)
    tail -f /var/log/syslog

로그 분석 도구로는 GoAccess(웹로그 분석), Logwatch(시스템 로그 보고서) 등이 있습니다.


원격 모니터링 툴

Nagios

오픈소스 서버 모니터링 도구로, 서비스 상태와 네트워크 모니터링 가능.

Zabbix

웹 기반 모니터링 솔루션, 대규모 환경에서 강력함.

Prometheus + Grafana

실시간 메트릭 수집 및 대시보드 시각화에 최적.


모니터링 자동화 팁

  1. cron으로 정기적으로 free, df, uptime 결과를 로그로 저장
  2. 알림 설정 – CPU, 메모리 사용률 임계치 초과 시 이메일 또는 슬랙 알림
  3. 장기 데이터 저장 – RRDTool, InfluxDB 등을 활용

결론

리눅스 시스템 모니터링은 단순히 명령어 몇 개로 끝나는 작업이 아닙니다.

  • 실시간: top, htop, iftop
  • 통계 분석: mpstat, iostat, vmstat
  • 장기 모니터링: Zabbix, Prometheus

이렇게 여러 도구를 조합하면 서버 성능 저하를 빠르게 감지하고 대응할 수 있습니다.
특히 서비스 규모가 커질수록 자동화된 모니터링과 알림 시스템을 구축하는 것이 중요합니다.