블로그로 돌아가기
1월 13, 2026가이드

서버 모니터링 설정 방법

사전 예방적 서버 관리를 위해 Netdata, Prometheus와 같은 서버 모니터링 도구 및 로그 관리를 설정하는 방법에 대한 전체 가이드.

서버 모니터링 설정 방법

서버 모니터링은 최적의 성능을 유지하고, 문제를 조기에 발견하며, 고가용성을 보장하는 데 필수적입니다. 이 가이드는 Hiddence 서버를 위한 종합적인 모니터링 솔루션 설정을 다룹니다.

Netdata 설치(실시간 모니터링)

Netdata는 아름다운 웹 인터페이스를 통해 실시간 성능 모니터링을 제공합니다:

bash
# Netdata 설치
bash <(curl -Ss https://my-netdata.io/kickstart.sh)

# http://your-server-ip:19999에서 대시보드 접속

# Netdata 구성
sudo nano /etc/netdata/netdata.conf
# bind to = your-server-ip 설정

# Netdata 재시작
sudo systemctl restart netdata

Prometheus 및 Grafana 설정

맞춤형 대시보드를 사용한 고급 모니터링의 경우:

bash
# Prometheus 다운로드
wget https://github.com/prometheus/prometheus/releases/download/v2.45.0/prometheus-2.45.0.linux-amd64.tar.gz
tar xvfz prometheus-*.tar.gz
cd prometheus-*

# 구성 생성
nano prometheus.yml

# Prometheus 시작
./prometheus --config.file=prometheus.yml

# 시스템 메트릭을 위한 Node Exporter 설치
wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz
tar xvfz node_exporter-*.tar.gz
cd node_exporter-*
./node_exporter

이메일 알림 설정

중요한 이벤트에 대한 이메일 알림을 구성하세요:

bash
# mailutils 설치
sudo apt install mailutils -y

# Postfix 구성
sudo dpkg-reconfigure postfix
# 'Internet Site'를 선택하고 도메인을 입력하세요

# 이메일 테스트
echo "Test message" | mail -s "Server Alert" your-email@example.com

# 모니터링을 위한 cron 작업 설정
crontab -e
# 추가: */5 * * * * /path/to/monitoring-script.sh

로그 관리

중앙 집중식 로그 관리를 설정하세요:

bash
# logrotate 설치(보통 기본 설치됨)
sudo apt install logrotate -y

# 로그 로테이션 구성
sudo nano /etc/logrotate.d/myapp

# 예시 구성:
/var/log/myapp/*.log {
    daily
    rotate 7
    compress
    delaycompress
    missingok
    notifempty
}

# 시스템 로그 보기
sudo journalctl -u service-name
sudo tail -f /var/log/syslog

모니터링 베스트 프랙티스

  • CPU, 메모리, 디스크 및 네트워크 사용량을 모니터링하세요
  • 임계값(CPU > 80%, 디스크 > 90%)에 대한 알림을 설정하세요
  • 애플리케이션 로그에서 오류를 모니터링하세요
  • 업타임 및 응답 시간을 추적하세요
  • 보안 이벤트 및 로그인 실패 시도를 모니터링하세요
  • 정기적으로 백업 상태를 확인하세요
  • 모니터링 설정 및 절차를 문서화하세요