Posts
read more
서버 3대장(Nginx, Apache, Tomcat) logrotate 완벽 가이드: 디스크 풀 방지
서론
운영 중인 서버가 갑자기 멈췄을 때, 원인을 찾아보면 로그 파일이 디스크 용량을 모두 차지해버린 경우가 의외로 많습니다. 특히 트래픽이 몰리는 서비스라면 로그 파일 크기는 순식간에 수십 GB를 넘어섭니다. 이번 포스팅에서는 리눅스 표준 도구인 logrotate를 사용하여 주요 서버들(Nginx, Apache, Tomcat)의 로그를 서비스 중단 없이 관리하는 방법을 정리합니다.
logrotate란?
logrotate는 리눅스 시스템에서 로그 파일을 주기적으로 순환(Rotation), 압축(Compression), 삭제(Removal)해주는 시스템 유틸리티입니다. 이를 통해 오래된 로그를 보관하면서도 현재 디스크 사용량을 일정하게 유지할 수 있습니다.
Posts
WinSCP에서 .ppk 키 인증 실패 오류 해결 방법 (PuTTY는 되는데 WinSCP는 안 될 때)
PuTTY로는 접속이 되는데 WinSCP에서만 SSH 키 인증이 실패하는 문제가 발생했습니다. 원인을 확인해 보니 WinSCP 버전 문제였고, 업데이트로 해결할 수 있었습니다.
read more
Posts
read more
Nginx 리버스 프록시와 로드 밸런싱 설정 가이드: WAS 성능 최적화
서론
현대 웹 아키텍처에서 백엔드 WAS(Tomcat, Spring Boot 등)를 외부에 직접 노출하는 것은 보안과 성능 면에서 권장되지 않습니다. Nginx를 앞단에 두어 **리버스 프록시(Reverse Proxy)**로 활용하면 보안 강화는 물론, **로드 밸런싱(Load Balancing)**을 통해 시스템의 가용성을 획기적으로 높일 수 있습니다.
리버스 프록시 설정 (Reverse Proxy)
리버스 프록시는 클라이언트의 요청을 대신 받아 백엔드 서버로 전달하는 역할을 합니다. 이를 통해 백엔드 서버의 IP를 숨기고 SSL 종단점(SSL Termination) 역할을 수행할 수 있습니다.
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend_servers; # 로드 밸런서 그룹 지정
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
로드 밸런싱 설정 (Load Balancing)
upstream 블록을 사용하여 여러 대의 백엔드 서버로 부하를 분산할 수 있습니다.