회고

[NCP] 프로젝트에 NCP 활용 후기

코끼리 개발자 2024. 4. 3. 14:25
728x90
SMALL

 

F-Lab에서  Green Developers 프로그램을 통해 크레딧을 지원받아 프로젝트에 활용해 보았다!

아직 프로젝트 완성은 되지 않았지만 지금까지 사용한 내용을 바탕으로 후기를 작성해보고자 한다.

 

Q. 프로젝트를 소개해 주세요.

 

구현하고자 하는 프로젝트 주제는 다음과 같다.

Melon Market과 같이 공연을 예매하는 서비스를 구현하고, 추가적으로 내 업무 경력을 살려 서버를 모니터링 할 수 있을 것

 

기존 개발 환경에서는 대용량 데이터를 어떻게 처리하는지, 다뤄볼 기회가 없어 매우 궁금했었고 내가 좋아하는 것에 대한 서비스를 생각했을 때 대용량 데이터를 처리하고 있는 서비스가 뭐였는지 생각해 보니..! 

최근에 멤피스 뮤지컬과 최유리 콘서트를 예매하기 위해 애썼던 기억이 떠올랐다..

그러고 보니 특정 기간 특정 시간에 이렇게 많은 사람들이 몰리는 이 서버를 어떻게 처리하고 있는 걸까?라고 궁금했었고, 

'대용량 데이터 처리'에 중점을 두고 어떻게 구현하면 좋고 기술은 어떤 것들을 선택해야 좋은지에 대해 공부도 하고 직접 대용량 데이터 처리에서 어떤 문제점을 마주칠 수 있고, 그 문제를 해결하기 위한 고민을 하고 잘 해결해 내는 경험을 하고자 해당 주제를 선택하게 되었다.

 

물론! 대용량 데이터를 직접 다뤄볼 순 없겠지만, 부하 테스트를 통해 할 수 있는 한.. 내가 낼 수 있는 최대 성능을 끌어올려 효율적으로 문제를 해결해 나가 보는 것으로 대용량 데이터 처리에 대해 조금은 학습할 수 있을 것이라 생각했다!

 

GitHub - f-lab-edu/melody-market: 멜론티켓 서비스를 예시로한, 음악과 관련된 공연 티켓팅 서비스입니

멜론티켓 서비스를 예시로한, 음악과 관련된 공연 티켓팅 서비스입니다. Contribute to f-lab-edu/melody-market development by creating an account on GitHub.

github.com

 

Q. Ncloud에서 어떤 서비스를 활용하셨나요?

 

대용량 데이터 처리에 중심은 분산 시스템이라고 생각했다.

특정 시간에 혹은 특정 날짜에 사용자가 몰릴 것을 대비하여 그 많은 트래픽을 어떻게 처리할 수 있을까?! 고민하고,

관련 내용을 학습하던 중 '수평적 확장'을 통해 트래픽을 분산하는 것에 대해 알게 되었고, 

수평적 확장을 위해서는 웹 서버로 들어오는 트래픽을 여러 서버에 올바르게 분산시켜 한 곳에 트래픽이 몰리지 않는 것이 중요하다는 것을 알게 되었다.

 

그래서 NCP에  Ncloud  kubernetes service를 이용해 CI/CD부터 로드밸런스를 활용한 부하 분산 및 수평적 확장이 가능하도록 서버를 구성하고, 또 빌드한 이미지는 NCP의 Container Registry에 올려 관리할 수 있게 하였다.

 

 

[NCP] Ncloud Kubernetes Service 사용하기(+ Container Registry 사용 까지) - 1편

프로젝트를 진행하면서, 롤링 업데이트 배포 전략을 사용하기 위해 F-Lab을 통해 네이버 클라우드 플랫폼 에서 사용할 수 있는 크레딧을 제공 받아NCP에서 제공해주는 쿠버네티스를 이용해 보았

elephant-dev.tistory.com

 

[NCP] Ncloud Kubernetes Service 사용하기(kubectl 사용하여 pod 생성하기) - 2편

1편에 이어 2편에서는 cluster와 상호작용하기 위해 서버에 접속하여 pod를 생성하는 작업을 진행해보려고 한다. *pod 내부에서 외부로 접속되지 않는 현상으로 인해 문제가 있었고 이를 해결하는

elephant-dev.tistory.com

 

 

 

Q. Ncloud 서비스를 어떻게 적용하였나요?

 

 

Ncloud를 운영 서버로 활용하기 위해 소스코드 커밋 시 github-action을 통해 빌드를 진행하고,

Container Registry에 이미지를 업로드하고, kubernetes 접속 서버 전용으로 만든 서버에 ssh로 접속하여 Rolling Update 방식으로 Kubernetes pod들을 새롭게 배포하도록 하였다. 

자세한 내용은 포스팅으로 작성해 두었다.

 

 

