한화 시스템 BEYOND SW 캠프 마무리
작년 10월부터 올해 4월까지 6개월간 부트캠프를 수료했다. 진짜 오랜만에 블로그를 작성하는데 최종 프로젝트를 시작하고 나서 블로그를 따로 관리할 시간이 없었다....
부트캠프를 시작하기 전에는 내가 잘할 수 있을까 걱정이 많았지만 좋은 강사님을 만나고, 좋은 팀원들을 만나서 만족스러운 결과물을 가져갈 수 있게 되었다.
최종 프로젝트 깃허브 링크
부트캠프 수료 후 생각했던 것들
이전까지 6개월간 여러 사람들과 같이 공부하고, 프로젝트를 진행하며 성장했다면 부트캠프를 수료한 지금은 혼자서 성장할 시간이다.
물론 이전에 같이 했던 팀원들 혹은 강사님께 조언을 구하거나 도움을 받을 수는 있겠지만 이제부터는 스스로 고민하고 개선할 점을 파악하여 해결하는 연습이 필요하다고 생각했다.
그리고 프로젝트를 진행하면서 내가 사용했던 k8s, jenkins 등 여러 기술들은 이해도가 아직 많이 부족하다고 판단하였다. 젠킨스 같은 경우에는 직접 실습을 해볼 수 있지만, k8s 같은 경우에는 실습 환경을 구성하기 어려울 것 같아서 이론 공부라도 해야 될 것 같다. (물론 찾아보면 k8s도 할 수 있는 방법이 있을 것 같아서 찾아볼 예정이다.)
마지막으로 내가 6개월간 부트캠프를 다니며 너무 부족하다고 느낀 것이 있는데 바로 CS 지식이다.
MSA나 k8s 등 실제 현업에서 사용하는 기술들을 사용해 보고, 직접 프로젝트에 적용하면서 CS 지식이 너무나 중요하다는 것을 알게 되었다.
MSA를 하든, k8s를 하든 사용되는 언어나 프레임워크도 물론 알고 있어야 되지만 네트워크를 어떻게 구성한다던지, 어떤 데이터베이스를 사용한다던지 혹은 어떤 운영체제인지 등 기본적인 CS지식이 안 갖춰져 있으면 무용지물이 된다.
많은 개발자 선배님들이 언어는 도구에 불과하다고 많이 말씀하셨는데 내가 직접 MSA나 k8s를 구성해 보면서 왜 도구라고 말했는지 이해할 수 있었다. 결국엔 언어나 프레임워크는 언제든지 바뀔 수 있는 도구지만 항상 변하지 않는 것은 CS 지식이고 이러한 CS 지식을 탄탄히 다져놔야 더 좋은 개발자로 성장할 수 있다고 생각했다.
향후 계획
최종 프로젝트에서는 VMware를 이용하여 총 5대의 리눅스 가상 머신을 생성하였고, 마스터와 워커 노드 간 네트워크 연결은 브릿지를 활용하여 k8s 클러스터를 구성하였다.
하지만 프로젝트를 완성하고 부트캠프를 수료한 이후에는 기존에 사용했던 노트북을 다 반납하여 앞서 구성했던 k8s 클러스터로 서비스를 운영할 수 없게 되었다.
사진과 같이 k8s 클러스터를 구성할 수 없기 때문에 나 혼자서 서비스를 운영할 수 있도록 변경이 필요했다.
혼자서 서비스를 운영하기 위해 어떤 기술을 활용할까 고민했었고 이전부터 사용해보고 싶었던 AWS의 서비스들을 사용하기로 정했다.
AWS 서비스들을 활용해서 최종 프로젝트 때 구성했던 k8s 클러스터를 AWS에 맞게 변경하기로 생각했고 사진과 같이 간단하게 아키텍처를 그려보았다.
이전에 CI/CD를 위해 사용했던 젠킨스는 깃허브 액션으로 변경하고 AWS 상에 배포하기 위해 AWS의 Code Deploy를 사용할 예정이다.
프론트엔드 배포는 이때까지 EC2에서 백엔드와 같이 배포했었지만 이번에는 S3에 배포하기로 결정했다.
마지막으로 부트캠프를 다니면서 미니 프로젝트로 MSA를 적용했었는데 제대로 활용하지 못했었다. 이번에는 이미지를 처리하는 기능을 AWS 람다로 분리하고 해당 기능을 Fast API 프레임워크를 활용하여 파이썬 코드로 작성해 볼 예정이다.
이미지 데이터는 키-벨류 형식의 NoSQL DB인 DynamoDB에 데이터를 저장하고 불러올 예정이다.
아까 위에서 언급했던 CS 지식도 보충하기 위해 강의나 여러 자료들을 찾아보며 따로 공부하고 블로그에 정리할 생각이다.
'프로젝트' 카테고리의 다른 글
[SSM_프로젝트] - Spring Cloud Gateway 적용하기 (0) | 2024.06.12 |
---|---|
[SSM_프로젝트] - 프로필 이미지 성능 개선하기 (0) | 2024.06.12 |
[SSM_프로젝트] 다시 처음으로... (0) | 2024.06.03 |
[SSM_프로젝트] - GitHub Actions와 AWS Code Deploy를 활용한 CI/CD 적용 - (2) (0) | 2024.06.01 |
[SSM_프로젝트] - GitHub Actions와 AWS Code Deploy를 활용한 CI/CD 적용 - (1) (0) | 2024.05.21 |