Development

Cloud 비용을 줄이기 위한 Hackathon 아이디어

chbae 2024. 8. 2. 05:11
728x90

회사에서 프로젝트를 진행하는데 개발 환경의 인프라가 대부분 Cloud에 올라가 있다. 당연히 비용도 엄청나게 지불하고 있고 관리가 잘 안되어 무차별적으로 사용하고 있는 부분도 많이 있다. 이에 전사적으로 Cloud 비용을 줄이기 위한 해커톤을 하루 진행하기로 했다.

 

출처: https://priyankakumari17.medium.com/cloud-cost-reduction-techniques-bb12d7e207aa

 

기본적으로 오랫동안 사용하지 않는 아티팩트 찾아서 삭제, 올바른 형태로 CI/CD 사용, 최적의 인스턴스 유형 사용, 사용하지 않는 시간에 인스턴스 Off 등 큰 아이디어들은 제공한다. 그리고 실제 프로젝트의 아티팩트에 들어가서 줄이는 작업을 진행한다. 당연히 제품과 개발에 영향을 주면 안된다. 내일 참여하기 위해 간단히 아이디어를 생각해보려고 이렇게 글을 쓰고 있다.

 

우선 가능하면 현재 프로젝트에서 사용하는 AWS에 접속해서 어디서 비용을 많이 사용되고 있는지를 알고 시작해보는 것도 좋을 것 같다.

해커톤 아이디어 (Brainstorming)

  • EFS에 있는 오래된 캐시 지우기
  • CI/CD에서 사용하는 빌드 머신의 Intel 인스턴스를 AMD로 바꿔 보기
  • EFS 사용하는 대신 S3 사용하기 (PREMIRROR)
  • 꼭 필요한 빌드 Variant에서만 이미지를 Artifactory에 저장하기
  • Artifactory에 저장되어 있는 것들을 압축할 수 있는지 분석해보기
  • 빌드 인스턴스 타입 분석하여 조정하기
  • 필요한 Variant 만 빌드하게 하는 Smart Pipeline 최적화하기
  • MR 빌드에서 빌드 안하도록 타협할 수 있는 빌드 이미지를 생각해보기
  • MR 빌드에서 꼭 필요할 때 (버튼 눌렀을 때)만 파이프라인이 돌아가도록 하기
  • S3 비용 관리
    • S3 Intelligent-Tiering: 데이터 액세스 패턴에 따라 비용을 자동으로 최적화하는 S3 Intelligent-Tiering을 사용한다.
    • Lifecycle Policies: S3 객체 수명 주기 정책을 설정하여 사용하지 않는 데이터를 자동으로 아카이브하거나 삭제하여 저장 비용을 절감한다.
  • 외부에서 S3로 접근하여 다운로드 받는 비용 절감할 수 있는 방안 고민하기
  • 통합 방법 및 아키텍처 구조 변경 (BSP -> 플랫폼 -> 제품)

생각나는대로 하나씩 업데이트할 예정이고 결과도 가능하면 추후에 공유해볼까 한다.