Process Manager 백엔드와 연결되는 Python 에이전트입니다. 원격 서버에 설치하면 브라우저에서 실시간 모니터링, 프로세스 관리, 웹 터미널을 사용할 수 있습니다.
- 시스템 모니터링 - CPU, GPU, 메모리, 디스크, 네트워크 사용률을 2초 간격으로 전송
- 프로세스 관리 - 프로세스 목록 조회 및 원격 종료(kill), 읽기/쓰기 속도(MB/s) 실시간 표시
- 웹 터미널 - PTY 기반 쉘 세션 (브라우저에서 SSH처럼 사용)
- 자동 업데이트 - 새 버전 감지 시 대시보드에서 원클릭 업데이트
- 자동 재연결 - 백엔드 연결이 끊기면 5초 후 자동 재연결
- Python 3.10+
- FastAPI + Uvicorn
- psutil (시스템 메트릭)
- websockets (STOMP over WebSocket)
- PTY (가상 터미널)
설치 중 노드 이름 입력 프롬프트가 표시됩니다. 엔터를 누르면 시스템 호스트명이 자동으로 사용됩니다.
| 변수 | 필수 | 설명 | 기본값 |
|---|---|---|---|
| ACCOUNT_TOKEN | △ | 최초 설치/재설치에 사용하는 1회용 설치 토큰 | - |
| AGENT_SECRET | △ | 등록 후 재접속에 사용하는 노드 전용 secret | - |
| SPRING_WS_URL | O | 백엔드 WebSocket URL | - |
| HOSTNAME | X | 서버 식별 이름 | 시스템 호스트명 |
| OS_TYPE | X | OS 종류 (Linux, Windows) |
실행 OS |
| AGENT_PORT | X | HTTP API 포트 | 8888 |
| LINUX_API_RELOAD | X | FastAPI 개발 모드 리로드 | false |
ACCOUNT_TOKEN은 최초 등록이 끝나면 비워지고, 이후 재접속은 서버가 발급한 AGENT_SECRET으로 처리됩니다.
현재 Windows 에이전트는 실시간 모니터링 메트릭과 웹에서 삭제 시 작업 스케줄러/설치 폴더 제거를 지원합니다. 프로세스 제어, 서비스 제어, 터미널, 파일 조회, 자동 업데이트는 Linux 전용입니다.
에이전트가 백엔드에 먼저 연결하므로 포트포워딩이나 공인 IP 없이도 작동합니다.
- processManager - 메인 프로젝트 (백엔드 + 프론트엔드)