왜 Elastic Beanstalk 였나?
작은 스타트업은 인력이 적고 빠르게 개발을 하여 성과를 만들어야된다. 작은 스타트업같은 경우는 인프라 전문 인력을 구하기 힘들기 때문에 보통 백엔드와 병행하여 인프라 작업을 구축한다.
Elastic Beanstalk은 이러한 상황에서 인프라 관리를 도와줌으로 개발자가 코딩에만 집중할 수 있도록 해주었다.
실제로 사용해보며 무슨점이 편했는가?
배포 용이
- Elastic Beanstalk + Docker 플랫폼을 사용하였는데 EC2에 직접 Docker 다운로드 해줘야했지만 그럴 필요가 없었다.
- 원클릭으로 쉽게 배포할 수 있다. (압축 파일 또는 docker-compose.yml 파일을 선택하여 올리면 배포 끝.)
운영 환경을 빠르게 구축할 수 있도록 도와준다.
- CloudWatch 연동 , 로드밸런싱, RDS 등등 빠르게 연동할 수 있다.
실제로 사용해보며 무슨점이 불편했는가?
- 생각보다 튜토리얼 수준에 래퍼런스만 존재한다는 것. 그리고 CI/CD 같이 묶어 배포하는 블로그들 밖에 없었다. CI/CD 없이 수동 배포로 먼저 해보고 싶었는데 자료가 많이 부족했다( 래퍼런스 찾기가 너무 어려웠다. ㅠㅠ)
- 초보자들도 쉽게 사용할 수 있다고 하는데 운영단계에서 사용할꺼면 환경구성을 커스텀 해야하기 때문에 기본적으로 AWS 서비스에 대한 이해도가 무조건 필요하다.
배포가 느리다 (개인적 생각)
실제로 사용해보며 직접적으로 부딪혔던 부분은 ?
환경 구축 설정
- [Docker 플랫폼 선택] → [추가 옵션 구성] 클릭
- Docker Compose를 사용하여 Docker 환경을 관리하는 경우 Elastic Beanstalk은 프록시 서버를 컨테이너로 실행한다고 가정한다. 따라서 프록시 서버 설정의 기본값은 없음이며 Elastic Beanstalk는 NGINX 구성을 제공하지 않는다.
- 로드 밸런싱을 사용하기 위해서는 사전 설정에 [사용자 지정 구성] 선택 하자.
- 인스턴스를 클릭하여 기존에 만들었던 [보안그룹] 설정 가능하다.
- 중요! 용량 편집 클릭 후 → 프로세서 [arm64] 로 선택할 것! 선택하지 않으면 도커 빌드 시 —platform arm64 를 붙어야한다. 왠만한 공식이미지들은 arm64을 지원하니 arm64을 사용하도록하자.
참고 자료
docker-compose.yml 또는 zip 파일 수동 배포
- 프라이빗 DockerHub에 접근하기 위한 인증정보 설정
[Elastic Beanstalk]에서 프라이빗 DockerHub 이미지 가져오기 및 CI/CD 없이 배포하기
[Elastic Beanstalk]에서 프라이빗 DockerHub 이미지 가져오기 및 CI/CD 없이 배포하기
Private DockerHub 이미지 가져오는 방법 설정 사전조건 1. Elastic BeanStalk가 실행되고 있어야 한다. 2. DockerHub ID가 있어야 된다. 3. Private Repository가 존재해야 한다. 4. Private Repository에 Dockerfile로 작성한
dmin3.tistory.com
- Docker.aws.json 파일과 docker-compose.yml 파일 작성하여 같이 압축하여 배포하기
[AWS] Dockerrun.aws.json 컨테이너 자동으로 run 안되는 현상
[AWS] Dockerrun.aws.json 컨테이너 자동으로 run 안되는 현상
현재 나는 Elastic Beanstalk Docker 플랫폼 버전 을 사용하고 있다. 나는 CLI 대신 Console을 통해 수동배포를 진행하였다. CI/CD을 도입하지 않은 이유는 수동배포가 왜 불편하지 알고싶었다. 또한 수동배
www.notion.so
HTTPS 설정 (Route53 을 사용하는 방법과 사용하지 않는 방법)
[AWS Route53] 네임서버 및 SSL 구축 방법
[Route53] 네임서버 및 SSL 구축 방법
Route53 사용하여 네임서버 및 SSL 구축 방법 HTTPS 설정 사전조건 - 구입한 도메인이 있어야 함. Route53 → 호스팅 영역 생성 → 구입한 도메인 입력 (서브 도메인 설정은 따라 알아보자.) → 퍼블릭 호
dmin3.tistory.com
[AWS] Route53 사용하지 않고 SSL 인증서만 사용하는 방법 With NameCheap
[AWS] Route53 사용하지 않고 SSL 인증서만 사용하는 방법 With NameCheap
이미 도메인 사이트에서 도메인과 SSL 인증서를 구매하였다. 백엔드는 서브 도메인을 사용중이였다. 처음에는 호스팅영역을 만들어 같은 방법으로 진행하였지만 잘 되지 않았고 이래저래 다시
dmin3.tistory.com
로드 밸런싱 설정
- 리스너와 프로세스 설정 방법을 알 수 있었다.
- 로드 밸런싱은 IP주소가 아니라 DNS 주소를 가지고 있고 DNS 주소와 HTTPS을 연동하여 사용할 수 있다.
[ElasticBeanstalk] 로드 밸런싱 환경 구성 설정
[ElasticBeanstalk] 로드 밸런싱 환경 구성 설정
로드밸런싱 설정 [ElasticBeanStalk] -> [환경] -> [구성] 이동하면 해당 사진처럼 나온다. 리스너 외부에서 들어오는 포트에 대한 설정이라고 생각하면 된다. 그림을 보면 HTTPS 443 포트만 활성화 시켜두
dmin3.tistory.com
Elastic BeanStalk을 이용하여 간접 또는 직접적으로 경험한 AWS 서비스
- Auto 스케일링
- 로드 밸런싱
- CloudWatch
- S3
- EC2
- Route53
- ACM
- IAM
- S3
'AWS' 카테고리의 다른 글
| [AWS] access Denied for bucket 해결방법 (0) | 2023.04.18 |
|---|---|
| [ElasticBeanstalk] 로드 밸런싱 환경 구성 설정 (0) | 2023.04.18 |
| [AWS] Route53 사용하지 않고 SSL 인증서만 사용하는 방법 With NameCheap (0) | 2023.04.18 |
| [Route53] 네임서버 및 SSL 구축 방법 (0) | 2023.04.14 |
| [ElasticBeanStalk] Dockerrun.aws.json 컨테이너 자동으로 run 안되는 현상 (0) | 2023.04.14 |