AWS Code Deploy

흑이·2023년 2월 1일
0

Code Deploy 장점

  • 자동배포로 새로운 기능들의 빠른 배포
  • 소프트웨어 & 서버 다운타임 X (고객들은 서버나 프로그램을 사용하는데 불편함이 없다.)
  • Manual 에러 X


배포 방식

Rolling 배포

  • 여러대의 서버가 구성된 경우, 차례대로 배포하는 방법
  • 이전 버전의 서버는 한대씩 죽여가면서 새롭게 배포한 서버를 한대씩 올려가는 방식이다.
  • Rolling에서 주의할 점은 하나의 서버가 중단 되었을 때 나머지 서버의 부하량을 잘 파악해야한다.
  • 예를 들어, 100까지 감당 가능한 서버 3대가 있을 때 70,70,70씩 부하를 가지고 있다면,
  • 한개 서버만 다운타임이 생겨도 0,105,105가 되버려서 모든 서비스가 마비가 되버린다.


Blue/Green 배포

  • Rolling 배포는 전 버전으로 한번에 돌아가기 어려움, Blue/Green 배포는 이전 버전과 새로운 버전을 모두 존재하기에 롤백이 쉬움
  • 하지만 Rolling 방식보다 2배의 자원을 사용해야 하므로 더 많은 비용이 발생하게 된다.
  • Blue : 이전 버전
  • green : 새로운 버전


Rolling 배포 방법은 무조건 사용되는 경우

  • 맨 처음 배포하는 경우, 새로운 버전과 비교할것도 없고 상대적으로 빠른 배포가 가능
  • 그러면 맨 처음 배포할 경우에 Blue/Green 배로를 사용하면 안되나?
  • 하나의 새로운 프로덕션 환경을 만들어야 함, 따라서 두개의 환경을 구축하는데 추가적인 비용이 든다.
  • 배포가 복잡하다면 Blue/Green 배포방식이 더 좋다.
  • downtime이 전혀 없고, 이전 버전으로 복원이 매우 용이하다.


https://dunchi.tistory.com/69
https://potato-yong.tistory.com/136
https://www.inflearn.com/course/aws-%EC%9E%85%EB%AC%B8/dashboard

0개의 댓글