전체 글
-
이코에코(Eco²) Scan API 성능 측정 및 시각화이코에코(Eco²) Context/Performance 2025. 12. 8. 04:36
공모전 수상 후 한 2-3일 간은 편히 쉬었다. 32일 골방 개발 + 이틀간 본선 쪽잠 작업의 반동이 꽤 크게 왔다.이력서를 업데이트하고 관련 포지션에 이리저리 지원한 후, '구축한 모니터링이 아깝다.'는 생각에 성능 테스트를 진행해 봤다.import osfrom locust import HttpUser, task, betweenclass ScanUser(HttpUser): # 사용자 간 대기 시간 (0.1~0.5초 랜덤 딜레이) -> 매우 공격적인 부하 wait_time = between(0.1, 0.5) @task def scan_classify(self): # 테스트용 이미지 (재활용 마크가 있는 이미지) payload = { "im..
-
이코에코(Eco²) 2025 새싹톤 우수상 수상 후일담잡담 2025. 12. 3. 11:00
이코에코(Eco²)가 2025 새싹톤 우수상에 선정됐다.10월 30일 즘부터 시작했으니 한 달간 Cluade/GPT와 골방 작업을 이어와서 체력과 몰골..이 말이 아니었다.대부분의 시간은 API 개발보단 K8s 클러스터 + Gitops 구축 및 개발에 소요했다.25년은 클라우드 스토리지 / 네트워크가 주스택이었던 만큼 코드 기반 인프라 역량을 내세우고 싶던 면이 컸다.본선에서도 배포 환경에서 개선/테스트가 발표 직전까지 진행됐기에 배포 파이프라인은 쓰임을 다한 편이다.FastAPI 기반 백엔드 API는 얇디얇아서 API 측면에선 도메인별 서비스를 분리한 점 외에는 딱히 내세울 지점은 없었다.GPT 5.1 Codex가 없었으면 이런 방식으로 구성하긴 힘들었겠지만, 파이썬/FastAPI 코드를 읽을 수 있고..
-
이코에코(Eco²) 2025 새싹톤 본선 진출 후일담잡담 2025. 11. 29. 14:48
순위 선정은 작성한 기획서와 첨부한 GitHub를 바탕으로 참여자 + 심사자 투표로 결정됐다.좋아요 수를 보면 알겠지만 참여자 투표에선 그렇게 썩 좋은 점수를 받진 못했으나, 심사자 투표의 가점을 크게 받은 모양이다.마감 이틀 전까지만 해도 좋아요 6개로 181팀 중 181위를 달리고 있었지만 댓글 공세로 지수반등을 보인 게 총합 19개였다.기획서 자체는 프론트, 디자인, AI 분들 모두 공을 많이 들이셔서 퀄이 높은 덕에 심사위원 점수에서 가점을 많이 받은 듯싶다.난 기획서..에서 큰 비중은 없었고 깃허브에서 Codex + Claude와 공격적인 인프라 구축을 이어가던 중이었다.참여 팀이 181팀으로 꽤 많은데 다수가 새싹이라는 부트캠프 수강생들처럼 보인다. 새싹은 원래부터 알고 있던 부트캠프였다.전 ..
-
이코에코(Eco²) GitOps #06 - Namespace · RBAC · NetworkPolicy를 한 뿌리에서이코에코(Eco²)/Kubernetes Cluster+GitOps+Service Mesh 2025. 11. 25. 18:15
🛎️ 본 포스팅은 이미 구현이 완료된 사안만 다룹니다. 현재 이코에코 14-nodes cluster는 ap-northeast-2 리전에 배포돼 있습니다. 이번 글은 이코에코의 네임스페이스(+라벨) 구조, RBAC 모델, NetworkPolicy가 어떻게 각 요소를 전제로 엮여 있는지에 집중한다.0. 이코에코 RBAC · Namespace 설계의 특징라벨 우선 설계네임스페이스를 단순히 이름만 나누는 게 아니라 tier, role, domain 라벨까지 한 번에 정의했다. 덕분에 RBAC RoleBinding, NetworkPolicy selector, ServiceMonitor 등 다른 모든 리소스가 이 라벨을 공통 언어로 쓰게 된다.Tier 기반 역할 매핑RBAC 문서가 “tier=business-l..
-
이코에코(Eco²) GitOps #05 Sync Wave이코에코(Eco²)/Kubernetes Cluster+GitOps+Service Mesh 2025. 11. 25. 03:57
🛎️ 본 포스팅은 이미 구현이 완료된 사안만 다룹니다. 현재 이코에코 14-nodes cluster는 ap-northeast-2 리전에 배포돼 있습니다.드디어 기다리던 Sync-wave 포스팅이다.가장 시간을 많이 썼으면서도 그만큼 유용했기에 이번 구축에서 가장 애정하는 기능이다.왜 굳이 Sync Wave였나?Ansible bootstrap부터 App-of-Apps로 가는 동안 가장 큰 병목지점은 Reconcile Loop가 동시에 돌면서 서로 엉키는 일이었다.CRD가 아직 없는데 Operator가 먼저 올라와서 CrashLoopSecret이 없는데 Ingress가 먼저 뜨면서 BadRequest데이터 Operator/Instance가 한꺼번에 올라오다가 FailedCreateArgoCD 자체는 Syn..
-
이코에코(Eco²) GitOps #04: Operator(Controller) 기반 클러스터 인프라 구성 자동화이코에코(Eco²)/Kubernetes Cluster+GitOps+Service Mesh 2025. 11. 24. 20:18
🛎️ 본 포스팅은 구현이 완료된 사안만 다룹니다. 현재 이코에코 14-nodes cluster는 ap-northeast-2 리전에 배포 중 입니다.v0.7.4~0.7.5 사이, SG/Calico/ArgoCD를 안정화해둔 상태에서 ALB Controller, ExternalDNS, External Secrets Operator, 데이터 스택(Postgres/Redis/RabbitMQ)까지 GitOps 안으로 끌어들이는 과정을 서술합니다.0. ALB Controller 전에, 지금 트래픽이 어떻게 흐르는지부터ALB가 Pod를 인지하는 경로네트워크를 구성하기 위해선 이코에코 클러스터의 특징을 살펴야 한다. 근본적으로 EC2 노드들은 단일 진입점인 ALB와 동일한 VPC(Logical Router)에 존재하지..
-
이코에코(Eco²) GitOps #03 네트워크 트러블슈팅이코에코(Eco²)/Kubernetes Cluster+GitOps+Service Mesh 2025. 11. 24. 17:05
🛎️ 본 포스팅은 구현이 완료된 사안만 다룹니다. 현재 이코에코 25-nodes cluster는 ap-northeast-2 리전에 배포되어 있습니다. v0.7.3에서 App-of-Apps, Sync Wave, Helm+Kustomize를 한 번에 도입하면서 해야 할 작업이 산더미처럼 쌓였습니다.이번 글에서는 그 이후 버전들(v0.7.4 ~ v0.7.5)에서 Security Group과 ArgoCD가 어떻게 얽혀 있었는지 정리합니다.이전 글: 이코에코(Eco²) 인프라 구축 #02 - GitOps: Ansible 의존성 줄이기1. Security Group 정리 없이 GitOps만 본 것이 화근이었습니다 (v0.7.4)1.1 Master/Worker SG 분리 구조의 한계초기 Security Group ..
-
이코에코(Eco²) GitOps #02: Ansible 의존성 감소, Kustomize Overlays 패턴 적용이코에코(Eco²)/Kubernetes Cluster+GitOps+Service Mesh 2025. 11. 24. 16:07
Ansible에서 GitOps 2.0으로: 선언적 클러스터 관리의 여정Terraform과 Ansible로 초기 구축한 클러스터를 ArgoCD App-of-Apps와 Sync Wave 기반 GitOps 아키텍처로 발전시킨 과정을 정리합니다. 이 글에서는 40분이 넘던 부트스트랩 시간을 25분대로 단축하고, 궁극적으로 Agent-Driven Development의 기반을 마련하기까지의 기술적 결정들을 다룹니다. 버전 히스토리는 CHANGELOG.md를 참고하시면 됩니다.1. Ansible이 과도한 책임을 지던 구조v0.7.0 시점의 아키텍처는 다음과 같은 형태였습니다.Terraform (VPC/EC2/SSM) ↓Ansible (클러스터 구성 전반) ↓ArgoCD (일부 애플리케이션 배포)당시 An..