일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- appspec.yml
- subquery
- 테스트
- 추후정리
- 적용우선순위
- AuthenticationEntryPoint
- 검색
- 메소드명
- application.yml
- 커밋메세지수정
- WeNews
- 메세지수정
- 참조키
- 컨테이너실행
- Query
- querydsl
- 외부키
- appspec
- 테스트메소드
- foreignkey
- ㅔㄴ션
- 서브쿼리
- 예약
- docker명령어
- ubuntu
- 2 > /dev/null
- MySQL
- 포트
- EC2
- 네이티브쿼리
Archives
- Today
- Total
제뉴어리의 모든것
[Section4] [Cloud] 배포 자동화 - 1 본문
전체 항목
- 배포 자동화란
- 자동화 구성요소
- 전반적인 배포 흐름
배포 자동화 (Automated Deployment) 란
한번의 클릭이나 간단한 명령어를 입력하여 배포하여 자동으로 서버를 구동까지 시키는 것을 말한다.
배포 파이프라인은 다음과 같다.
- 소스단계
소스가 관리되는 원격 저장소에서 소스의 변화가 일어나고, 이를 감지하는 단계 - 빌드단계
소스단계에서 변화가 감지된 코드를 컴파일, 빌드, 테스트 하여 모두 통과될 경우 빌드를 함.
그리고 배포단계에 결과물인 빌드를 넘김 - 배포단계
넘겨 받은 빌드를 현재 서비스서버에 실시간으로 실행시킨다
위와 같은 단계는 더 세분화 되거나 간소화 될 수 있다.
알아야할 AWS의 개념
- CodeCommit
github와 비슷한 서비스로써
코드를 저장하고 버전관리가 가능한 서비스이다.
github에 비해 보안 관련 기능에 있어 강점이있다. - CodeBuild
CodeBuild 서비스를 통해 유닛 테스트, 컴파일, 빌드와 같은 빌드 단계에서 필수적으로 실행되어야 할 작업들을 명령어를 통해 실행 가능하다 - CodeDeploy
배포단계에서 사용되는 서비스로,
변경된 앱을 서비스중인 서버에 반영시켜주는 역할을 한다. - CodePipeline
배포 자동화에서 사용되는 각 서비스들을 이어주는 서비스라고 생각하면 된다.
자동화 구성요소
- 프로젝트 : Spring Boot
- 소스 저장소 : Git hub
- 소스의 빌드 역할 : AWS CodeBuild
- 배포 역할 : AWS Code Deploy
- 빌드가 저장되고 서비스를 하는 서버 : AMAZON EC2
- 자동화 과정을 연결시켜주는 역할 : AWS Code Pipeline
전반적인 배포 흐름
- Spring Boot 프로젝트를 원격 저장소인 Git Hub 레포지토리에 push한다
- Code Build가 자신의 파이프 라인에 소스 스테이지로 등록된 Git Hub의 변경 내용을 전달받아
컴파일, 빌드, 테스트를 진행한다 - Code Build는 빌드 내용을 Code Deploy에게 전달한다
- Code Deploy는 EC2 서버에 빌드 내용을 배포하고 서비스를 실행시킨다.
'코드스테이츠 > 정리 블로깅' 카테고리의 다른 글
[Section4] 기술 면접 (0) | 2022.10.19 |
---|---|
[Section4] [Cloud] 운영전략 (0) | 2022.10.18 |
[Section3] section3 회고 (0) | 2022.10.18 |
[Section 3] [Spring MVC] API 문서화 (0) | 2022.10.18 |
[Section 3] [Spring MVC] 서비스 (비즈니스) 계층 (0) | 2022.10.17 |