본문 바로가기

배포 자동화4

DevOps Day 36 (4.25) 배포 자동화_배포 전략 블루 / 그린 배포 Blue-Green 배포는 애플리케이션 또는 마이크로서비스의 이전 버전에 있던 사용자 트래픽을 이전 버전과 거의 동일한 새 버전으로 점진적으로 이전하는 애플리케이션 릴리스 모델입니다. 블루 / 그린 배포가 필요한 이유? 배포를 자동화할 때 겪는 어려움 중 하나는 소프트웨어를 최종 테스트 단계에서 실제 프로덕션 단계로 전환하는 컷오버 자체입니다. 일반적으로 다운 타임을 최소화하려면 이 작업을 신속하게 수행해야 합니다. 두 가지 프로덕션 환경 : 컷오버(cutover) : 기존에 운영되던 환경을 중단시키고, 새로 구축된 환경으로 오픈하는 것 다운타임(Downtime) : 시스템을 이용할 수 없는 시간 blue를 실제 운영 중인 환경으로 가정하겠습니다. - 새로운 버전을 릴리스 하고 싶은 .. 2023. 4. 26.
DevOps Day 35 (4.24) 배포 자동화_Sprint 서버 배포 파이프라인 앞선 실습을 통해 클라이언트 배포 자동화 파이프라인을 구축했습니다. 이번 실습에서는 서버 배포 자동화 파이프라인을 구축하는 실습을 진행하겠습니다. Bare Minimum - AWS 개발자 도구 서비스를 이용해서 배포 자동화 파이프라인을 구축해야 합니다. - CodePipeline을 이용해서 각 단계를 연결하는 파이프라인을 구축합니다. - Source 단계에서 소스 코드가 저장된 GitHub 리포지토리를 연결합니다. - Deploy 단계에서 CodeDeploy 서비스를 이용하여 EC2 인스턴스에 변경 사항을 실시간으로 반영합니다. - 나중에 변경 사항을 GitHub 리포지토리에 반영했을 경우, 배포 과정이 자동으로 진행되어야 합니다. - 배포 과정에서 오류가 생길 경우, log 파일을 참조하여 문제점을 확.. 2023. 4. 25.
DevOps Day 35 (4.24) 배포 자동화_Sprint 클라이언트 배포 파이프라인 Bare Minimum : - AWS 개발자 도구 서비스를 이용해서 배포 자동화 파이프라인을 구축해야 합니다. - CodePipeline을 이용해서 각 단계를 연결하는 파이프라인을 구축합니다. - Source 단계에서 소스 코드가 저장된 GitHub 리포지토리를 연결합니다. - Build 단계에서 CodeBuild 서비스를 이용하여 수동으로 진행했던 build 과정을 자동으로 진행합니다. - Deploy 단계에서 결과물을 S3 버킷에 자동으로 전달합니다. - 나중에 변경 사항을 GitHub 리포지토리에 반영했을 경우, 배포 과정이 자동으로 진행되어야 합니다. - 배포 과정에서 오류가 생길 경우, log 파일을 참조하여 문제점을 확인할 수 있어야 합니다. 1. Repository Fork + Git clo.. 2023. 4. 25.
DevOps Day 35 (4.24) 배포 자동화 배포 자동화 배포 자동화란 한 번의 클릭 혹은 명령어 입력을 통해 전체 배포 과정을 자동으로 진행하는 것을 뜻합니다. 배포 자동화가 필요한 이유? - 먼저 수동적이고 반복적인 배포 과정을 자동화함으로써 시간이 절약됩니다. - 휴먼 에러(Human Error)를 방지할 수 있습니다. 여기서 휴먼 에러란 사람이 수동적으로 배포 과정을 진행하는 중에 생기는 실수를 뜻합니다. 그전에 했던 배포 과정과 비교하여 특정 과정을 생략하거나 다르게 진행하여 오류가 발생하는 것이 휴먼 에러의 예로 볼 수 있습니다. 배포 자동화 파이프라인 배포에서 파이프라인(Pipeline)이란 용어는 소스 코드의 관리부터 실제 서비스로의 배포 과정을 연결하는 구조를 뜻합니다. 1. Source 단계: Source 단계에서는 원격 저장소에.. 2023. 4. 25.