마이크로 서비스 아키텍처는 서비스의 유연한 확장과 에자일한 개발 프로세스를 접목 시킬 수 있는 구조로 최근 클라우드 네이티브에 가장 중요한 요소로 자리 잡고 있습니다.
하지만, 세밀해진 서비스의 구조는 모놀리식 구조에 비해 환경 구축이 어렵고, 관리해야 할 요소가 비약적으로 증가하는 단점을 가지고 있습니다.
서비스 간의 통신, 데이터베이스 관리, API 게이트웨이 설정 등의 무수한 부가 요소를 컨트롤 해야 하며 -
각 서비스 별 CI/CD 파이프라인 구축, 모니터링 시스템 구비, 분산 트랜잭션 관리 등의 복잡한 인프라 요소를 설정해야 합니다.
그렇다면 초기 프로젝트에서 마이크로 서비스를 어떻게 시작해야 할까요?
처음부터 AWS와 GCP를 사용하여 개발 하기에는 너무 부담스럽습니다.
MSaaS는 아래의 요구 사항을 쉽게 구현할 수 있도록 하는 것이 목표입니다.
1. 단일 서버의 로컬 환경에서 MSA 구조스럽게 개발 및 배포할 수 있어야 합니다.
2. 로컬 환경 구성을 쉽게 클라우드 환경으로 이전 할 수 있어야 합니다.
3. 클라우드 환경을 쉽게 커스텀 할 수 있어야 합니다.
4. 위의 요구 사항을 관리할 수 있는 통합 UI가 존재합니다.
Phase 1 - 단일 서버의 로컬 환경으로 MSA 구조 개발하기 (개발 구상 중)
Phase 2 - 생성한 MSA 구조를 자동으로 K8S에 배포하기 (개발 예정)
Phase 3 - 클라우드 환경 쉽게 커스텀 하기 (개발 예정)
- 2주에 1회/2회 정도 정기적으로 회의합니다. 멤버 현황에 따라 조율 가능 합니다.
- 온/오프라인여부는 추후 협의에 따라 진행합니다.
- 협업 툴
소통 : 디스코드 / slack / 카카오톡 오픈채팅
문서 관리 : 노션 / 구글 프레젠테이션
저는 3년차에 접어든 클라우드 도메인 개발자 입니다.
오픈스택과 쿠버네티스 관련 개발을 진행 중이고 주 언어는 Golang 입니다.
UI 개발을 위한 언어로 Vue.js를 사용할 수 있습니다.
전체적인 프로젝트 설계 및 코드 구현을 담당할 계획 입니다.
또한, MSA 을 활용한 거대 서비스 운영 경험이 적기 때문에 이와 관련해 많은 논의와 가르침이 필요합니다.
더해 아무래도 본업이 있다 보니, 프로젝트에 완전 집중해서 진행할 수 없는 상태입니다.
어림잡아 하루에 평균 한 시간 정도 작업 가능 할 것 같습니다.
해당 프로젝트는 클라우드 네이티브 환경을 위한 오픈소스 기여를 목표로 하고 있습니다.
현재 백엔드 / 프론트 / UI/UX / 기획 등 가리지 않고 멤버를 구하고 있습니다.
#Go
#Docker
#Kubernetes
#openstack
#VueJS
#React
#PostgreSQL
#MongoDB
이 프로젝트는 지원을 기다리는 중😁
프로젝트 지원하기