배포관련/AWS

젠킨스와 nginx를 통해서 배포 자동화를 구현해보려고 하였습니다.여기에 관련해서 시행착오가 많았는데 정리하려고 합니다. 일단 구조는 다음과 같습니다. 1. aws ec2 instance jenkins 설치2. docker compose 로 nginx, postgresql, certbot, spring 이미지 빌드 후 실행 이상하다고 생각할 수 있는데, 맞습니다.  1번 방법을 먼저 수행해봤고, 2번 방법으로 나중에 도입했기 때문에 보통은 jenkins도 docker compose로 띄워야 네트워크 이슈도 적고, 관리도 편하다는 것을 나중에 깨달았습니다. AWS EC2 프리티어 기준입니다. 1. SWAP 메모리 설정관련해서 이전에 포스팅을 한 적이 있습니다.https://iii.ad/67bfb72. Do..
보통 개발 초기에는 로컬에 첨부파일이나 이미지를 저장하도록 설정하지만, 운영 단계에 들어가기 전에 파일 저장소를 어떻게 구성할지를 결정하는 것이 중요합니다. 파일을 서버의 특정 디렉토리에 저장할 수도 있지만, 일반적으로 서버 용량 관리와 이중화(HA) 문제를 고려하여 별도의 스토리지 시스템을 도입하는 경우가 많습니다. AWS에서는 이러한 파일 저장소 문제를 해결하는 서비스를 제공하는데, 그중 대표적인 것이 AWS S3입니다. S3 버킷 설정버킷 만들기 클릭버킷 만들기 세팅 버킷 이름 입력하는 부분 빼고, 나머지 부분은 기본 설정을 그대로 가져갔습니다.  AWS IAM 권한 설정AWS에서는 IAM(Identity and Access Management) 계정을 생성하여 권한을 세분화하여 할당하는 방법을 권..
간단하게 만들어 본 사이드 프로젝트를 백엔드만 배포하려고 할 때 거쳤던 여러가지 배포 방법 고민에 대해 공유하면 좋을 것 같아서 정리해놓으려고 합니다. 그래서 배포란 무엇일까?기획 -> 요구사항 분석 -> 역할 분담 -> 개발 -> 배포 -> 지속적인 서비스 개선 (리팩토링)개발자들이 개발한 앱, 웹 서비스들을 일반 사용자들이 접근할 수 있게 하는 것이 배포라고 할 수 있습니다. 이런 배포를 하려면 컴퓨터 한 대가 필요합니다. 온프레미스 환경이라고 부릅니다.정확히 말하면, 온프레미스 환경은 단순히 입출력 장치가 포함된 컴퓨터를 의미하는 것이 아니라, 물리적인 하드웨어 인프라를 구축하여 우리의 웹사이트를 24시간 안정적으로 운영할 수 있도록 하는 것을 말합니다. 그러나 24시간 365일 서버를 계속 가동하..
네트워크를 왜 학습해야 할까? 서비스는 네트워크를 통해 사용자의 가치를 전달합니다. 네트워크 상의 이슈는 서비스에 심각한 문제를 발생시킬 수 있다.! 안정적인 서비스 운영을 위해 미리 네트워크를 학습해야한다. 내가 만든 서비스가 인기가 많아져서, 하루 만명의 유저가 사용한다고 생각해보자. 서버 한대가 힘겹게 요청을 받아들이고 있다... (서버 : 살려줘..) 결국 느려진 지연 요청과, 트래픽으로 인해 서버가 터지게 되어 많은 유저들을 잃게 되었다. (절망편) 망 AWS에서는 망과 관련된 개념이 몇 개 있습니다. 일단 리전(Region) - 제가 정리 해놓은 글도 있습니다. 버지니아로 리전을 하면 안 되는 이유 https://computerlove.tistory.com/entry/%EB%A6%AC%EC%A..
리전(Region) 선택하기 AWS EC2를 시작하기 위해 제일 먼저 확인해야 할 점 리전(Region)이란 인프라를 지리적으로 나누어 배포한 각각의 데이터 센터를 의미한다. EC2를 간단하게 설명하면 우리는 컴퓨터를 빌려서 원격으로 접속해 서비스를 사용한다. 컴퓨터라는 하드웨어는 가상머신 개념이 생긴 뒤로 여러 사용자에게 빌려줄 수 있게 되었다. 가상화 개념으로 컴퓨터를 쪼개서? 빌려주는 건데, 실제로 컴퓨터는 존재한다에 초점을 맞춰야 할 것 같다. 빌려주는 컴퓨터들이 모여있는 곳을 리전(Region)이라고 생각하면 된다. 왜 버지니아 컴퓨터를 사용하면 안 될까? 애플리케이션을 사용할 때 네트워크를 통해 통신하게 됩니다. 다 해저 광 케이블로 연결되어 있습니다. 따라서 컴퓨터와 위치가 멀면 멀수록 속도..
EC2(Elastic Compute Cloud)? 컴퓨터를 빌려서 원격으로 접속해 사용하는 서비스이다. 하나의 컴퓨터를 빌리는 것! EC2가 왜 필요할까? 서버를 배포하기 위해서 컴퓨터가 필요합니다. 중점은 서버가 꺼지면 안 된다는 점입니다. 우리 집의 컴퓨터를 서버로 쓸 수 있겠지만. 전기세 어쩔티비.. 그리고 인터넷을 통해 내 컴퓨터에도 접근할 수 있기 때문에 보안적으로 위험하다. AWS EC2는 여러 부가기능들(로깅, 오토스케일링, 로드밸런싱 등) 백엔드에서 보통 서버를 배포할 때 AWS EC2 로 배포한다고 한다. 자체적으로 온프레미스 형식으로 배포하는 경우도 있지만! 톰캣, 제우스 등등 프론트엔드에서는 AWS EC2로 배포하기보다는 AWS S3를 사용해서 주로 배포한다고 합니다.! vercel,..
솜사탕코튼
'배포관련/AWS' 카테고리의 글 목록