10. 서버 사양 / 인프라 운영 현황 — fingu-tips

2026-05-19 작성 · AWS ap-northeast-2 · profile grindaai (793175550504) · 데이터 출처: AWS API + SSH(fingu-tips-key.pem) 직접 조회

TL;DR · 10.1 호스트 사양 · 10.2 네트워크 / 보안 · 10.3 컨테이너 토폴로지 · 10.4 API 표면 · 10.5 운영 / 시크릿 / 로그 · 10.6 실측 리소스 · 10.7 트래픽 / 활동 · 10.8 리스크 / 기한 · 10.9 바로 실행 가능한 작업

TL;DR

fingu-tips PoC 데모 인스턴스 running 16h+ healthy. t4g.xlarge / 15GB RAM / 50GB / ARM64 / AL2023. docker compose 2 service (fingu-tips-api Python+HF, fingu-tips-web nginx). Cloudflare → fingu.grinda.ai 노출. 시크릿은 Infisical export → .env. DeprovisionAfter 2026-05-21 (D-2) — 보존 작업 필요.

10.1 호스트 사양 (EC2)

Instance ID
i-0407fb88ae762654a
Name
fingu-tips
Type
t4g.xlarge (4 vCPU Graviton2 ARM64, 16 GB RAM, EBS-only, up to 5 Gbps)
AMI
ami-04244cf6c328aabab
OS
Amazon Linux 2023 (kernel 6.18.25-55.108.amzn2023.aarch64)
총 메모리
15 GiB (swap 0)
디스크
50 GB EBS / 12 GB 사용 (24%)
AZ
ap-northeast-2a
Public IP
3.38.72.133
Private IP
172.31.4.101
SSH Key
fingu-tips-key.pem
Launch
2026-05-15 03:15 UTC (4일 4시간 가동)
Project 태그
fingu-tips-rnd-evaluation
Deprovision
2026-05-21 (D-2)

부트스트랩 (UserData)

Docker + docker-compose v2.35.1 (aarch64) + Infisical CLI 설치, /opt/fingu 디렉터리 생성.

#!/bin/bash
dnf install -y docker git
systemctl enable --now docker
usermod -aG docker ec2-user

mkdir -p $DOCKER_CONFIG/cli-plugins
curl -fsSL .../docker-compose-linux-aarch64 -o $DOCKER_CONFIG/cli-plugins/docker-compose

curl -1sLf 'https://dl.cloudsmith.io/.../infisical-cli/setup.rpm.sh' | bash
dnf install -y infisical

mkdir -p /opt/fingu && chown -R ec2-user:ec2-user /opt/fingu

10.2 네트워크 / 보안

Security Group (sg-048e60097c48a4235 · fingu-tips-sg)

포트프로토콜출처비고
80TCPCloudflare 15 CIDRHTTP — CF proxy 경유
443TCPCloudflare 15 CIDRHTTPS — CF proxy 경유 (origin cert 보유)
22TCP0.0.0.0/0SSH 전세계 오픈 정책 검토 권장

외부 노출 호스트

fingu.grinda.ai — Cloudflare proxy(orange cloud) → 3.38.72.133:80/443. nginx 종단에서 TLS 1.2/1.3 (/etc/nginx/certs/origin.crt), HTTP/2 활성.

10.3 컨테이너 토폴로지 (compose project: fingu)

컨테이너이미지포트리소스 한도헬스체크상태
fingu-tips-api fingu-tips-api:latest (1.36 GB) 8001/tcp (internal only) mem 6G / res 256M GET /api/health Up 16h healthy
fingu-tips-web fingu-tips-web:latest (57.3 MB, nginx) 80, 443 → host cpu 0.5 / mem 128M / res 32M GET /healthz Up 16h healthy

볼륨

네트워크

fingu-net (bridge). web → api (depends_on healthy). nginx upstream api:8001, keepalive 32.

옵션 파이프라인

