- Move backend/frontend/messenger/ old paths to _archive/ - Reorganize scripts into scripts/deploy, check, push, setup, misc - Move docs (pptx, docx) to docs/ - Add .claude agents and skills for fullstack/folder-cleanup harness - workspace/ projects remain intact Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
6.2 KiB
6.2 KiB
GUARDiA 시스템 랜드스케이프
4개 시스템 전체 맵
1. GUARDiA ITSM (중앙 허브)
경로: workspace/guardia-itsm/
URL: http://localhost:9001 / https://zioinfo.co.kr:8443 (OpenNet)
언어: Python 3.11 + FastAPI 0.115+
DB: SQLite (dev) / PostgreSQL 16 (prod)
LLM: Ollama localhost:11434 (codellama:7b, llama3:8b, nomic-embed-text)
라우터 카테고리 (75개+)
| 카테고리 | 라우터 | 설명 |
|---|---|---|
| 인증/권한 | auth, ldap, pam, otp | JWT, LDAP/AD, 특권접근, 2FA |
| SR 관리 | tasks, approvals, assign, batch | SR CRUD, 승인, 자동배정 |
| CMDB | cmdb, servers | 서버 자산, CI 관계 |
| AI | chatbot, code_review, anomaly, kb_agent, orchestrator, predictive | Ollama 연동 |
| 운영 | incidents, oncall, dr, network_devices | 인시던트, DR, 네트워크 |
| 보안 | audit, vuln_scan, siem, compliance, csap | 감사, 취약점, CSAP |
| 분석 | analytics, sla, metrics, finops, report | 대시보드, Grafana |
| 자동화 | rpa, scraping, autonomous, ssh | RPA봇, 스크래핑, SSH |
| SI 관리 | si_projects, si_wbs, si_requirements, si_issues 등 | SI 프로젝트 |
| 연동 | external_api, export_import, gateway, groupware | 외부 시스템 |
| 기관 | institutions, tenant_mgmt | 멀티테넌트 |
핵심 API 엔드포인트
POST /api/auth/login → JWT 발급
GET /api/tasks → SR 목록
POST /api/tasks → SR 생성
GET /api/dashboard → 대시보드 통계
GET /api/cmdb/servers → 서버 자산
POST /api/rpa/execute → RPA 실행
GET /api/scraping/stats → 스크래핑 통계
POST /api/autonomous/approve/{id} → 자율처리 승인
WS /ws/notifications → 실시간 알림
2. zioinfo-web (홈페이지)
경로: workspace/zioinfo-web/
URL: http://localhost:8082 / https://zioinfo.co.kr:8082
언어: Java 17 + Spring Boot 3.2.5
DB: SQLite (dev) / MySQL (prod)
빌드: mvn clean package -DskipTests → target/zioinfo-web-1.0.0.jar
배포: /opt/zioinfo/app/app.jar → systemctl restart zioinfo
DB 엔티티 현황
| 엔티티 | 테이블 | 공개 API | 관리자 API |
|---|---|---|---|
| News | tb_news | GET /api/news | /api/admin/news |
| Recruit | tb_recruit | GET /api/recruit | /api/admin/recruit |
| Inquiry | tb_inquiry | POST /api/inquiry | /api/admin/inquiries |
| CompanyHistory | tb_company_history | GET /api/history | /api/admin/history |
| Member | tb_member | - | /api/admin/members |
프론트엔드 페이지 (React 18/Vite)
공개: Home, Company, Business, SolutionPage, GuardiaDetail, NewsPage, Recruit, Contact, Support 관리자: AdminDashboard, AdminNews, AdminRecruit, AdminInquiry, AdminHistory, AdminSettings, AdminMember
3. GUARDiA Manager (관리자 포털)
경로: workspace/guardia-manager/
URL: http://localhost:8090 (Nginx 서브)
백엔드: Python FastAPI 포트 8002
프론트: React 18 TypeScript + Vite → /var/www/manager/
인증: ITSM JWT 재사용 (별도 DB 없음)
백엔드 라우터 (4개)
| 라우터 | 접두사 | 역할 |
|---|---|---|
| system.py | /api/system | 서버 상태(psutil), 서비스 제어(systemctl) |
| deploy.py | /api/deploy | 배포 트리거, 이력 |
| config.py | /api/config | .env 편집, Nginx 리로드 |
| llm.py | /api/llm | Ollama 상태·모델 관리 |
관리 서비스 목록 (ALLOWED_SVCS): nginx, zioinfo, zioinfo-deploy, guardia, guardia-manager, gitea, jenkins, postgresql, ollama
4. GUARDiA Messenger (모바일 앱)
경로: workspace/guardia-messenger/
플랫폼: Android (APK) / iOS
빌드: EAS Build (eas build --platform android)
계정: EAS zioinfo / 프로젝트 ID ca2f72d6-7dda-4491-9590-7ace34b10a88
패키지: kr.co.zioinfo.guardia
화면 목록 (9개)
| 화면 | 경로 | ITSM API |
|---|---|---|
| 로그인 | (auth)/login.tsx | POST /api/auth/login |
| 대시보드 | (tabs)/index.tsx | GET /api/dashboard |
| SR 관리 | (tabs)/sr.tsx | GET/POST /api/tasks |
| AI 챗봇 | (tabs)/chat.tsx | POST /api/chatbot/message (Ollama) |
| 알림 | (tabs)/notifications.tsx | WS /ws/notifications |
| 설정 | (tabs)/settings.tsx | GET /api/auth/me |
| DR 상태 | (tabs)/dr.tsx | GET /api/dr/status |
| 네트워크 | (tabs)/network.tsx | GET /api/network_devices |
시스템 간 API 의존 관계
┌─────────────────────────┐
│ GUARDiA ITSM (허브) │
│ localhost:9001 │
│ :8443 (OpenNet) │
└───────────┬─────────────┘
│
┌──────────────────────┼──────────────────────┐
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────────┐
│ GUARDiA Manager │ │ Messenger (EAS) │ │ zioinfo-web (홈페이지)│
│ :8002/:8090 │ │ Android/iOS │ │ :8082 │
│ JWT 재사용 │ │ SecureStore JWT │ │ 독립 (연락처만) │
└─────────────────┘ └─────────────────┘ └─────────────────────┘
공유 인프라
| 서비스 | 포트 | 역할 |
|---|---|---|
| Nginx | 443/8443/8082/8090/8080 | SSL 역방향 프록시 |
| PostgreSQL 16 | 5432 | ITSM 운영 DB |
| Ollama | 11434 | 온프레미스 LLM |
| Gitea | 3000/9003 | Git 저장소 |
| Jenkins | 8080/9080 | CI/CD |
| Deploy Webhook | 9999 | 자동 배포 트리거 |
배포 서버 정보
서버 IP: 101.79.17.164 서비스 경로:
- ITSM:
/opt/guardia/app/ - 홈페이지:
/opt/zioinfo/app/ - Manager:
/var/www/manager/ - Docs:
/var/www/docs/