ddps-lab / architect-cloud

Kubernetes , AWS Serveless
6 stars 4 forks source link

CI/CD 실습 내용으로 서버리스로 구동해 볼 수 있을런지 분석 필요 #30

Closed kmu-leeky closed 4 months ago

kmu-leeky commented 4 months ago

우리가 전에 실습을 했을때 ec2 auto scaling -> 컨테이너 기반 asg -> 서버리스로 실습을 했는데, 이번에 시나리오가 바뀌면서 서버리스에 대한 내용이 빈약해짐. 현재 CI/CD 에 대한 내용이 서버리스로 구현 가능할런지 한번 봐보자.

red0sena commented 4 months ago

교수님 현재 CI/CD에 관한 시나리오가 ECS에 배포할 시 Fargate를 이용하여 서버리스를 이용한다고 볼 수 있을 것 같습니다.

그렇다면 시나리오를 모놀리식 EC2 Auto Scaling -> ECS EC2 오토스케일링 -> Fargate 오토스케일링

이런식으로 진행하면 어떨까요?

kmu-leeky commented 4 months ago

아니. ECS 를 사용한 서버리스가 아니라 아예 람다를 사용한 서버리스로... 일이 꽤나 많을 수도. 불가능 할수도 있어.

mumat0103 commented 4 months ago

현재 커피 공급 시나리오에서 사용하는 프레임워크가 node.js의 express 입니다. 구글에 검색해본 결과 express를 람다에서 백엔드 api 서버로 띄우는 방법들이 있는 것으로 보입니다. 저희가 진행할 시나리오에 적용이 가능한지 확인해보겠습니다.

kmu-leeky commented 4 months ago

아.. 이런 것도 있구나. 나는 그냥 원시적으로 app server 코드를 람다로 이관하는걸 생각했는데. 재미있겠다. 한번 시도해보자.

mumat0103 commented 4 months ago

간단하게 express를 사용하여 json 응답을 보내는 람다 함수를 만들어서 테스트해보았습니다. DB 생성해서 DB 정보 가져오는 코드 작성하면 동작할 것으로 예상됩니다.

https://salty-smoke-5df.notion.site/express-e33a9ba303e14b0daeb5f7cb437c2adf?pvs=4 위 링크에 어떻게 진행했는지 정리하였습니다.

kmu-leeky commented 4 months ago

우와 잘했다. 패키지들은 만들어서 런타임에 내재화 하고 핸들러만 따로 작성해주는 식인건가? 이런식이라면 웹에서 서버리스 영향력은 꽤나 높아지기는 하겠다.

mumat0103 commented 4 months ago

그렇습니다. 백엔드 API 서버를 위한 패키지를 런타임에 내재화하고 핸들러를 통해서 해당 API에 접근할 수 있게끔 하는 방식으로 보입니다. 저도 참고자료를 보고 만들어본 터라 완벽한 이해는 부족한 상태입니다.

현재 커피 공급망 시나리오에서 떼어낼 수 있는 부분은 DB에 있는 공급망 정보 불러오기, DB에 공급망 추가, 수정, 삭제 기능입니다. 웹페이지를 띄우기 위한 ec2 인스턴스나 ecs 환경을 구축하고, DB와 관련된 API를 서버리스로 구현하여 서로 상호작용하게 하면 기존의 서버리스 시나리오와 비슷할 것 같습니다.

kmu-leeky commented 4 months ago

웹페이지를 띄위기 위한 ec2 인스턴스나 ecs 환경 --> 우리도 보통 이런 부분은 S3 에서 html 파일을 호스팅 하게끔 작업을 했었거든. 비슷한 접근이 가능할까?

mumat0103 commented 4 months ago

가능할지 한 번 시도해보겠습니다.

mumat0103 commented 4 months ago

간단하게 만든 api 콜을 출력하는 html 파일을 작성하여 s3에 업로드 후 테스트 해보았습니다. image 기존 html 파일에서 수정이 많이 필요하긴 하겠지만, 가능은 할 것으로 보입니다.

kmu-leeky commented 4 months ago

오케이. 커피쪽 html 파일을 안보기는 했는데, 우리가 할 수 있을 수준인지 얼른 한번 확인해보자. 왠만하면 우리가 하면 좋기는 한데, 일이 너무 많으면 다른 방향도 고려해보자.

mumat0103 commented 4 months ago

32 에서 작업 완료하였으므로 Close 하겠습니다.