ENABLE_REAL_PIPELINE=true 활성 시 HF 모델 3개 (FinguAI-Chat-v1 + Qwen-Orpo-v1 + FingUv2 ≈ 5~7GB) RAM 로드. t4g.small (2GB)은 OOM, 현재 t4g.xlarge (16GB)는 여유.

10.4 API 표면 (web access log + nginx 라우팅)

메서드경로설명
GET/api/healthAPI 헬스 (healthcheck용)
GET/api/personas페르소나 목록
GET/api/personas/{name}단건 (확인된 페르소나: jiyu, eunyoung)
GET/api/personas/{name}/portfolio포트폴리오
GET/api/personas/{name}/recommendations추천
POST/api/kpi/{n}/sample단일 KPI 측정 (현재 KPI 7만 자동 호출 중)
GET/admin/logs관리자 로그 페이지 (ADMIN_LOG_TOKEN gated 추정)
GET/healthznginx 헬스 (access log off)

nginx access log는 $request 대신 $request_method $uri 사용 → query string의 토큰이 로그에 노출되지 않음.

10.5 운영 / 시크릿 / 로그

시크릿 주입 흐름

deploy.shinfisical export/opt/fingu/.env → docker compose env_file → 컨테이너 환경변수.

관측된 환경변수 키 (값 마스킹)

ADMIN_LOG_TOKEN=***
ANTHROPIC_API_KEY=***
OPENAI_API_KEY=***
ENABLE_REAL_PIPELINE=***
ENABLE_FINETUNED_PIPELINE=***
FINETUNED_KPI2_API_URL=***
FINETUNED_KPI3_API_URL=***
DEPLOY_ID=***

컨테이너 로깅

/opt/fingu 디렉터리 구조 (상위 항목 + 용량)

항목용량비고
datasets/11 MB평가 데이터셋
public/2.8 MB정적 자산
docs/708 KB프로젝트 문서
frontend/540 KBUI 소스
src/468 KBAPI 소스
evidence/252 KB증빙 자료
tests/ · scripts/ · api/ · deploy/총 ~340 KB
results/0볼륨 마운트 (호스트엔 빈 디렉터리)

10.6 실측 리소스 (docker stats · 스냅샷)

컨테이너CPU메모리 사용한도 대비
fingu-tips-api1.10%88.8 MiB1.4% of 6 GiB
fingu-tips-web0.17%5.7 MiB4.5% of 128 MiB

호스트 메모리

총 15 GiB · 사용 526 MiB · 가용 14 GiB · buff/cache 1.1 GiB · swap 없음 → 현재는 HF 모델 미로드 상태로 운영 중 (real pipeline OFF 추정).

10.7 트래픽 / 활동 패턴

NetworkIn 24h 피크41.8 MB @ 04:40 UTC 활성 페르소나jiyu, eunyoung 외 주요 호출POST /api/kpi/7/sample API p50 응답~1.5 ms

KPI 7 자동 측정 루프 (관찰 결과)

클라이언트 (web access log 24h)

10.8 리스크 / 기한

항목등급메모
DeprovisionAfter 2026-05-21D-2볼륨 + .env + /opt/fingu 스냅샷 권장
SG 22번 포트 0.0.0.0/0본인 IP/32 또는 VPN/사설망으로 축소
SSM Agent 미설치SSH 외 통제 채널 없음. 키 분실 시 복구 곤란
CloudWatch Logs 미연동컨테이너 재생성 시 로그 휘발 (30MB rotation)
KPI 7 결과 trivially true라벨 없는 sample 루프 — 측정값 의미 검증 필요
호스트 메모리 여유양호HF 5~7GB 로드 여유 있음 (현재 526 MiB)
디스크양호24% 사용 (12/50 GB)

10.9 바로 실행 가능한 작업

A. 즉시 (AWS CLI · 추가 권한 불필요)

B. SSH 안에서 즉시 (이미 접근 가능)

C. 운영 관점 권장