ECS 서비스 배포 파이프라인 구축하기

제가 OpsNow의 레거시 환경을 개선하기 위해서 가장 처음 도입하고자 마음먹은 것은 어쩌면 당연하게도 개별 서비스를 컨테이너로 만드는 것입니다. 그리고 이렇게 생성된 컨테이너 이미지를 ECS에서 Fargate에 배포함으로써 Serverless 서비스를 만들고자 하였습니다. 많은 시간과 노력을 들인 끝에, 코드에서부터 서비스 배포까지 이어지는 CI/CD 파이프라인을 구축할 수 있었습니다. 이번 글을 통해서 어떻게 OpsNow의 레거시 서비스가 Serverless로 나아갈 수 있었는지…

Continue reading ECS 서비스 배포 파이프라인 구축하기

EC2에서 EKS가 아닌 ECS로 전환한 이유

OpsNow가 처음 개발이 시작될 때부터 지금까지 대다수의 서비스는 EC2에 올라가 있습니다. 초창기에는 AWS 인프라로부터의 독립성을 보장받고 싶었고 그에 따라서 대부분의 기능을 EC2에 올려서 단순 VM처럼 이용했기 때문입니다. 시간이 지남에 따라서 비용 절감과 유지보수를 최소화하기 위한 노력이 시도되었는데, 이를 위해서는 AWS의 다양한 관리형 서비스를 이용하는 것이 훨씬 유리하다는 사실을 알게 되었습니다. 관리형 서비스는 개발자가 정말로 서비스…

Continue reading EC2에서 EKS가 아닌 ECS로 전환한 이유

Serverless 플랫폼을 이용한 AWS 빌링 데이터 수집

OpsNow에서는 초기에 고객의 S3 버킷에서 빌링 데이터를 수집/처리하기 위해서 하나의 배치 프로그램을 구동했었습니다. 그 이후에 많은 AWS 서비스를 접하게 되면서 과연 어떻게 하면 비용도 줄이고, 성능도 최적화 할 수 있는지 많은 시도를 하게 되었습니다. 최종적으로 빌링 데이터의 수집 부분을 분리하고 이 부분에 대해서는 서버리스 (Serverless) 플랫폼을 이용하였고, 앞서 소개했던 AWS SAM으로 개발하기 글을 따라서 개발을…

Continue reading Serverless 플랫폼을 이용한 AWS 빌링 데이터 수집

AWS SAM으로 개발하기

클라우드 컴퓨팅 서비스가 점차 다양한 형태로 발전하면서 단순히 공유 인프라를 제공하던 IaaS (Infrastructure as a Service)를 뛰어넘어 인프라 관리를 신경 쓸 필요가 없는 PaaS (Platform as a Service) 형태의 서비스가 널리 퍼져나가고 있습니다. 개발자가 컴퓨팅 자원, 즉 서버에 대한 관리를 할 필요가 없기 때문에 흔히 Serverless라고 불립니다. 이처럼 애플리케이션을 개발/운영하는데 인프라의 경계가 사라지고 Serverless가 등장함으로써…

Continue reading AWS SAM으로 개발하기