AWS - 기초 이론, EC2 이론

2023. 8. 1. 09:15개발/AWS

728x90
반응형

1. 클라우드 컴퓨팅이란 ?

더보기

클라우드 컴퓨팅

IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼만 비용을 지불하는 것을 말한다. 물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리하는 대신, Amazon Web Services(AWS)와 같은 클라우드 공급자로부터 필요에 따라 컴퓨팅 파워, 스토리지, 데이터베이스와 같은 기술 서비스에 엑세스할 수 있다.

이전 설계

on-premise로 서버를 구축하였고 데이터센터나 서버룸과 같은 특정 공간에 구축하는 방식으로 컴퓨팅 시스템을 위한 하드웨어, 네트워킹 장비, 전원공급장치, 전기 시스템, 백업 발전기, 환경 제어장치(에어컨, 냉각장치, 팬 등) 등을 통해 구축해야할 요소들로 구성하는데만 수개월 이상 걸리며, 인력, 비용이 발생한다.

온디맨드

  • 선결제 금액이나 장기 약정 없이 저렴하고 유연하게 Amazon EC2를 사용하기 원하는 사용자
  • 단기의 갑작스럽거나 예측할 수 없는 워크로드가 있으며, 중단되어서는 안되는 애플리케이션
  • Amazon EC2에서 처음으로 개발 또는 시험 중인 애플리케이션

장점

  • 자본 비용을 가변 비용으로 대체
    • 데이터 센터 구축 비용, 서버 구매 비용
    • 막대한 초기비용 대신 쓰는 만큼 비용 지불
  • 규모의 경제로 얻게 되는 이점
    • 한 개를 사는 것보다 100개를 사는게 단가가 낮음
    • AWS의 규모의 경제로 인한 이득을 누릴 수 있음
  • 용량 추정 불필요
  • 속도 및 민첩성 개선
  • 데이터 센터 운영및 유지 관리에 비용 투자 불필요
    • 인프라 관리가 아닌 비즈니스에 자원 집중 가능
  • 빠른 확장성
    • 클릭으로 전 서계에 서비스 가능
    • 클릭으로 바로 리소스를 확보 가능
    • 개발비용 절감

단점

  • 생각보다 비싼 이용 비용
    • 플랫폼 서비스를 이용하거나 클라우드가 제공하는 기술을 많이 이용할시 비용 증가
  • 점점 커지는 클라우드 의존도
  • 데이터 보관의 불안함
    • 핵심 경쟁력인 데이터를 외부에 보관하는 것 자체가 불안

클라우드 컴퓨팅 서비스 모델

SaaS, PaaS, LaaS의 클라우드 컴퓨팅 서비스 모델 설명

LaaS (Infrastructure as a Service)

  • 인프라만 제공
  • OS를 직접 설치하고 필요한 소프트웨어를 개발해서 사용
  • 가상의 컴퓨터를 하나 임대하는 것과 비슷
  • 예 : AWS EC2

PaaS (Platform as a Service)

  • 인프라 + OS + 기타 프로그램 실행에 필요한 부분(런타임)
  • 바로 코드만 올려서 돌릴 수 있도록 구성
  • 예 : Firebase, Google App Engine 등

SaaS (Software as a Service)

  • 인프라 + OS + 필요한 소스트웨가 제공됨
  • 서비스 자체를 제공
  • 다른 세팅 없이 서비스만 이용
  • 예 : Gmail, DropBox, Slack, Google Docs

2. 리젠이란 ? 

더보기

설명

  • AWS의 서비스가 제공되는 서버의 물리적 위치
  • 전 세계에 흩어져 있으며 큰 구분(동남아, 유럽, 북아메리카 등등)으로 묶여 있음
  • 각 리전에 고유의 코드가 부여됨
    • 예시 : 서울 리전은 ap-northeast-2
    • 예시 : 미국 동부(버니지아 북부)리전은 us-east-1
  • 리전별로 가능한 서비스가 다름