[GIT] github-action으로 빌드, 쿠버네티스 클러스터에 배포하기 (with Naver Cloud Platform)

github action을 통해 소스코드 커밋 혹은 머지 시 빌드와 테스트 하고, NCP Container Registry로 이미지 push 후 다시 pull 받아 쿠버네티스 클러스터에 Rolling Update 배포 전략을 사용하여 배포하는 방법에

elephant-dev.tistory.com

 

 

Q. Ncloud 사용 중 특히 만족했던 점과, 아쉬웠던 점은 무엇인가요?

 

Ncloud를 사용 중 만족했던 점은

1. 처음 콘솔에 들어갔을 때 한국어로 되어있는 점이 좋았다..!
이전에 Oracle Cloud를 이용해 개발했던 경험이 있어서 한글이 잘 쓰여있는 것만으로도 얼마나 감격스러운 일인지 모른다ㅜ_ㅜ

 

2. UI 디자인이 엄청 깔끔하다

네이버의 디자인은 항상 깔끔하게 잘 만드는 것 같다. 그래서 어떤 기능들이 있는지 분류가 잘 되어있고 깔끔한 디자인 덕에 필요한 기능을 손쉽게 찾을 수 있다.

 

3. 고객 문의 대응이 빠르다!

이 짧은 과정을 하면서도 엄청 모르는 것들이 많아서 시간이 많이 소요되곤 했었다.

이때 문의하기 기능을 통해 문의를 하면 정말 빠른 시간 안에 답변을 주신다.

길면 하루? 정도 안에 답변을 해주시는 것 같다.

 

그러나 아쉬운 점도 역시 존재했다..

 

다른 플랫폼과 같이 교육 패키지가 있으면 좋았을 것 같다. 

 

예를 들면 작은 규모의 프로젝트를 실행하기에 적절한 비용의 서버를 추천해 준다던지 기능을 사용하지 않는데 계속 살려두어 비용이 부과되고 있다면 아무런 기능을 하지 않고 있다던지.. 등

 

Ncloud  kubernetes service를 이용하기 위해 필요한 것들을 다 생성하고 나니 서버는 끄고 있는데 비용이 내 기준 너무 많이 소요되고 있는 것 같다 그래서 나한텐 적어도 그런 기능이 있었다면 공부를 위한 크레딧을 헛으로 날리는 일은 없지 않았을까 싶다ㅠㅠ너무 아깝다..

 

Q. Green Developers 프로그램 참여 소감 말씀 부탁 드립니다.

 

Green Developers 프로그램에 참여한 덕분에 많은 부분에 학습할 기회가 충분히 생겼던 것 같다. 

공부하는 입장에서는 서버를 많이 만들어보고 실패도 해보고 여러 가지 경험들이 꽤 필요한데 Green Developers 프로그램이 없었더라면 공부를 하는데에 제한되는 환경이 정말 많았을 것 같다. 

 

특히 Green Developers 프로그램을 통해 kubernetes에 대해 공부해 볼 수 있는 기회가 생겨 너무 값진 경험이을 할 수 있었다.

 

Q. 마지막 한 말씀 부탁 드립니다.

 

CI/CD를 진행할 때 이미 가지고 있는 이미지가 있어서 해당 이미지를 Container Registry 태그가 변경되면(최신 이미지가 올라오면) 자동으로 배포되게 연동하고 싶었으나.. 문의를 해보았을 땐 Source Build기능을 사용하면 된다고 했다..!

Source Deploy로 충분히 가능한 일인 줄 알았는데.. 해당 기능은 Zip 파일만 배포 가능하다고 하여 속상했다.. 

추가로 Source Build기능은 현재 내가 설정한 내용으로도 비용이 만만치 않게 소모되고 있고 이미 구현해 놓은 빌드 기능이 있어 진행하지는 않았던 경험이 있다.

 

이 아쉬운 점은 내가 알고 있는 지식이 많지 않아 생겼던 지식인 것 같다.

아마 더 자세히 알고 있는 사람들은 더 효율적이게 사용할 수 있지 않을까 싶다..!

 

그래서 추후엔 Source Build기능을 이용해서 좀 더 완벽히 기능을 사용해내보고 싶다!!

 

또한 네이버 클라우드 플랫폼 유저 커뮤니티 카톡방을 통해서 다양한 지식을 얻을 수 있어서 좋았다..!

음엔 궁금한 거 질문하러 들어갔다가 유용한 내용이 많아 나가지 않고 계속 보면서 지식을 얻고 있다ㅎㅎ 이런 부분들에서 많은 고민을 하고 프로그램들을 구축해 나가고 있는 것 같아서 좋았다!

728x90
LIST

'회고' 카테고리의 다른 글

[F-Lab] F-Lab 멘토링 Java Backend 과정 3개월 차 후기  (38) 2024.02.06