타 부서에서 지원 요청이 왔다. 제안서 일부 파트를 맡아 달라는 것이었다. 내 몫은 아키텍처와 구축 전략으로, 구상부터 장표 제작까지 전부였다. 며칠을 야근했고 밤도 새웠다.

제안서는 코드와 다르다. 틀려도 테스트가 잡아주지 않고, 읽는 사람은 그림 한 장으로 판단한다. 붙잡은 건 두 가지뿐이었다. 정보가 정확해야 하고, 설계가 효율적이어야 한다. 이 글은 그 며칠의 기록이다.

모호한 문장을 다시 쓰는 데 시간이 가장 많이 들었다

받은 자료에는 모호한 내용이 많았다.

장표를 그리기 전에 그 내용부터 다시 정리했다. 요구사항을 기술적으로 분석한 뒤 구조로 옮기는 순서였다. 아키텍처 그림은 요구사항을 구조화한 결과이지, 그 반대가 아니다. 평소 개발할 때보다 요구사항을 훨씬 깊게 뜯어본 셈이다.

기존 영역은 건드리지 않고 옆에 붙였다

인프라 아키텍처 장표의 구성:

  • 사용자 요청은 CloudFront와 S3가 받는다.

  • 새로 만드는 서비스는 VPC 안 ALB 뒤의 ECS Fargate에 둔다. SSO Service와 Spring API가 여기에 올라간다.

  • 주기 작업은 EventBridge가 Batch를 깨우는 방식

  • 이미 운영 중인 영역(Pre-existing IoTOps Area)의 SSO Server, API Servers, Database는 점선으로 따로 묶고, 새 서비스가 그쪽과 통신만 하도록 그렸다.

  • 고객 IDC의 서버와는 Site-to-Site VPN으로 연결한다.

새로 만들 것과 이미 있는 것의 경계가 그림에서 먼저 보여야 한다. 구성도에서 기존 영역을 점선으로 따로 묶은 이유.