[Specification] GUARDiA 시스템 아키텍처 명세
1. 프로젝트 개요
1.1. 구축 배경
- 1,000개 이상의 관공서 SM 사이트, 10,000+ 운영 환경 관리
- 레거시 서버: 에이전트 설치 불가, 수동 FTP/SSH 반복 작업 만연
- 목표: 메신저 자연어 명령 → AI → 에이전트리스 자동 배포·운영
1.2. 핵심 가치
- ChatOps: 메신저가 유일한 터미널
- Agentless: SSH/FTP 표준 프로토콜만 사용
- Human-in-the-loop: PM 최종 승인 후 실행
2. 전체 아키텍처 (3-Layer)
┌─────────────────────────────────────────────────────────┐
│ INTAKE LAYER (현장 접수) │
│ 메신저 앱/웹 → Webhook → 입력 검증 모듈 │
└───────────────────────┬─────────────────────────────────┘
│
┌───────────────────────▼─────────────────────────────────┐
│ CONTROL LAYER (지능형 제어) │
│ ① SR/Ops 작업 관리 엔진 (상태: RECEIVED→COMPLETED) │
│ ② RBAC 보안 승인 엔진 (담당자→대리→상위 에스컬레이션)│
│ ③ sLLM Parser (자연어→JSON 정형화) │
│ ④ Claude Code 에이전트 (코드수정·스크립트 생성) │
│ ⑤ HITL 모듈 (PM 최종 검증 대기) │
└───────────────────────┬─────────────────────────────────┘
│
┌───────────────────────▼─────────────────────────────────┐
│ EXECUTION LAYER (에이전트리스 실행) │
│ SSH Executor / SFTP Client → 대상 서버(1,000+) │
│ Command Sanitizer → Audit Logger (Hash Chain) │
└─────────────────────────────────────────────────────────┘
3. 기술 스택
| 구분 |
기술 |
버전/비고 |
| Backend |
Python / FastAPI |
3.11+ |
| LLM |
Llama-3-8B 또는 Solar-10.7B |
온프레미스, 4-bit 양자화 |
| Infra 제어 |
paramiko (SSH/SFTP) |
에이전트리스 |
| DB |
PostgreSQL |
CMDB + SR + Audit |
| 메신저 연동 |
Webhook (REST) |
슬랙/잔디/자체앱 |
| 보안 |
AES-256 (자격증명), SHA-256 (감사로그 해시체인) |
|
4. 사용자 역할별 지원 기능
4.1. Developer (배포)
- 로컬 빌드 파일(class, html, js, img) 메신저 첨부 → 자동 배포
- 정적 파일: 카피 즉시 반영 (WAS 재기동 불필요)
- 동적 파일(class): 무중단 롤링 재기동 (WAS #1 → 헬스체크 → WAS #2)
4.2. SM 운영자
- 원격 로그 분석: 에러 키워드 grep, 타임라인 추출
- 인프라 점검: 디스크/CPU/메모리/포트 임계치 감시
- 자원 정비: 로그 로테이션, 오래된 아카이브 삭제
- SSL 인증서 만료일 사전 감지
4.3. PM 관리자
- SR 진척도 및 배포 이력 타임라인 조회
- 민감 시스템 배포 시 2차 승인 워크플로우 제어
- 배포 결과 HITL 최종 확인 후 고객 완료 통보
5. 핵심 보안 정책
| 정책 |
내용 |
| 자격증명 저장 |
AES-256 암호화 DB 저장, 실행 시 메모리 로드 |
| SSH 접근 |
관제 전용 계정(opsagent) + sudoers 화이트리스트 |
| 명령어 필터 |
Blacklist: rm -rf /, mkfs, drop, truncate |
| 감사 로그 |
SHA-256 해시 체이닝 — 위변조 즉시 탐지 |
| Kill-Switch |
메신저 '정지' 명령 → 즉시 중단 + 롤백 |
| 폐쇄망 |
외부 API 호출 금지, sLLM 온프레미스만 허용 |
6. 개발 로드맵
| Phase |
내용 |
목표 |
| P1 |
메신저 웹훅 + DB 티켓팅 시스템 |
SR 접수 → DB 저장 |
| P2 |
sLLM 파서 + 승인 워크플로우 |
자연어 → JSON → HITL |
| P3 |
SSH/SFTP 배포 엔진 + 롤링 재기동 |
에이전트리스 실행 |
| P4 |
End-to-End 자동화 루프 완성 |
SR→배포→알림 전 과정 |