AWS

EC2

MinCodeHub 2025. 12. 29. 17:39
AWS certificate DVA-C02 공부 내용입니다.

 

EC2

 

Elastic Compute Cloud = Infrastructure as a Service

  • 구성요소:
    • ec2인스턴스
    • 가상 드라이브 or EBS 볼륨
    • 로드밸런서
    • 자동확장 그룹, ASG
  • 구성 시 옵션
    • 운영체제(Linux, Windows, Mac OS)
    • 컴퓨팅 성능과 코어(CPU)
    • RAM
    • 저장공간(네트워크를 통해 연결할 스토리지:  EBS& EFS 또는 하드워드(EC2 Instance Store))
    • 네트워크 카드, 공인 ip주소
    • 보안그룹
    • 부트스트랩 스크립트: EC2 User Data

EC2 User Data

  • ec2 사용자 데이터 스크립트를 사용하여 인스턴스를 부트스트랩할 수 있음
  • 부트스트랩 : 컴퓨터가 시작될 때 명령을 실행하는 것
    • 한번만 실행되고 다시는 실행되지 않음
  • 부팅 작업을 자동화
    • 업데이트 설치, 소프트웨어 설치, 파일 다운로드 등
  • EC2 User Data Script는 root사용자에서 실행 
    • 어떤 명령이든 sudo 권한을 갖게 됨

 

인스턴스 유형

 

AWS 명명규칙

예) m5.2xlarge

 

  • m: instance class
  • 5: 인스턴스 생성
  • 2xlarge: 클래스 내의 크기(크기가 클수록, 메모리가 많을 수록 인스턴스에 더 많은 CPU 사용)

 

1. General Purpose

  • 웹 서버, 코드 저장소 등 다양한 용도에 적합
  • 컴퓨팅, 메모리, 네트워크 간 성능이 균형적

2. Compute Optimized

  • 고성능을 요구하는 컴퓨팅 집약적인 작업에 최적화
  • 데이터 일괄처리
  • 미디어 트랜스코딩 수행
  • 고성능 웹 서버
  • 고성능 컴퓨팅 수행(HPC)
  • 머신러닝, 전용 게임 서버가 있는 경우

3. Memory Optimized

메모리에서 대용량 데이터 세트를 처리하는 워크로드 유형에 매우 빠른 성능 제공

 

사용사례

  • 관계, 비관계형 데이터베이스
  • 분산형 웹 스케일 캐시 저장소(Elastic Cache)
  • 비즈니스 인텔리전스 또는 BI에 최적화 된 메모리 데이터베이스
  • 대규모 비정형 데이터의 실시간 처리를 수행하는 애플리케이션

 

4. Storage Optimized

로컬 스토리지에 있는 많은 데이터 세트에 엑세스할 때 유용

 

사용 사례

  • 빈도가 높은 온라인 트랜잭션 처리(OLTP 시스템)
  • 관계형 및 NoSQL 데이터베이스
  • 인메모리 데이터베이스용 캐시(예: Redis)
  • 데이터 웨어하우징 애플리케이션
  • 분산 파일 시스템 

 

보안그룹

 

승인된 IP범위를 봄(IP4 and IP6)

인바운드 규칙: 외부에서  EC2로 들어오는 트래픽에서의 허용 규칙

