목록Project (8)
cmod.ify
OPTIMIZATION GUIDE WattUp K8s 메모리 최적화 Kafka 단일화 · JVM 힙 제한 · 리소스 튜닝 · 95% → 76% 최적화 흐름 요약 단계작업메모리 변화 1Kafka 3→1 KRaft 3-node → 단일 노드로 축소 95% → 83% 2Worker 축소 시도 worker3 제거 시도 → PVC 분산으로 포기 변화 없음 3리소스 limits 설정 backend / importer livenessProbe + resources 추가 83% → 84% (역효과) ..
DEPLOYMENT GUIDE WattUp K8s 배포 전과정 VirtualBox · kubeadm · Calico · 트러블슈팅 포함 전체 배포 흐름 단계내용 1VM 생성VirtualBox VM 4개 생성 (master + worker 3) 2기본 설정hostname, /etc/hosts, swap 비활성화, 커널 모듈 3containerd컨테이너 런타임 설치 4K8s 바이너리kubeadm / kubelet / kubectl 설치 5클러스터 생성kubeadm init (master) 6worker joinworker 노드 3대 클러스터 합류 7CNI 설치Calico 네트워크 플러그인 8StorageClass..
NETWORK ARCHITECTURE WattUp Infrastructure OCI · Tailscale VPN · Kubernetes (VirtualBox) · Calico CNI Architecture Diagram 👤 사용자 HTTPS ☁ Oracle Cloud (OCI) 140.238.143.254 ⚛ Frontend React + Nginx Docker 컨테이너 VPN ..
TROUBLESHOOTING LOG WattUp 프론트엔드 개발기 고민했던 것들, 막혔던 것들, 그리고 해결한 것들Map Marker 📍 Troubleshooting 01 개별 충전소 마커 — offset 불일치 문제 🔴 문제 원래는 마커를 원 두 개(외곽 원 + 내부 원)로 구성했는데, 네이버 맵 위에 렌더링하면 두 원의 중심이 맞지 않았다. offset 값을 아무리 조정해도 줌 레벨마다 어긋났다. 🟡 원인 원 두 개를 독립된 DOM 요소로 쌓는 구조라 각각의 기준점(anchor)이 달라서 생긴 문제였다. 줌 레벨이 바뀔 때마다 픽셀 단위 계산이 틀어지니 고정값으로는 해결이 안 됐다. ..
⚡ PROJECT WATTUPWattUp공공데이터 기반 전기차 충전소 확인 및 예약 플랫폼React FastAPI Kafka Kubernetes Debezium PostgreSQL MongoDBIntroduction이 플랫폼은 무엇인가요?전기차 보급이 빠르게 늘어나고 있지만, 충전소 정보는 여전히 파편화되어 있습니다. WattUp은 공공데이터 API를 활용해 실시간으로 전국 충전소 현황을 지도 위에 보여주고, 원하는 충전소를 바로 예약할 수 있는 서비스입니다.핵심 기능지역구 선택 시 지도가 해당 좌표로 이동하며 충전소를 클러스터링으로 표시zoom 단계에 따라 충전소 개수 또는 충전기 개수를 마커 숫자로 표시충전소 마커 클릭 시 우측 모달에서 충전기 정보, 이미지, 예약 가능 시간 확인예약자 번호 입력 후..
현재 프로젝트에서 쓰고 있는 스택이 너무 많아서 일일이 검색하기 번거로워 자원을 한 번에 감독할 수 있는 Resource Groups을 사용하게 되었다. Resource Groups 스택 기반CloudFromation을 사용하고 있어서 간단하게 조회하기 위해 CloudFormation 스택 기반으로 조회해 보았다.그룹화는 Cloud Fromation에서 생성했던 malang-maker을 선택 후 그룹 리소스 미리 보기를 해보았다.그랬더니 내가 쓰던 리소스는 더 많은 리소스를 사용했는데 3가지 밖에 나오지 않았다.그래서 사용하는 스택들에 태그를 달아서 한 번에 리소스 관리를 하기로 했다.cloudFormation 태그 설정하기스택 업데이트 > 직접 업데이트를 눌러야 한다. (변경 세트 생성 x)기존 템플..
https://pf.kakao.com/_kRFRX1. 전체 아키텍처 흐름FastAPI에 Mangum 부착: 기존 웹 프레임워크를 Lambda가 이해할 수 있게 변환Docker & ECR: 코드를 컨테이너 이미지로 말아서 AWS ECR에 푸시AWS Lambda: 올라간 이미지를 기반으로 서버리스 함수 실행API Gateway: Lambda를 외부(카카오톡 챗봇 등)와 연결해 주는 대문 역할IAM Role: Lambda가 DynamoDB에 접근할 수 있도록 권한 제한AWS SAM: 이 모든 인프라 생성과 배포 과정을 템플릿 하나로 자동화테스트: 로컬 빌드 및 실환경 테스트2. AWS IAM 권한 세팅기존에 쓰던 malang-dev 계정은 딱 DynamoDB 접근 권한만 열려 있었음.권한 최소화 원칙을 지키기..
1. 프로젝트 개요 (Project Overview)'말랑이 메이커'는 사용자가 카카오톡 인터페이스를 통해 자신만의 디지털 캐릭터 '말랑이'를 실시간으로 육성하는 챗봇 기반 시뮬레이션 게임입니다. 본 프로젝트의 핵심 UX 설계 철학은 "전광판 스타일(Electronic Display Style)" UI를 구현하여, 텍스트 기반 환경에서도 육성 시뮬레이션 특유의 직관적인 상태 피드백과 몰입감을 제공하는 데 있습니다.기술적으로는 AWS DynamoDB 기반의 서버리스 지향 아키텍처를 채택하여 인프라 관리 부담을 제거하고, 다수의 사용자가 동시에 상호작용하는 환경에서 실시간 데이터 정합성을 보장하는 견고한 시스템을 구축하는 것을 목표로 하였습니다.2. 시스템 아키텍처 및 기술 스택 (System Archite..