목록스프링 부트와 AWS로 혼자 구현하는 웹 서비스 (11)
Rootable의 개발일기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/rB8U8/btsmmyP6i7M/y7OWBaXo82UCfaoU1UATo1/img.jpg)
[본 글은 프로젝트 과정을 기록할 목적으로 작성되었으며 아래 교재에 기반하여 작성됨] 📌 무중단 배포 소개 무중단 배포 방식 AWS에서 블루 그린(Blue-Green) 무중단 배포 도커를 이용한 웹서비스 무중단 배포 이외에도 L4 스위치를 이용한 무중단 배포 방법도 있지만, L4가 워낙 고가의 장비이다 보니 대형 인터넷 기업 외에는 쓸 일이 거의 없다. 이번 챕터에서 진행할 방법은 엔진엑스(Nginx)를 이용한 무중단 배포다. 엔진엑스는 웹 서버, 리버스 프록시, 캐싱, 로드 밸런싱, 미디어 스트리밍 등을 위한 오픈소스 소프트웨어다. 엔진엑스가 가지고 있는 여러 기능 중 리버스 프록시가 있다. 리버스 프록시란 엔진엑스가 외부의 요청을 받아 백엔드 서버로 요청을 전달하는 행위를 말한다. 즉, 요청을 받아 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cy0DeC/btsmkvLUkhs/cvtcxMukgvLKdgaGU41jd1/img.png)
[본 글은 프로젝트 과정을 기록할 목적으로 작성되었으며 아래 교재에 기반하여 작성됨] 📌 CI & CD 소개 코드 버전 관리를 하는 VCS 시스템(Git, SVN 등)에 PUSH가 되면 자동으로 테스트와 빌드가 수행되어 안정적인 배포 파일을 만드는 과정을 CI(Continuous Integration - 지속적 통합)라고 하며, 이 빌드 결과를 자동으로 운영 서버에 무중단 배포까지 진행되는 과정을 CD(Continuous Deployment - 지속적인 배포)라고 한다. 일반적으로 CI만 구축되어 있지는 않고, CD도 함께 구축된 경우가 대부분이다. 여기서 주의할 점은 단순히 CI 도구를 도입했다고 해서 CI를 하고 있는 것은 아니다. 마틴 파울러의 4가지 CI 규칙 모든 소스가 살아 있고(현재 실행되고..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/8IvHR/btsl1zBEVX7/QvEJfc48NZyqVEoMXKSY61/img.png)
[본 글은 프로젝트 과정을 기록할 목적으로 작성되었으며 아래 교재에 기반하여 작성됨] 📌 EC2에 프로젝트 Clone 받기 🔎 EC2와 git 연동 📢 먼저 깃허브에서 코드를 받아올 수 있도록 EC2에 깃을 설치한다. sudo yum install git 📢 설치가 완료되면 다음 명령어로 설치 상태를 확인 git --version 📢 git이 성공적으로 설치되면 git clone으로 프로젝트를 저장할 디렉터리를 생성 mkdir ~/app && mkdir ~/app/step1 📢 생성된 디렉토리로 이동 cd ~/app/step1 📢 본인의 github 웹페이지에서 https 주소를 복사 📢 복사한 https 주소를 통해 git clone을 진행 git clone 복사한 주소 📢 git clone이 끝났으면..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/3SUv2/btsmd1XmhPM/NkHYT3Q3kei15YCAhc5Xn0/img.png)
[본 글은 프로젝트 과정을 기록할 목적으로 작성되었으며 아래 교재에 기반하여 작성됨] 📌 RDS(Relational Database Service) AWS에서 지원하는 클라우드 기반 관계형 DB다. 하드웨어 프로비저닝, DB 설정, 패치 및 백업과 같이 잦은 운영 작업을 자동화하여 개발자가 개발에 집중할 수 있게 지원하는 서비스다. 추가로 조정 가능한 용량을 지원하여 예상치 못한 양의 데이터가 쌓여도 비용만 추가로 내면 정상적으로 서비스가 가능한 장점도 있다. 🔎 RDS 인스턴스 생성 📢 amazon 로그인 후 검색창에 rds 검색 📢 대시보드 화면 이동 📢 DB 생성 📢 DB 엔진 옵션 선택 화면에서 MariaDB 선택 📢 DB 엔진 옵션 선택 화면에서 MySQL 선택 쿼리문 인식 문제 및 연결 등 여..