Skip to content
Minsoo KIM edited this page Jun 18, 2026 · 22 revisions

Aegis-Pi Risk Twin Wiki

Aegis-Pi Risk Twin은 Factory Edge 데이터를 AWS IoT Core, DynamoDB, S3, ECS Dashboard로 연결해 공장별 위험 상태와 운영 리포트를 한 화면에서 추적하는 통합 관제 플랫폼이다.

기준일: 2026-06-14
기준: 최종 통합본 (워크스트림 A·B 코드·문서 단일 repo 통합 완료, 2026-06-10 merge)

대표 아키텍처

aegis-pi_final3 drawio

위 이미지는 전체 영역과 주요 흐름을 보여주는 대표 이미지다.

이미지 표기 현재 구현 기준
Management VPC AZ별 NAT Gateway Hub Terraform은 두 AZ subnet을 만들지만 NAT Gateway는 1개만 생성한다. 모든 private route가 단일 NAT를 공유한다.
Data/Dashboard VPC AZ별 NAT Gateway Data/Dashboard Terraform도 단일 NAT Gateway를 첫 번째 public subnet에 둔다.
A/C Zone 각각의 RDS RDS는 단일 PostgreSQL 인스턴스다. DB subnet group은 2AZ지만 multi_az=false다.
DynamoDB history TTL 단일 표기 GRAPH#5M은 48h, HISTORY#STATE는 목표 2h이나 마지막 문서화된 운영값은 48h다. LATEST는 TTL 없음이다.
단일 report generator Lambda Reporting은 Step Functions와 7개 Lambda로 구성된다. factory report와 cloud infra report 분기가 있다.
Bedrock Claude 3 Haiku 코드와 Terraform 기본값은 Claude 3 Sonnet이다. 실제 배포값은 운영 환경 변수로 구분해 확인해야 한다.
Factory 공통 Edge-Agent Factory A는 factory-a-log-adapteredge-iot-publisher, snapshot-uploader를 쓴다. Factory B/C는 VM 로컬 dummy generator와 hostPath outbox, K3s edge-iot-publisher를 쓴다.
CloudFront + WAF 문서상 목표 진입 경로는 CloudFront + WAF다. 현재 Terraform 구현 확인 시 WAF 리소스가 없으면 보안 강화 계획/선택 구성으로 별도 표시한다.

현재 아키텍처 요약

영역 현재 구현
Factory A Raspberry Pi 3-node K3s 기반 Safe-Edge 운영형 Spoke. InfluxDB/Kubernetes 상태를 factory-a-log-adapter가 canonical JSON으로 변환하고, outbox를 통해 IoT Core로 송신한다.
Factory B/C VM 테스트베드 Spoke. VM 로컬 dummy generator가 hostPath outbox에 메시지를 쓰고, K3s edge-iot-publisher가 IoT Core로 송신한다.
Hub / Control VPC EKS Hub, Hub ArgoCD, Tailscale, Grafana, AWS Load Balancer Controller 중심의 배포 및 운영 관측 영역이다. NAT Gateway는 단일 구성이다. Phase 8 이후 Hub 재생성과 Admin UI 검증 이력이 추가됐다.
Data pipeline IoT Rule이 S3 raw/와 Lambda DataProcessor를 구동한다. DataProcessor는 DynamoDB LATEST, HISTORY#STATE, S3 processed/를 갱신한다.
Graph / freshness DataProcessorRefresh1m이 stale 상태를 갱신하고, GraphAggregator5mGRAPH#5M과 S3 processed_agg/를 만든다.
Alert / snapshot RiskAlertDispatcher는 processed snapshot 기반으로 Slack alert와 DynamoDB dedupe state를 관리한다. SnapshotPresigner와 snapshot uploader는 image binary를 S3 image_snapshot/로 올리고 metadata만 pipeline에 태운다.
Dashboard VPC CloudFront/S3 SPA, ALB, ECS Fargate FastAPI, Cognito, RDS PostgreSQL, Redis, Lambda notifier, DynamoDB Streams 기반 WebSocket push 구조다.
Reporting EventBridge Scheduler가 Step Functions를 실행하고 7개 reporting Lambda가 시간별 집계, 일별 병합, Bedrock 보고서 생성을 수행한다. 결과는 S3 reports/daily/에 저장된다.

Dashboard 메뉴

현재 dashboard-web 라우팅과 사이드바 기준 구현된 메뉴는 다음과 같다.