아웃바운드 규칙: EC2에서 외부로 나가는 트래픽에서의 허용 규칙

 

  • 보안그룹 규칙
    • 타입
    • 프로토콜(TCP)
    • 포트 범위
    • 소스(0.0.0.0/0 -> 모든 포트 범위
    • 설명

 

  • 특징
    • 여러개의 인스턴스에 부착할 수 있음
    • 인스턴스는 여러개의 보안그룹을 가질 수 있음
    • 리전과 VPC 내에서만 적용됨
    • 보안 그룹은 EC2외부에 존재
    • SSH 접근을 위한 보안그룹을 따로 만드는 걸 권장
    • 기본적으로 모든 인바운드 트래픽은 차단되고 아웃바운드는 허용됨
    • 특정 포드/IP가 규칙으로 설정되지 않았다면 접속 시도 시 타임아웃됨

 

  • 포트번호
    • 22 = SSH (Linux 인스턴스에 로그인)
    • 21 = FTP(파일 전송 프로토콜 - 파일 공유, 파일 업로드)
    • 22 =  SFTP(보안 파일 전송 프로토콜 - SSH를 사용하여 파일 업로드)
    • 80 = HTTP (보안되지 않은 웹사이트에 엑세스)
    • 443 =  HTTPS (보안된 웹사이트에 엑세스)
    • 3389 = RDP (윈도우 인스턴스에 엑세스)

 

SSH 

SSH는 명령 줄을 이용해서 컴퓨터를 원격 조종할 수 있게 함.

 

window를 이용해 EC2 인스턴스에 SSH 연결

 

1. powershell 접속

2. pem파일이 있는 곳에서

ssh -i ./EC2Tutorial.pem ec2-user@publicIp

 

또는

  1. 인스턴스 상세 화면에서 [Connect]
  2. [EC2 Instance connect]로 브라우저 기반 ssh 접속 가능

 

IAM Role 설정

인스턴스 접속한 aws cli를 통해 aws configure하는 것은 권장되지 않음

 

1. 인스턴스 상세 화면에서 [Actions] - [Security] - [Modify IAM role]

2. 이미 만들어진 IAM 역할 선택 

 

그 후 콘솔에서 aws iam list-users하면 연결된 역할 정보가 보임

 

EC2 구매옵션

 

  • on-Demand Instance
    • 짧은 작업에 적합
    • Linux나 Windows를 사용한다면 시작 1분 후 초당 청구서를 받음
    • 원가는 높지만 선금 없고, 장기적인 계약도 없
  • Reserved(1&3년)
    • 긴 작업에 적합
    • 유동적인 인스턴스 형식을 원할 경우(시간이 지나면서 인스턴스 형식을 바꾸길 원할 경우)
    • on-Demand 보다 72% 할인
    • 특정 인스턴스 속성을 정함(인스턴스 형식, 지역, 태넌시, OS)
    • 1/3년 동안의 예약 기간을 명시하고 부분적으로 선지급 결정
    • 예약 인스턴스를 시장에서 사고 팔 수 있음
  • Convertible Reserved Instance
    • 형식, 인스턴스 패밀리 운영체제, 범위, 테넌트 형식을 바꿀 수 있게 해줌
    • 할인은 좀 덜 됨. 66%
  • Saving Plan(1 & 3년)
    • 특정 양의 사용량에 커밋
    • 사용량에 따라 지불됨. 긴 작업에 적합
    • 장기 사용에 따라 할인 존재
    • 특정 인스턴스 클래스/세대나 지역에 한정됨
    • 인스턴스 형식, os 등 변경 가능
  • Spot Instance
    • 짧은 작업에 적합, 저렴 (on-Demand보다 90% 할인)
    • 언제든지 잃을 수 있음. 낮은 신뢰
    • 배치 작업, 이미지 처리, 데이터 분석 등 실패에도 탄력적인 서비스에 적합
  • Dedicated Hosts 
    • 전체 물리적 서버를 예약하고 인스턴스 컨트롤 가능
    • on-Demand, reserved로 구매 가능
    • 가장 비싼 옵션
    • 복잡한 라이센스 모델인 경우, 규제 준수에 철저한 회사인 경우
  • Dedicated Instances
    • 내가 사용하는 하드웨어를 타 aws고객과 공유하지 않음
    • 같은 계정의 다른 인스턴스와는 하드웨어 공유 가능
  • Capacity Reservations
    • 특정 AZ 의 용량을 일정시간동안 예약할 수 있게 해줌, 필요할 때마다 접근 가능
    • 사용시간 당 비용청구 없고 할인 또한 없음
    • 할인을 위해 Saving plans나 Reserved 인스턴스와 결합 필요
    • 인스턴스 가동과 상관없이 고정 요금
    • 특정 AZ에 있어야하는 단기 작업에 적합

 

'AWS' 카테고리의 다른 글

EBS  (0) 2025.12.30