-
Proxmox 자동 종료란 무엇인가요?
-
방법 1. 예약된 종료를 위해 Cron 사용
-
방법 2. Cron + 유휴 감지 스크립트
-
방법 3. systemd 타이머 + 스크립트
-
방법4. UPS + NUT 연동
-
자동 종료 후 Vinchin로 VM 보호하기
-
프록스모스 자동 종료 FAQs
-
결론
Proxmox에서 자동 종료 기능을 활성화하면 수동 입력 없이 호스트 또는 해당 가상머신(VM) 및 컨테이너를 자동으로 종료할 수 있습니다. 일정, 유휴 상태 또는 무정전 전원(UPS) 이벤트에 의해 이 기능을 작동시킬 수 있습니다. 이를 통해 에너지를 절약하고 데이터를 보호하며 인위적인 오류를 줄일 수 있습니다.
Proxmox 자동 종료란 무엇인가요?
Proxmox 자동 종료를 사용하면 종료 작업을 자동으로 실행할 수 있습니다. 이를 cron, systemd 또는 UPS 도구를 사용하여 관리할 수 있습니다. 이는 단순한 기본 Linux 종료와는 다르며, Proxmox는 VM 및 컨테이너를 우아하게 종료하기 위해 qm과 pct를 사용합니다. qemu-guest-agent가 설치되어 있다면 Proxmox는 게스트 OS에 정리 종료를 알릴 수도 있습니다.
서버가 밤새 가동되지 않거나 백업 후에 종료하려는 경우, 자동 종료 기능이 이상적입니다. 이 기능은 전력 소비를 줄이고, 유지보수 시간을 명확히 설정하며, 오류를 방지할 수 있습니다.
방법 1. 예약된 종료를 위해 Cron 사용
Cron은 가장 간단한 방법입니다. 실행 중인 작업을 확인하지는 않지만 사용이 쉽고 신뢰할 수 있습니다.
예를 들어, 매일 오전 1시에 종료:
0 1 * * * root /usr/sbin/shutdown -h now
테스트 먼저:
shutdown -h +5 "테스트: 5분 후에 시스템 종료" grep shutdown /var/log/syslog
가상 머신은 ACPI 신호를 받아들이고(지원하는 경우) 정상적으로 종료를 시도합니다. 하지만 크론은 진행 중인 작업을 확인하지 않으므로 실행 중인 작업이 중단될 수 있습니다.
방법 2. Cron + 유휴 감지 스크립트
스크립트를 사용하면 종료 전 활동을 확인하여 실행 중인 가상 머신이나 작업이 중단되는 위험을 줄일 수 있습니다.
샘플 스크립트 /root/shut.sh:
#!/bin/bash ACTIVE_VMS=$(qm list | grep -cv stopped) ACTIVE_PCT=$(pct list | grep -cv stopped) ACTIVE_TASKS=$(pgrep -f "pvesr|zfs scrub|vzdump") if [[ $ACTIVE_VMS -eq 0 && $ACTIVE_PCT -eq 0 && -z "$ACTIVE_TASKS" ]]; then echo "$(date): System idle. Preparing to shut down." >> /var/log/auto-shut.log shutdown -h +30 "Idle state: system will shut down in 30 minutes" fi
실행 가능하도록 만들고 Cron에 추가하십시오:
chmod +x /root/shut.sh */5 * * * * root /root/shut.sh
이 스크립트는 5분 간격으로 확인합니다. 실행 중인 작업이 없을 경우, 30분 후에 시스템 종료를 예약합니다.
방법 3. systemd 타이머 + 스크립트
더 많은 제어와 우수한 로그를 위해 프로덕션 환경에서는 systemd를 사용하세요.
스크립트: /usr/local/bin/autoshutdown
#!/bin/bash ACTIVE_VMS=$(qm list | grep -cv stopped) ACTIVE_PCT=$(pct list | grep -cv stopped) ACTIVE_TASKS=$(pgrep -f "pvesr|zfs scrub|vzdump") if [[ $ACTIVE_VMS -eq 0 && $ACTIVE_PCT -eq 0 && -z "$ACTIVE_TASKS" ]]; then echo "$(date): 유휴 상태 확인됨. 머지 않아 시스템이 종료됩니다." >> /var/log/autoshutdown.log shutdown -h +10 "유휴 상태: 10분 후 시스템 종료" fi
Systemd 서비스 /etc/systemd/system/autoshutdown.service:
[Unit] Description=Proxmox 자동 종료 서비스 [Service] Type=oneshot ExecStartPre=/bin/sleep 300 ExecStart=/usr/local/bin/autoshutdown
Systemd 타이머 /etc/systemd/system/autoshutdown.timer:
[Unit] Description=프록스모스 자동 종료 타이머 [Timer] OnCalendar=*-*-* 23:00:00 Persistent=true [Install] WantedBy=timers.target
활성화 방법:
systemctl daemon-reload systemctl enable --now autoshutdown.timer
참고: Type=oneshot 은(는) 동시 실행을 방지합니다. sleep 300은(는) 5분의 버퍼 시간을 추가합니다.
방법4. UPS + NUT 연동
정전 보호는 사업 환경에서 필수적입니다. NUT와 UPS를 통해 시스템을 스마트하게 종료할 수 있습니다.
NUT 설치:
apt install nut
/etc/nut/nut.conf 구성:
MODE=netserver
그런 다음 /etc/nut/ups.conf 및 /etc/nut/upsmon.conf를 편집하십시오. 예:
MONITOR ups@localhost 1 monuser password slave SHUTDOWNCMD "systemctl poweroff"
UPS 모니터링:
upsc ups@localhost
전원 차단 시뮬레이션:
upsmon -c fsd
호스트 이전에 가상머신 종료:
qm 종료 <ID> --시간제한 60 pct 종료 <ID> --시간제한 60
VM이 응답할 수 있도록 qemu-guest-agent가 설치되어 있는지 확인하세요.
자동 종료 후 Vinchin로 VM 보호하기
자동 종료가 작동하면 다음 단계는 VM 데이터가 안전하게 보호되도록 하는 것입니다.
Proxmox 환경을 안전하게 보호하려면 Vinchin Backup & Recovery를 고려해 보세요. 이는 Proxmox VE와 VMware, Hyper-V, oVirt, RHV, XCP-ng, XenServer, OpenStack 등 15개 이상의 플랫폼을 지원하는 전문적인 기업용 VM 백업 솔루션입니다.
Vinchin는 영구 증분 백업, 내장된 중복 제거 및 압축, V2V 마이그레이션, 고속 복구 옵션과 같은 강력한 기능을 제공합니다. 이러한 기능을 통해 백업 크기를 줄이고, 작업을 가속화하며, 재해 복구를 간소화할 수 있습니다.
사용자 친화적인 웹 콘솔을 사용하면 단 4단계로 Proxmox VM을 백업할 수 있습니다:
1. 호스트에서 VM 선택
2.백업 대상 선택
3.전략 선택
4.작업 제출 완료
Vinchin은 전 세계 사용자들의 신뢰를 받으며 신뢰성 있는 솔루션으로 알려져 있습니다. 지금 바로 60일간의 기능 제한 없는 무료 체험을 시작해 보세요 — 아래를 클릭하여 몇 분 안에 다운로드 및 설치할 수 있습니다.
프록스모스 자동 종료 FAQs
Q1: 타이머 또는 스크립트의 오류를 해결하려면 어떻게 해야 합니까?
systemctl 상태와 journalctl -u autoshutdown.service를 확인하십시오.
Q2: 종료가 멈춰버리면 어떻게 하나요?
멈춘 서비스를 확인하려면 journalctl을 사용하십시오.
Q3: VM의 종료 순서를 제어할 수 있나요?
예—qm shutdown을 사용하여 우선 순위에 따라 VM을 종료할 수 있습니다.
결론
프록스모스 자동 종료 기능은 전력을 절약하고, 데이터를 보호하며, 위험을 줄이는 데 도움이 됩니다. 예약, 유휴 상태 확인 또는 UPS를 통해 이 기능을 실행할 수 있습니다. 자신의 환경에 맞는 적절한 방법을 선택하여 시스템을 스마트하고 안전하게 유지하십시오.
공유하기: