EC2

· DevOps/Infra
0. 왜 Github Actions을 사용했나?사이드 프로젝트에서 기존에 사용해봤던 Github Actions 말고 Jenkins를 사용하려고 했는데, 예전에 기술적 의사결정을 해놓고서 깜빡했나보다. jenkins를 제대로 활용하기 위해서는 추가 EC2 인스턴스가 결국 필요했다. 때문에 Docker-Compose 써서 jenkins로 혼자 하루 온종일 시행착오를 겪으며 jenkins와 씨름했지만 서버비 등 상황 상 Github Actions를 다시 쓰기로 했다. Github Actions는 Github에서 인프라 서버를 제공해주는 방식이기 때문에 인프라용 인스턴스를 증설할 필요가 없기 때문이다. 갓 Github. 추가적으로 Docker를 쓰는 이유는 이미지, 컨테이너 방식으로 패키징하여 관리가 쉽고, d..
· DevOps
0. 들어가며사이드 프로젝트로 2인 개발을 시작했다. 전 팀프로젝트에서 Github Actions를 사용해서 무중단배포까지 구축해봤는데, 이번에는 현업에서 자주쓰이는 jenkins를 경험해보고싶어 Jenkins로 결정하게 되었다. 원래 규모가 작은 프로젝트인만큼 Github Actions를 쓰는게 여러모로 가볍고 좋았겠지만, 좋은 경험 기회라고 생각되어 도전해봤다.AWS EC2 인스턴스 구축하는 방법은 블로그에도 이미 있고, 다른 블로그에도 글이 많으니 생략하겠다.나는 서버비 문제로 우선 프리티어로 EC2를 만들었다.근데 설치해보니 그리 어렵진않지만 Docker를 저번에 써봣으니 docker로 다시 해봐야겠다 하고 설치까지만하고 삭제하고 Docker로 재설치하려고한다. 이 글에서는 Docker 없이 시행..
0. 무중단배포? 블루그린(blue/green)? 기존에 Spring Boot → Github Actions → Docker image Build → image push to docker hub → image pull to ec2 → image run 이었던 방식에는 push 가 발생하면 서버가 업데이트 되는 동안 잠깐 서버가 내려가는 downtime이 발생한다. 따라서 서비스가 중단되지않고 유지되기 위해서 무중단배포를 진행하였다. 블루 그린 배포방법은 무중단 배포 기법의 하나다. 동작 방식은 다음과 같다. 8080포트를 blue, 8081포트를 green이라 가정한다. blue 포트로 서비스를 실행중일때 업데이트가 일어나면 green 포트로 호스팅을 옮겨 서비스를 말그대로 번갈아가며 배포하는 방법이다...
chillmyh
'EC2' 태그의 글 목록