이 글은 유튜브 AWS 강의실 채널의 "쉽게 설명하는 AWS 기초강좌"의 내용을 정리한 글입니다
EC2 소개
Amazon Elastic Compute Cloud(Amazon EC2)는 Amazon Web Services(AWS) 클라우드에서 온디맨드 확장 가능 컴퓨팅 용량을 제공합니다. Amazon EC2를 사용하면 하드웨어 비용이 절감되므로 애플리케이션을 더욱 빠르게 개발하고 배포할 수 있습니다. Amazon EC2를 사용하여 원하는 수의 가상 서버를 구축하고 보안 및 네트워킹을 구성하며 스토리지를 관리할 수 있습니다. 용량을 추가(스케일 업)하여 월간 또는 연간 프로세스 또는 웹 사이트 트래픽 급증 등 컴퓨팅 사용량이 많은 작업을 처리할 수 있습니다. 사용량이 감소하면 용량을 다시 축소(스케일 다운)할 수 있습니다.
-> aws에서 말하는 EC2
EC2를 사용하는 경우
- 서버를 구축할 때
- 어플리케이션을 사용하거나 호스팅 할 때
- 데이터베이스, 머신러닝, 비트코인 채굴, 연구용 프로그램
EC2의 특성
- 초 단위 온디맨드 가격 모델
- 온디맨드 모델에서는 가격이 초(sec)단위로 결정
- 온디맨드 : 사용한 만큼 할인 없이 비용을 지불하는 것
- 서비스 요금을 미리 약정하거나 선입금이 필요 없음
- 빠른 구축 속도와 확장성
- 몇 분이면 전 세계에 인스턴스 수백여대를 구축 가능
- 다양한 과금 모델 사용 가능 (웹, 게임, 이미지 서버 등등)
- 여러 AWS 서비스와 연동
- 오토스케일링, Elastic Load Balancer(ELB), CloudWatch
EC2의 구성
- 인스턴스
- 클라우에서 사용하는 가상 서버로 CPU, 메모리, 그래픽카드 등 연산을 위한 하드웨어를 담당
- EBS (Elastic Block Storage)
- AMIs (Amazon Machine Images)
- EC2 인스턴스를 실행하기 위한 정보를 담고 있는 이미지
- 보안 그룹
EC2 한대를 프로비전하여 웹 서버 구성하기
- EC2를 구성하기 위한 AMI 선택
- EC2의 유형과 사이즈 선택
- EBS 설정
- 보안 그룹 설정
- EC2 생성
- EC2 접속 후 웹 서버 설치 및 웹 서버 실행
- 웹 브라우저에서 접속 테스트
EC2 인스턴스를 생성해보자 (Amazon Linux os)
- AWS 검색창에 EC2를 검색
- Instances (running) 클릭
- Launch instances 클릭
- 저는 이미 만든 인스턴스가 있기 때문에 아래처럼 인스턴스가 보입니다
- 처음에는 아무것도 뜨지 않는 것이 맞습니다
- 인스턴스 설정
- 여기서는 아마존에서 제공하는 기본 linux os를 설치합니다
4.1. key pair 설정
- 설정 이유 : 보안적인 이유로 설정하며, 키페어는 두개의 암호화 키(공개키, 비밀키)로 구성되어 있으며, 이를 사용하여 EC2 인스턴스에 안전하게 접속할 수 있다
- webserver를 동작하기 위한 EC2를 생성하므로 http, https를 통한 트래픽을 허용하였다
- 이후 우측의 Launch instance를 클릭하면 새 인스턴스가 생성된다
EC2 접속 후 웹 서버 설치 및 웹 서버 실행
- Connect를 통해 EC2에 접속
- 웹 서버 설치 및 실행
관리자 권한 가져오기
sudo -s
아파치 서버 다운로드
yum install httpd
아파치 서버 실행
service httpd start
아래의 publicIPs의 주소를 chrome에 입력하여 접속하는 경우, 다음의 페이지를 확인할 수 있다
이때, /var/www/html/index.html을 생성한 후에 다시 접속할 경우, 작성한 index.html이 연결된다
nano /var/www/html/index.html
파일 내부에서
hello, world!
control+x
y
enter
인스턴스 중지(stop), 종료(terminate)하기
중지하기 : EBS(하드디스크) 요금은 부과됨
안전하게 종료하는 것을 추천
EC2 가격 모델
가격 순서
- 스팟 인스턴스 < 예약 인스턴스 < 온디맨드 < 전용 호스트
- EC2의 가격 모델은 EBS와는 별도
- EBS는 사용한 만큼 지불
- EBS : 가상의 하드 드라이브
- 기타 데이터 통신등의 비용은 별도 청구
- 참고로 AWS는 바깥으로 나가는 트래픽에 대해서만 요금을 부과
EC2의 유형과 사이즈
인스턴스의 유형
- 각 인스턴스 별로 사용 목적에 따라 최적화
- 예) 메모리 위주, cpu 위주, 그래픽카드 위주
- 타입 별로 이름 부여
- 타입 별 세대 별로 숫자 부여
- 아키텍처 및 사용 기술에 따라 접두사
- 예) t4g = t4인스턴스 중 AWS Graviton 프로세스를 사용(g)
인스턴스의 크기
- 인스턴스의 cpu 개수, 메모리 크기, 성능 등으로 사이즈 결정
- 크기가 클 수록
- 더많은 메모리, cpu, 네트워크 대역폭, EBS와의 통신 가능한 대역폭
EC2의 생명주기
- 중지
- 중지 중에는 인스턴스 요금 미청구
- 단, EBS 요금, 다른 구성요소(Elastic IP)은 청구
- 중지 후 재 시작 시 퍼블릭 IP 변경
- EBS를 사용하는 인스턴스만 중지 가능, 인스턴스 저장 인스턴스는 중지 불가
- 재부팅
- 최대 절전 모드
- 메모리 내용을 보존해서 재 시작시 중단 지점에서 시작할 수 있는 정지 모드
- 메모리 내용 -> HDD에 그대로 복사, 재시작시 다시 HDD->메모리 복구>>>>