리눅스 서버 운영에서 시스템 모니터링은 필수입니다.
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
실시간 메트릭 수집 및 대시보드 시각화에 최적.
모니터링 자동화 팁
- cron으로 정기적으로 free, df, uptime 결과를 로그로 저장
- 알림 설정 – CPU, 메모리 사용률 임계치 초과 시 이메일 또는 슬랙 알림
- 장기 데이터 저장 – RRDTool, InfluxDB 등을 활용
결론
리눅스 시스템 모니터링은 단순히 명령어 몇 개로 끝나는 작업이 아닙니다.
- 실시간: top, htop, iftop
- 통계 분석: mpstat, iostat, vmstat
- 장기 모니터링: Zabbix, Prometheus
이렇게 여러 도구를 조합하면 서버 성능 저하를 빠르게 감지하고 대응할 수 있습니다.
특히 서비스 규모가 커질수록 자동화된 모니터링과 알림 시스템을 구축하는 것이 중요합니다.
'리눅스의 모든 것' 카테고리의 다른 글
리눅스 시간 동기화 방법 – NTP 설정과 서버 시간 맞추기 (0) | 2025.08.18 |
---|---|
리눅스 DNS 설정 방법 – 네임서버 변경과 확인 가이드 (1) | 2025.08.17 |
리눅스 파일 찾기 – find, locate, grep 활용 완벽 가이드 (1) | 2025.08.17 |
리눅스 포트 열기 방법 – 방화벽 설정부터 확인까지 완벽 가이드 (2) | 2025.08.17 |
리눅스 서비스 자동 시작 설정 – 부팅 시 프로그램 자동 실행하기 (2) | 2025.08.16 |