Love Every Moment
〔AWS〕아마존 웹서비스로 EC2 서버를 구축해보자 본문
* 이 글을 작성하는 사람은 AWS로 서버 구축을 처음 해보기에 틀린 부분이 있을 수도 있습니다.
* 개인 기록용 블로그이니 단순 참고만 해주세요.
1. AWS
- 아마존에서 개발한 클라우드 컴퓨팅 플랫폼
- 네트워킹을 기반으로 가상 컴퓨터와 스토리지, 네트워크 인프라 등 다양한 서비스를 제공
클라우드 컴퓨팅(Cloud Computing)
- 인터넷을 통해 IT 리소스와 애플리케이션을 온디맨드로 제공하는서비스로 종량 과금제
- 기존의 물리적인 형태의 실물 컴퓨팅 리소스를 네트워크 기반 서비스 형태로 제공
- 사용자로 하여금 네트워크 상에서 클라우드 서비스의 자원을 사용하게 해줌
IaaS(Infrastructure as a Service) | PaaS(Platform as a Service) | SaaS(Software as a Service) |
AWS, Microsoft Azure | Heroku, Google App Engine | 네이버 클라우드, 웹 메일 |
(1) IaaS
- 가상 서버, 스토리지, 가상 네트워크 등의 리소스를 서비스 형태로 제공
- 사용자는 물리적인 하드웨어를 직접 관리할 필요가 없이 직접적으로 컴퓨터 리소스를 사용
- 클라우드 IT의 기본 구성 요소 (네트워킹, 컴퓨터, 데이터 스토리지 공간)
(2) PaaS
- DB 또는 Application 서버 등의 미들웨어를 제공
- 하드웨어/OS/미들웨어에 대한 관리는 서비스 제공자가 하며, 사용자는 제공된 미들웨어만 사용 가능
- 주로 개발 환경과 관련한 서비스를 제공(OS, DB, WAS, JDK)
- 기본 인프라 (ex. 하드웨어와 운영 체제)를 관리할 필요 없이 애플리케이션을 실행
(3) SaaS
- 소프트웨어 또는 애플리케이션의 기능만 제공
2. EC2
- Amazon Elastic Compute Cloud 의 약자로 아마존 컴퓨팅 서비스의 핵심
- 새로운 서버 인스턴스를 확보하고 부팅하는데 필요한 시간을 몇 분으로 단축
- 컴퓨팅 요구사항의 변화에 따라 신속하게 컴퓨팅 파워를 확장하거나 축소
- 필요한만큼 물리적 또는 논리적 자원을 대여
- Ubuntu, CentOS 와 같은 운영 체제를 선택하여 EC2 인스턴스를 생성
3. EC2 로 자원 생성하기
- AWS 계정을 생성하고 결제 카드를 등록하고 나면 본격적으로 클라우드를 이용 가능
- EC2 항목을 찾아 들어가 Launch Instance 버튼을 눌러 인스턴스 생성을 시작한다.
(1) AMI(Amazon Machine Image) 선택
- 자신에게 필요한 운영체제를 선택
- 내 경우에는 프리 티어가 가능한 우분투 서버 20.04 를 선택
(2) 인스턴스 타입 선택
- 프리 티어가 적용 가능한 t2.micro 타입을 선택
- 12달 동안 750시간 사용 가능하며 초과 시에 등록한 카드로 요금 부과
- T2 인스턴스는 기본 수준의 CPU 성능과 더불어 성능 순간 확장이 가능한 성능 인스턴스
- 즉, 평소에는 일관적인 기본 수준의 성능을 제공하다가
- 갑자기 워크로드가 증가하면 연산을 위해 순간 성능을 지원
(3) 인스턴스 세부 정보 구성
(4) 스토리지 추가
- 서버를 구축하려면 디스크가 있어야 소스 코드를 올리고 관리 가능
- 사이즈는 8기가 (프리 티어로는 30기가까지 사용 가능)
(5) 태그 추가
- 태그를 사용하지 않는다면 스킵
(6) 보안 그룹 구성
- 생성한 인스턴스에 어떤 포트를 열어줄 것인가?
- 해당 포트에 어떤 아이피 대역이 접근할 수 있나?
- 기본 포트가 22로 열려있는 이유는, 터미널을 이용해서 SSH로 인스턴스에 접근하려면 필요한 포트가 22이기 때문
- 소스가 0.0.0.0/0 이면 모든 아이피 주소에서 접근 가능하므로 경고 메시지가 뜨니 연습용이 아니라면 보안을 위해 변경
(7) 인스턴스 시작 검토
- 새로운 키페어 생성을 선택하여 키페어 이름을 지어준다.
- 키페어 다운로드가 제일 중요! 이 메뉴를 닫으면 더 이상 해당 키페어를 복구할 수 없다. 안전한 곳에 보관할 것!
(8) 인스턴스 생성
- 조금 기다리면 인스턴스 생성이 완료된다.
- 이제 해당 인스턴스를 이용해서 어플리케이션을 배포해보자.
4. 인스턴스 접근
- 자신이 사용하는 터미널을 연다. 나의 경우에는 아이맥을 사용하므로 iTerm 을 사용하였다.
- 키페어를 저장해두었던 경로로 접근한다.
- 아직은 접근 권한이 없는 상태이므로, chmod 400 명령어를 이용해 권한을 부여한다.
- 그 다음 ssh -i 명령어와 키페어 파일, 그리고 사용자@퍼블릭 IP 를 입력하면 서버에 접근할 수 있게 된다.
'MOMENT:: RECORD > 42 SEOUL' 카테고리의 다른 글
〔Debug〕에러가 어디서 났는지 모르겠다면 lldb 로 디버깅 해보자 (0) | 2022.01.31 |
---|---|
[SOLONG] MiniLibX 라이브러리 매뉴얼 읽고 사용해보기 (0) | 2022.01.07 |
〔2021 오픈소스 SW 해커톤〕이노베이션 아카데미 학장상(2위) 수상 후기와 회고록 (0) | 2021.12.09 |
〔Virtualbox〕 가상머신 사용을 위한 사전 지식 (0) | 2021.10.22 |
〔03.22-04.16〕42서울 라피신을 마치고 모아보는 기억 조각들 + 본과정 합격 (0) | 2021.04.19 |