[AWS] Lightsail, EC2, Elasic Load Balancer

Cherry·2024년 5월 13일
0
post-thumbnail

클라우드 컴퓨팅이란?

인터넷을 통해 컴퓨팅 자원(서버, 스토리지, 네트워크 등)을 필요한 만큼 제공받는 기술이다.

IaaS(Infrastructure As A Service)

: 가상 서버, 스토리지, 네트워크 등의 인프라를 서비스로 제공

EC2

  • AWS에서 가장 기본적이고 널리 쓰이는 인프라, 가상 머신으로 제공되며 이를 인스턴스라고 힘
  • 물리 환경의 컴퓨터처럼 컴퓨팅 리소스를 제공하는 서비스
  • 하드웨어 투자 비용 없음
  • 원하는 수의 가상 서버 구축 가능, 보안 및 네트워킹 구성과 스토리지 관리 등이 용이
  • 용량을 추가하면 웹 사이트 트레픽 급증 등 컴퓨터 사M량I 많은 작업을 처리할 수 있음, 사용량이 감소하면 용량을 다시 축소.

Lightsail

  • 초보자 친화적인 서비스로, 주어진 리소스 옵션중 하나를 골라 단일 가상 서버를 간단히 설정하는 서비스
  • 웹 사이트 또는 웹 애플리케이션을 구축해야 하는 모든 사용자가 AWS를 시작할 수 있는 가장 쉬운 방법
  • 가상머신, SSD기반 스토리지, Networking, 로드밸런서, DNS관리, 고정IP, OS, 개발플랫폼(MEAN, Node.js), 어플리케이션(Wordpress Nginx GitLab, Redmine) 등 모두 포함
  • 쉽게 확장 가능
    (snapshot을 통해 EC2로 쉽게 마이그레이션 가능)

Virtual Private Server
: 하나의 물리서버를 여러 개의 가상서버로 쪼개어 사용하는 SR

  • 각자 독립적인 서버 공간을 가짐
    -> 동일한 속도, 보안서비스 제공
  • 하나의 물리서버의 리소스를 모든 사용자가 공유함
    -> 한 사용자가 리소스를 점유할 수 있음

EC2 vs Lightsail

PaaS(Platform As A Service)

: 사용자가 원하는 서비스를 개발할 수 있도록 개발 환경(Platform)을 미리 구축해, 이를 서비스 형태로 제공

SaaS(Software As A Service)

: 클라우드 서비스 형태 중 가장 완성된 형태의 클라우드 서비스, 소프트웨어 애플리케이션을 서비스로 제공

FaaS(Function As A Service)

: 복잡한 인프라를 관리하지 않고도 이벤트에 대한 응답으로 코드를 실행할 수 있는 클라우드 컴퓨팅 서비스

Elastic Load Balancer

Auto Scaling

  • EC2 상태 확인을 사용하여 인스턴스의 상태와 가용성을 자동으로 모니터링하고, 종료되거나 손상된 인스턴스를 교체하여 원하는 용량을 유지
  • 사용량이 중가하면 Auto Scailing은 사용자 정의 규칙에 따라 자동으로 EC2 인스턴스를 추가하여 용량을 늘리고, 사용량이 감소하면 리소스를 줄여 비용을 절감.
  • 클라우드 리소스를 자동으로 조정하여 지정된 조건에 따라 필요할 때만 필요한 만큼의 컴퓨팅 리소스를 사용 할 있도록 하는 AWS 서비스
    Scale Up: 하나의 인스턴스의 리소스(예:CPU,메모리)를 늘리는 것
    Scale Out: 규모를 늘리는 것

목표

  • 비용 절감
    필요에 따라 용량을 동적으로 늘리거나 줄임. 사용한 만큼만 비용 지불
  • 내결함성 향상
    인스턴스가 비정상 상태일 때 이를 종료하고, 새로운 인스턴스를 시작 -> 하나의 가용 영역이 불가 상태가 되면 다른 가용 영역에서 새 인스턴스를 시작
  • 가용성 향상
    현재 트래픽 요구를 처리할 수 있는 적정 용량을 갖추도록 도움을 주고, 가용 영역 전반에 인스턴스 분산

Load Balancing

네트워크 트래픽을 여러 서버에 균일하게 분산시키는 장치 또는 소프트웨어 웹사이트 또는 어플리케이션의 가용성과 내구성을 높이기 위해 사용

  • 부하 분산 처리
    하나의 리소스에 트래픽이 과도하게 몰려 서비스 중단되는 현상을 막기
  • 하나의 엔드포인트 제공
    트래픽을 하나의 경로로 받아 여러 인스턴스에 분산시키기 때문에, 사용자 입장에서는 서로 다른 인스턴스에 접속하게 되더라도 같은 엔드포인트(주소)로 접속하면 됨

Elastic Load Balancer

:트래픽을 여러 대상에 자동으로 분산시켜주는 서비스 VPC에 탑재되며, 사용자의 요청을 받아 VPC 내의 리소스를 적절한 부하 분산

ALB(ApplicationLoadBalancer)

  1. OSI La3er/인 어플리케이션 계층에서 동작하는 로드밸런서
  2. ALB는 HTTP/HTTPS 프로콜의 헤더를 보고 적절한 패킷으로 전송(지능적인 라우팅)
  3. ALB는 IP주소+ 포트번호 + 패킷내용을 보고 스위칭
  4. ALB는 IP주소가 변동되기 때문에 Client에서 Access할 ELB의 DNS Name을 이용
  5. ALB는 L7을 지원하기 때문에 EC2 대신에 SSL적용이 가능

NLB(NetworkLoadBalancer)

  1. L4(Transport Layer)의 로드밸런서를 지원
  2. TCP/IP프로토콜의 헤더를 보고 적절한 패킷으로 전송
  3. NLB는 IP+ 포트번호를 보고 스위칭
  4. NLB는 할당한 Elastic IP를 Static IP로 사용이 가능하여 DNS Name과 IP주소 모두 사용이 가능
  5. NLB는 SSL 적용이 인프라 단에서 불가하여 애플리케이션에서 따로 적용해주어야함

0개의 댓글