리전을 선택할 떄 고려할 점

  • 지연 속도
  • 법률 (데이터, 서비스 제공 관련)
  • 사용 가능한 AWS 서비스

가용영역 (Availability Zone)

설명

  • 리전의 하부 단위
    • 하나의 리전은 반드시 2개 이상의 가용영역으로 구성
  • 하나이상의 데이터 센터로 구성
  • 리전간의 연결은 매우 빠른 전용 네트워크로 연결
  • 반드시 물리적으로 일정 거리(몇 KM 이상) 떨어져 있음
    • 다만 모든 AZ는 서로 100km이내의 거리에 위치
    • 여러 재해에 대한 대비 및 보안

엣지 로케이션

설명

  • AWS의 CloudFront(CDN)등의 여러 서비스들을 가장 빠른 속도로 제공 (캐싱)하기 위한 거점
  • 전 세계에 여러 장소에 흩어져 있음

글로벌 서비스와 리전 서비스

AWS에는 서비스가 제공되는 지역의 기반에 따라 글로벌 서비스와 리전 서비스로 분류

글로벌 서비스

  • 데이터및 서비스를 전 세계의 모든 인프라가 공유
    • CloudFront
    • IAM
    • Route53
    • WAF

지역 서비스

  • 특정 리전을 기반으로 데이터 및 서비스를 제공
    • 대부분의 서비스
    • S3 : 전세계에서 동일하게 사용할 수 있으나 데이터 자체는 리전에 종속 #리전 서비스

ARN

AWS의 모든 리소스의 고유 아이디

형식

  • arn:[partition]:[service]:[region]:[account_id]:[resource_type]/resource_name/(qualifier)

3. AWS 계정 생성

더보기

1. 루트 계정

생성한 계정의 모든 권한을 자동으로 가지고 있음

  • 탈취당했을때 복구가 매우 힘듬 ⇒ MFA 설정 필요
    • MFA : 멀티 팩터 인증은 사용자가 AWS 웹 사이트 또는 서비스에 엑세스할 때 사용자의 정류 로그인 자격 증명 외에도 AWS가 지원되는 MFA 메커니즘의 고유 인증을 제출하라고 요청함으로써 보안을 더욱 강화
  • AWS API 호출 불가 (AccessKey/Secret AccessKey 부여 불가)

2. IAM

계정에 대한 인증 및 권한 부여를 제어하는데 필요한 인프라를 제공

  • IAM User : IAM(Identitiy and Access Management)을 통해 생성한 유저
  • 꼭 사람이 아닌 어플리케이션 등의 가상의 주체를 대표할 수 도 있음
  • AWS API 호출 가능
    • AccessKey : 아이디 개념
    • Secret Access key : 패스워드 개념

4. EC2 란 ?

더보기

1. EC2 란 ?

Amazon Elastic Compute Cloud(EC2)는 안전하고 크기 조정이 가능한 컴퓨팅 파워를 클라우드에서 제공하는 웹 서비스. 개발자가 더 쉽게 웹 규모모의 클라우드 컴퓨팅 작업을 할 수 있도록 설계되어있으며 Amazon EC2의 간단한 웹 서비스 인터페이스를 통해 간편하게 필요한 용량을 얻고 구성할 수 있음

2. 특징

  • 초 단위 온디맨드 가격 모델
    • On-Demand : 실행하는 인스턴스에 따라 시간또는 초당 가격을 지불
    • 예약 인스턴스 (Reserved Instance) : 미리 일정 기간 (1년 ~3년) 약정해서 쓰는 방식
    • Spot Instance : 경매 형식으로 시장에 남은 인스턴스를 저렴하게 구매해서 쓰는 방식
    • 전용 호스트 : 실제 물리적인 서버를 임대하는 방식
  • 빠른 구축 속도와 확장성
    • 몇 분이면 전 세계에 인스턴스 수백여대를 구축 가능
  • 다양한 구성방법 지원
    • 머신러닝, 웹서버, 게임서버, 이미지처리 등 다양한 용도에 최적화된 서버 구성 가능
    • 다양한 과금 모델 사용 가능
  • 여러 AWS 서비스와 연동
    • 오토스케일링, Elastic Load Balancer(ELB), CloudWatch

