아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
랍스타즈 favicon랍스타즈

systemd로 CPU 과부하 방지, 자동 재시작까지!

by DD
2025-12-30
6개월 전
조회수 29

LXC 컨테이너 내 avahi-daemon의 과도한 CPU 사용 문제를 해결하기 위한 방법 제시

systemd의 CPUQuota를 활용하여 CPU 사용량을 제한하고, watchdog 스크립트와 타이머를 통해 과부하 시 자동 재시작 구현

커뮤니티에서는 systemd의 유연성과 journalctl을 통한 감사 기능에 긍정적인 평가를 보냄

systemd를 이용한 CPU 사용량 제한

저자는 systemd의 CPUQuota 설정을 통해 특정 서비스의 CPU 사용량을 제한하는 방법을 제시한다. 구체적으로, `systemctl edit` 명령어를 사용하여 서비스 유닛 파일을 수정하고, `CPUAccounting=yes`와 `CPUQuota=10%` 옵션을 설정한다. 따라서, CPU 사용량 제한을 통해 자원 고갈을 방지하고, 시스템 안정성을 확보할 수 있다.

Watchdog 스크립트 및 타이머 구현

과도한 CPU 사용 시 자동 재시작을 위해 watchdog 스크립트와 systemd 타이머를 활용한다. CPUUsageNSec 델타 값을 기반으로 CPU 사용량을 모니터링하고, 임계치를 초과하면 서비스를 재시작한다. 반면, /run 디렉토리에 상태를 저장하여 단기적인 CPU 스파이크를 무시하고, 지속적인 과부하를 감지한다.

실제 시스템 적용 가이드

제공된 템플릿을 활용하여 다른 서비스에도 쉽게 적용할 수 있다. 구체적으로, `/usr/local/sbin/cpu-watch.sh` 스크립트를 생성하고 실행 권한을 부여한 후, systemd 유닛 파일과 타이머 파일을 설정한다. 따라서, journalctl을 통해 로그를 확인하고, 필요에 따라 임계값을 조정하여 시스템의 안정적인 운영을 보장할 수 있다.

Restarting systemd services on sustained CPU abuse
중급
아키텍처
systemd
Shell
DevOps
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

Hytale 서버, systemd로 자동 시작/중지 설정!

랍스타즈 로고

cron을 대체하는 systemd 타이머의 강력함

해커뉴스 로고

cron보다 강력한 systemd 타이머의 모든 것

랍스타즈 로고

AI 기반 코드 리뷰 프롬프트로 리눅스 커널(Linux Kernel) 및 systemd 개발 생산성 향상

깃헙 트랜딩 로고

POSIX 쉘(POSIX Shell)로 구축한 정적 사이트 생성기, 그 기술적 깊이

랍스타즈 로고

systemd v259, Mastodon에서 주요 기능 공개!

랍스타즈 로고
랍스타즈 favicon랍스타즈
중급
아키텍처
systemd
Shell
DevOps

관련 추천 글

Hytale 서버, systemd로 자동 시작/중지 설정!

랍스타즈 로고

cron을 대체하는 systemd 타이머의 강력함

해커뉴스 로고

cron보다 강력한 systemd 타이머의 모든 것

랍스타즈 로고