메뉴 경로 설명
Fleet Overview / 전체 factory 최신 상태와 risk 요약
Factory Detail /factory/:factoryId 개별 factory 상세, 이력, 그래프
Cloud Infra /cloud-infra CloudInfra Fast/Slow collector read model 조회
Image Snapshots /image-snapshots AI 이벤트 이미지 스냅샷 갤러리(System 권한, presigned GET)
AI Chat /chat 자연어 질의 어시스턴트(상태·원인·추이·보고서·증빙 이미지)
Daily Reports /reports 일일 운영 리포트 조회와 DOCX 내보내기
User Management /admin/users Cognito/RDS 기반 사용자 관리

최신 마일스톤 상태

구분 상태 근거
최종 통합 통합 완료 워크스트림 A(Aegis-pi)·B(dashboard_vpc) 코드·문서를 단일 repo로 통합(2026-06-10 merge, 코드 충돌 0·앱별 테스트 통과). 최신 상태 기준은 docs/issues/SESSION_STATE.md
Factory A baseline 배포 검증 완료 Safe-Edge K3s, failover/failback, Hub-Spoke 연결 이력
Factory B/C testbed 배포 검증 완료 이력 있음 dummy generator, hostPath outbox, IoT Core/S3 raw 분리 적재 이력. Phase 8 이후 factory-b 재등록 및 sync 검증 이력 있음
Data pipeline 구현 완료 및 배포 검증 완료 이력 있음 DataProcessor, GraphAggregator5m, CloudInfra collector, RiskAlertDispatcher 코드와 운영 문서
Dashboard Web/API 구현 완료 ECS Fargate FastAPI와 SPA 코드 통합 완료. 2026-06-10 통합 기준 backend pytest 223개, web lint/test 84개/build 검증 통과. 실환경 기능별 smoke는 별도
Reporting 구현 완료, 검증 범위 제한 Step Functions, 7 Lambda, Bedrock report, S3 report 산출물 코드가 통합됨. 운영 검증 이력은 factory-b 수동 실행 중심이며 factory-a/c와 통합본 smoke는 별도
Terraform 부분 검증 완료, 추가 검증 대기 terraform fmt -check 통과. Phase 8 이후 일부 root에서 backend access 기반 state/plan 작업 이력이 있으나 모든 후속 smoke test 전 state ownership 재확인 필요
AWS/K3s smoke test 통합본 검증 대기 Phase 8에서 apply/destroy/import 및 실환경 smoke test는 수행하지 않음

문서 탐색

영역 문서
사업 배경 사업 배경과 목표, 시스템 요구조건, 모니터링·서비스 확장
요구사항 분석 기능 요구사항, 비기능 요구사항, 인수 기준 및 산출물
현재 상태 현재 구현 상태
프로젝트 개요 프로젝트 개요, 로드맵, 용어집
아키텍처 시스템 아키텍처, 제어 플레인 & 데이터 플레인, Dashboard VPC
데이터 데이터 생명주기, 클라우드 스토리지, IoT 데이터 계약
컴포넌트 Edge AI 탐지, Factory-A Log Adapter, Edge IoT Publisher, Lambda Data Processor, Risk Score Engine, Risk Alert Dispatcher, Image Snapshot Pipeline
Dashboard 사용자 플로우, 화면 구성, 데이터 모델
운영 Hub 재시작, factory-b/c 테스트베드, IoT Fleet 연결성, Factory-A AI 지연시간, Dummy Generator 백테스트, Data Dashboard 운영, Data Pipeline 운영, Daily Report 운영, Alerting 운영, Image Snapshot 운영, 통합 Build/Destroy, AWS Hub 트러블슈팅
보안/참조 인증과 RBAC, 런타임 설정, S3 구조, API 명세, 비용 기준서
모범사례·문제해결 모범사례와 실패사례, AWS Hub 트러블슈팅

공개 문서 기준

이 Wiki에는 실제 endpoint, 계정 번호, Tailnet IP, secret, token, certificate 원문을 싣지 않는다. 필요한 경우 리소스 역할과 경로 패턴만 일반화해서 설명한다.

Aegis-Pi Wiki

· 대표 문서 목록은 홈의 문서 탐색 표 참조

시작하기

요구사항

핵심 개념

아키텍처

컴포넌트 (Edge → Cloud → Dashboard)

Dashboard & 운영

시나리오 · 사례 · 참조

Clone this wiki locally