EC2 BASIC
AWS 예산 설정
한계령 계정으로 비용을 알림받을 수 있도록 할 것인데 권한이 필요함.
그럼 root 계정으로 들어가서 설정
해야 함.
- Root 계정)
- Hangyeryeong 계정)
결제
창이 활성화 된 것을 확인할 수 있다.
Budgets 설정
원하는 템플릿을 선택하면 됨.
Budgets이 잘 설정된 것을 확인할 수 있다.
EC2 Basic
- EC2 : 아마존에서 가장 인기있는 서비스
- EC2 = Elastic Compute Cloud = IaaS
- 원하는 대로 AWS에서 빌릴 수 있다.
- Bootstrapping : 머신이 작동될 때 명령을 시작하는 것
- EC2 종류는 매우 多
웹 사이트 실습을 위해 EC2 사용자 데이터로 EC2 인스턴스 생성
- EC2 인스턴스 생성
- EC2 인스턴스에 전달할 EC2 인스턴스에서 직접 웹 서버 생성
EC2 인스턴스 생성
키 페어
를 생성 해 보자.
- 고급 세부 정보
- Use Data (사용자 데이터) - 약간의 명령을 EC2 인스턴스에 제공하는 것.
#!/bin/bash
# Use this for your user data (script from top to bottom)
# install httpd (Linux 2 version)
yum update -y
yum install -y httpd
systemctl start httpd
systemctl enable httpd
echo "<h1>Hello World from $(hostname -f)</h1>" > /var/www/html/index.html
인스턴스가 잘 만들어진 것을 확인할 수 있다.
주소를 복사해서 붙여넣으면
잘 열리는 것을 확인할 수 있다.
개방 주소법
을 사용하여 페이지를 열때는,https://
가 아닌http://
로 수정해줘야 한다.
EC2 인스턴스 유형 기본 사항
EC2 유형은 7가지 유형이 있음.
- m5.2xlarge
- m : instance class
- 5 : generation (AWS imporves them over time)
- 2xlarge : size within the instance class
EC2 인스턴스 종류
범용
인스턴스 -General
Purpose최적화
인스턴스 - ComputeOptimized
ex. 훌륭한 작업을 요구할 때, 모두 c로 시작하는 인스턴스 이름을 가지고 있음메모리 최적화
-Memory Optimized
ex. 대규모스토리지 최적화
-Storage Optimized
ex. 관계형 & NoSQL DB
보안 그룹 및 클래식 포트 개요
- 보안 그룹 : AWS에서 네트워크 보안을 실행하는데 핵심적인 기능
- 보안 그룹은
허용 규칙
만 포함함. - 보안 그룹 : EC2의 방화벽
- 여러 인스턴스에 연결할 수 있음.
- 지역과 VPC 통제
- 보안 그룹은 EC2 외부에 있음
- 기본적으로 모든 인바운드 규칙은 거부되어 있고, 모든 아웃바운드 규칙은 허용되어 있음.
- 보안 그룹이 같으면 EC2의 IP는 신경쓰지 않아도 됨.
보안 그룹
- EC2인스턴스에서 타임아웃이 발생하면 100% EC2 보안 그룹 때문임.
기본적으로 SSH와 TCP가 있는 것을 확인할 수 있다.
SSH 개요
- SSH : 명령줄 인터페이스 도구
Windows를 사용하여 SSH 실행
- Putty 사용
Windows 10을 사용하여 SSH하는 방법
- PowerShell 에서 연습
ssh
우선, pem파일이 있는 폴더로 이동한다.
EC2는 실행 중이여야 함.
ssh -i '.\EC2 Tutorial.pem' ec2-user@34.201.126.72(PUblic IP주소)
잘 실행된 것을 확인할 수 있다.
EC2 인스턴스 연결
- 브라우저로 EC2 인스턴스 연결
바로 연결이 되는 것을 확인할 수 있다.
EC2 인스턴스 역할 데모
연결된 하나의 역할을 EC2 인스턴스에 연결해서 자격 증명을 제공하게끔 할 것임.
지금은 EC2 IAM Role이 비어있는 상태임.
IAM Role이 잘 연결된 것을 확인할 수 있다.
aws iam list-users
- IAM으로부터 유저에 관한 응답을 받고 있는 것을 확인할 수 있다.
aws configure
명령을 실행하지 않았는데도 IAM 역할을 연결 후에aws iam list-users
명령을 실행하니 작동이 되는 것을 확인할 수 있음.- EC2 인스턴스와 IAM이 연결된 것을 알 수 있다.
EC2 인스턴스 시작
- 온디맨드 인스턴스
- 예약 인스턴스 : 1년 or 3년
- 절약 플랜 : 1년 or 3년
- 스팟 인스턴스 : 아주 짧은 워크로드 but 언제든 손실될 수 있음
- 전용 호스트 : 물리적 서버 전체 예약
- 전용 인스턴스 : 다른 고객이 우리의 하드웨어를 공유하지 X
- 용량 예약
EC2 On Demand
- Pay for what you use
- 1분 이후에 초 단위 청구
- 단기적, 중단 없는 워크로드가 필요할 때 or 애플리케이션의 거동을 예측할 수 없을 때
EC2 Reserved Instances
- 온디맨드에 비해 72%의 할인을 제공
- 예약 기간 : 1년 or 3년
- 부분 선결제 or 선결제 없음 or 전부 선결제
더 이상 필요가 없으면 팔 수도 있음.
- 전환형 예약 인스턴스 - 특별한 유형의 예약 인스턴스
- 최대 66% 까지 할인 가능
- 전환형 예약 인스턴스 - 특별한 유형의 예약 인스턴스
EC2 Savings Plans
- 장기간 사용하면 할인을 받을 수 있음.
- 70% 할인 가능
- 사용량이 한도를 넘어서면 절약 플랜은 온디맨드 가격으로 청구함.
EC2 Spot Instances
- 할인 폭이 제일 큼.
- 온디맨드에 비해 최대 90%까지 할인이 가능함.
- 언제든 인스턴스가 손실될 가능성이 있음.
- 아주 중요한 작업이나 데이터베이스에는 적절 X
EC2 Dedicated Hosts
- 실제 물리적 서버를 받게 됨.
- 온디맨드로 초당 지불 or 예약) 1년 or 3년
- 실제로 물리적 서버를 예약하기 때문에 AWS에서 가장 비싼 옵션임.
EC2 Dedicated Instances
- 개인의 전용 하드웨어에서 실행되는 인스턴스
- 물리적 서버와는 다름.
- 같은 계정에서 다른 인스턴스와 함께 하드웨어를 공유할 수 있음.
- 인스턴스 배치에 대한 통제권이 없음.
EC2 Capacity Reservations
- 원하는 기간 동안 특정한 AZ에서 온디맨드 인스턴스를 예약할 수 있음.
- 기간 약정은 없음.
- 언제든 용량을 예약하고 취소할 수 있음.
- 용량을 예약하는 것이 유일한 목적임.
- 온디맨드 요금 부과.
- 특정한 AZ에 있어야 하는 단기적이고 중단 없는 워크로드에 아주 적합함.
스팟 인스턴스 및 스팟 집합
- 온디맨드와 비교해 최대 90%까지 할인이 가능
- 스팟 블록 : 특정 기간 동안 인스턴스를 차단하는 기능
- 배치 작업, 데이터 분석, 실패해도 복원력이 있는 워크로드에 사용.
스팟 인스턴스 종료
- 요청에 2가지 유형이 있음.
- 스팟 인스턴스를 위한 일회성 요청
- 사후 인스턴스를 위한 지속적인 요청
- 스팟 인스턴스를 위한 일회성 요청
- 스팟 인스턴스를 영구적으로 종류하고 재실행 되는 일이 없도록 하기 위해서는
- 스팟 요청을 취소
- 해당 요청과 연결된 스팟 인스턴스를 종료
- 스팟 요청을 취소
- 스팟 인스턴스를 먼저 종료하게 되면 요청이 종료되지 않은 것이기 때문에,
다시 실행될 수 있음.
Spot Fleets
- 한 세트의 스팟 인스턴스에 선택적으로 온디맨스 인스턴스를 조합해 사용하는 방식
- Fleet : 집합
- 정의된 비용 제한 내에서 대상 용량을 맞추려 노력함.
- 스팟 플릿 내에
스팟 인스턴스를 할당해 줄 전략을 정의
하게 됨.lowestPrice
: 스팟 플릿이 가장 적은 비용을 가진 풀에서부터 인스턴스를 실행함.
비용 최적화가 가능, 아주 짧은 워크로드가 있을 때 적합함.
자동으로 최저 가격의 스팟 인스턴스를 요청함.diversified
: 기존에 정의한 모든 풀에 걸쳐 분산됨.
긴 워크로드에 적합, 가용성이 뛰어난 옵션임.
왜냐하면 한 풀이 중단되더라도 다른 풀이 활성화되어 있을테니깐.capacityOptimized
: 인스턴스의 개수에 따라서 최적 용량으로 실행이 되고 적절한 풀을 찾아주는 옵션.
-> 스팟 플릿을 이용해 여러 가지 런치풀과 인스턴스 유형을 다양하게 정의할 수 있다.
EC2 인스턴스 launch type
- EC2 인스턴스를 실행할 수 있는 모든 방법
01. Spot Requests
02. Reserved Instances / Savings Plans / Dedicated Hosts / Capacity Reservaticons