3. 구성

인스턴스 유형
  • 인스턴스 : 클라우드에서 사용하는 가상 서버로 CPU, 메모리, 그래픽카드 등 연산을 위한 하드웨어를 담당 
    • 인스턴스의 타입 읽는 법 (m5a.xlarge)
      • m 인스턴스 타입
      • 5 세대
      • a 접두사
      • xlarge 사이즈
  • EBS : Elastic Block Storage의 줄임말로 클라우드에서 사용하는 가상 하드디스크
  • AMI : EC2 인스턴스를 실행하기 위한 정보를 담고 있는 이미지
  • 보안 그룹 : 가상의 방화벽

4. 생명 주기

EC2의 생명주기

 

인스턴스 상태 설명 인스턴스 사용 요금
pending 인스턴스가 running 상태로 될 준비 미청구
running 인스턴스 사용 중 청구
stopping 인스턴스가 중지 또는 최대 절전모드로 전환 중 미청구
최대 절전시 청구    
stopped 인스턴스가 중지 상태:재시작 가능 미청구
shutiing-down 인스턴스가 종료 중 미청구
terminated 인스턴스가 영구적으로 삭제됨 미청구

중지

pending → running → stopping → stopped

  • 중지 중에는 인스턴스 요금 미 청구
  • 단 EBS 요금, 다른 구성요소(Elastic IP등)은 청구
  • 중지후 재시작시 퍼블릭 IP 변경
  • EBS를 사용하는 인스턴스만 중지 가능 / 인스턴스 저장 인스턴스는 중지 불가

재부팅

pending → running → stopping → stopped → pending

  • 재부팅시에는 퍼블릭 IP변동 없음

최대 절전모드

pending → running → stopping → stopped → pending

  • 메모리 내용을 보존해서 재시작시 중단지점에서 시작할 수 있는 정지모드

종료

pending → running → stopping → stopped → pending → terminated

  • 인스턴스를 영구적으로 삭제

활용

ECS 자동 저장 / 시작

Amazon CloudWatch : 리소스, 애플리케이션 및 서비스로부터 거의 실시간으로 로그를 수집하고 저장

AWS Lambda : 사건기반 서버리스 컴퓨팅 플랫폼이며 이벤트에 대응하여 코드를 실행하는 컴퓨팅 서비스로 해당 코드에 의해 필요한 컴퓨팅 자원을 자동으로 관리

AWS Systems Manager : AWS에서 인프라를 보고 제어하기 위해 사용할 수 있는 서비스이며 관리형 노드를 스캔하고 탐지된 정책 위반을 보고하거나 시정 조치를 취해서 보안 및 규정 준수를 유지

  • 관리형 노드란 Systems Manager에 사용하도록 구성된 머신

4. 간단 실습

EC2 > 인스턴스 클릭 > 인스턴스 시작 버튼 클릭
Amazon Linux 선택

참고 : Amazon Linux vs Ubuntu

[추가 설정]

1. 인스턴스 선택 (컴퓨터 자원)

2. 이름및 태그

3. 키 페어

4. 네트워크 설정 > 보안 그룹 생성 > HTTPS 설정, SSH 설정

5. 스토리지 구성 8G

 

[결과물]

생성 성공

 

 

728x90
반응형

'개발 > AWS' 카테고리의 다른 글

AWS - 간단 웹 서버 띄우기  (0) 2023.08.02
AWS - ELB(Elastic Load Balancer) 이론, 실습  (0) 2023.08.01
AWS - AutoScaling 이론, 실습  (0) 2023.08.01
AWS - EC2(EBS, AMI)  (0) 2023.08.01