안녕하세요, 쯀리입니다.
오늘은 AWS란 무엇인지 살펴보고
EC2와 Elastic Beanstalk까지 사용해보겠습니다.
AWS 가입하기
저는 이미 가입되어 있으니 로그인만 해주도록 하겠습니다.
EC2란 무엇인가? (Elastic Compute Cloud)
Amazon Elastic Compute Cloud(Amazon EC2)는 Amazon Web Services(AWS) 클라우드에서 확장식 컴퓨팅을 제공합니다. Amazon EC2를 사용하면 하드웨어에 선투자할 필요가 없어 더 빠르게 애플리케이션을 개발하고 배포할 수 있습니다. Amazon EC2를 통해 원하는 만큼 가상 서버를 구축하고 보안 및 네트워크 구성과 스토리지 관리가 가능합니다.
=> 한대의 컴퓨터를 임대한다고 생각
그리고 그 컴퓨터에 OS를 설치하고 웹서비스를 위한 프로그램들(웹서버, DB)을
설치해서 사용 하면 됩니다.
1대의 컴퓨터를 하나의 EC2 인스턴스라고 부릅니다.
EB란 무엇인가 ? (Elastic BeanStalk)
AWS Elastic Beanstalk는 Apache, Nginx 같은 친숙한 서버에서 Java, NET, PHP, Node.js, Python, Ruby, Go 및 Docker와 함께 개발된 웹 응용 프로그램 및 서비스를 배포하고 확장하기 쉬운 서비스입니다.
아래서 보는 도표와 같이 Elastic Beanstalk은 EC2 인스턴스나 데이터베이스 같이 많은 것들을 포함한 "환경"을 구성하며 만들고 있는 소프트웨어를 업데이트할 때마다 자동으로 이 환경을 관리해줍니다.
EB 내부에 -> EC2 인스턴스, 로드밸런서, DB 등등을 설치할 수 있는 환경을 제공합니다.
Elastic BeanStalk
먼저 Elastic BeanStalk을 사용해보겠습니다.
우선 실행 전에 IAM에서 역할을 하나 만들어주겠습니다
그렇지 않으면 The instance profile aws-elasticbeanstalk-ec2-role associated with the environment does not exist. 에러발생가능합니다.
EC2로 설정해줍니다.
다음을 누르고 3가지 정책을 선택한 뒤에 다음을 누릅니다
- AWSElasticBeanstalkWebTier
- AWSElasticBeanstalkWorkerTier
- AWSElasticBeanstalkMulticontainerDocker
역할의 이름을 aws-elasticbeanstalk-ec2-role 로 설정해줍니다.
다시 Elastic Beanstalk 환경을 설정해주겠습니다 .
애플리케이션 생성을 눌러줍니다.
환경티어 : 웹 서버 환경
애플리케이션 정보 :
이름 : DockerReactApp
플랫폼 :
플랫폼 유형 : Docker
플랫폼 브랜치 : Docker running ~~ Linux 2023 (Linux2는 에러발생가능! )
프리티어 사용 가능한 단일 인스턴스를 사용할게요
다른것은 과금의 여지가 있으니 주의해주세요!
다음을 눌러줍니다.
서비스 액세스 구성에서 EC2 인스턴스 프로파일이 만들어준 역할로 잘 설정되어있는지 확인합니다.
검토단계로 건너 뛰겠습니다.
환경이 만들어지면 성공적으로 시작됩니다.
환경으로 이동해보겠습니다.
완료!
오늘까지 사용이 모두 완료되었다면 환경을 우선 종료해줄게요
다시 사용할때 키면 되기 때문에 오늘은 종료하겠습니다.
오늘은 AWS의 EC2 와 EB 를 알아보았는데
다음 시간에는 만들어두었던 앱을 배포해보겠습니다
참조
'IT 잡지식 > DevOps' 카테고리의 다른 글
[Jenkins] Docker에 Jenkins 설치 (0) | 2023.09.12 |
---|---|
[Docker | AWS] .travis.yml 파일 작성(배포) (0) | 2023.09.12 |
[Docker] 리액트 어플을 실제로 배포해보기 (테스트까지) (0) | 2023.09.10 |
[Docker] 운영환경을 위한 Nginx 사용하기 (0) | 2023.09.09 |
[Docker] 리액트 앱 배포-3 (0) | 2023.09.09 |