AWS 용어정리 Part03

S3 Transfer Acceleration

  • 거리가 먼 클라이언트와 S3버킷 간에 파일을 빠르고, 쉽고, 안전하게 전송할 수 있게 해준다.
  • 전 세계적으로 분산되어 있는 Amazon Cloud Front 의 엣지 로케이션을 활용
  • 엣지 로케이션에 도착한 데이터는 최적화된 네트워크 경로를 통해 Amazon S3로 라우팅된다.
  • 데이터 전송 요금이 추가로 적용됨
  • 용도
    • 전 세계 각지에서 중앙의 버킷으로 업로드 하는 고객이 있는경우
    • 정기적으로 수 기가바이트에서 수 테라바이트의 데이터를 전송할 경우
    • S3에 업로드할 경우 인터넷을 통해 사용가능한 대역폭을 충분히 활용할 수 없을 수 있음, 대역폭 활용을 위해
  • 요금
    • S3로 업로드 비용 –> 없음
    • S3TA를 사용하면 가속화된 전송에 대해서만 비용 지불 (가속화 되지 않았다면 비용지불 안됨)

보안그룹

  • 인스턴스 레벨의 인바운드/아웃바운드 트래픽 제어
  • 가상의 방화벽
  • 최대 5개의 보안 그룹에 인스턴스를 할당할 수 있음
  • 서브넷의 각 인스턴스를 서로 다른 보안 그룹 세트에 할당할 수 있음
  • 인스턴스 할당
    • 임의적 할당 - 해당 보안그룹에 할당됨
    • 할당 안함 - 기본 보안그룹에 할당
  • 인바운드/아웃바운드 트래픽을 제어하는 별도의 규칙 세트 존재
  • 변경사항은 즉시 구현됨 (대기, 재부팅 필요 없음)
  • stateful 서비스이다.
    • 트래픽에 대한 상태를 저장한다는 의미
    • 요청/응답 트래픽의 상태에 따라 결정이 된다.
  • NACL은 stateless 서비스이다.
    • 트래픽에 대한 상태를 저장하지 않는다는 의미
    • 요청과 응답은 트래픽의 상태와 상관없이 inbound/outbound 규칙을 따른다.
    • 허용되는 인바운드 트래픽에 대한 응답은 inbound와는 상관없으 outbound 규칙에 의해서 결정이 됨

AMI 복제

  • AMI 는 리전내에서만 사용이 가능함
  • 타 리젼에서 사용하고자 한다면 리젼간 복제를 수행해야함
  • AMI 는 네트워크 엑세스 제어나 공유 기능이 없음

Route 53 라우팅

  • 단순 라우팅 정책
    • 도메인에 대해 측정 기능을 수행하는 하나의 리소스만 있는경우에 사용 (특정 도메인에 대해서 인스턴스 1개)
    • 단일 리소스로 트래픽을 라우팅
    • 동일한 이름과 유형을 가진 여러 레코드를 만들수 없음
    • 동일 레코드 안에 여러값(다중 IP주소)를 지정 가능
    • 별칭 레코드에 대해 단순 라우팅 정책을 선택한 경우 하나의 리소스 혹은 하나의 레코드만 지정
    • 한 레코드에 여러 값 지정시 Route 53모든 값을 무작위 순서로 재귀 해석기에 반환
  • 장애 조치 라우팅 정책
    • 액티브-패시브 장애조치를 구헝하려는 경우 사용
    • 특정 리소스가 정상인경우 트래픽을 해당 리소스로 보냄, 비정상인경우 다른 리소스로 트래픽 라우팅
    • 기본, 보조 레코드는 S3버킷에서 복잡한 레코드 까지 트래픽을 라우팅 가능
  • 지리 위치 라우팅 정책
    • 사용자의 위치에 기반하여 트래픽 라우팅하려는 경우 사용
    • 사용자의 지리 위치, DNS 쿼리가 발생하는 위치를 기반으로 트래픽 제공 리소스를 선택가능
    • 컨텐츠 지역화, 웹사이트 일부 또는 전체를 사용자의 언어로 제공
    • IP 주소의 위치를 매핑하는 방식으로 작동
    • 지리 위치 레코드를 생성하지 않은 위치에서 온 쿼리는 기본 레코드로 처리 할 수 있음 (기본 레코드 생성을 하지 않으면 응답없음 으로 반환)
  • 지리 근접 라우팅 정책
    • 리소스의 위치를 기반으로 트래픽을 라우팅
    • 필요에 따라 한 위치의 리소스에서 다른 위치의 리소스로 트래픽을 보내려는 경우 사용
    • 리소스의 지리적 위치를 기반으로 트래픽 라우팅
    • 바이어스를 통해서 해당 리소스로 라우팅하는 트래픽 양을 늘이거나 줄일 수 있음, (바이어스로 지리적 리전의 크기를 확장, 축소 가능)
    • 확장: 1 ~ 99 사이의 양의 바이어스 지정하여 범위증가
    • 축소: 1 ~ 99 사이의 음의 바이어스 지정하여 범위축소
    • 바이어스 효과
      • 보유한 리소스의 수
      • 리소스가 서로 근접한 정도
      • 지리적 리전간의 경계 영역 근처에 있는 사용자 수
  • 지연 시간 기반 라우팅
    • 여러 AWS 리전에 리소스가 있고, 최상의 지연 시간을 제공하는 리전으로 트래픽을 라우팅
    • 여러 AWS 리젼에 배포, 요청 지연시간이 가장 낮은 리전에서 처리, 성능 향상
    • 리전에 위치하는 리소스에 대해서 지연 시간 레코드를 생성해야함
    • 여러 시간동안의 지연시간 검사후 그 데이터를 기반으로 라우팅된다.
  • 다중 응답 라우팅 정책
    • Route 53이 DNS 쿼리에 무작위로 선택된 최대 8개의 정상 레크드로 응답하려는 경우 사용
    • DNS 쿼리에 대해 다수의 값(웹 서버의 IP주소)를 반환하도록 구성
    • 다중값은 거의 모든 레코드에 대해 지정 가능
    • IP주소에 대해서 상태 확인이 되므로 일종의 LB 역할을 어느정도 개선할 수 있는 방법 제공
    • 상태가 다중 응답 레코드와 연결할경우, 상태 검사가 정상인 경우에만 IP주소로 DNS에 응답함
    • 상태 검사를 연결하지 않으면 항상 정상으로 간주
    • 정상 레코드가 8개 이하일경우 모든 DNS 쿼리에 모든 정상 레코드로 응답
    • 모든 레코드가 비정상인경우, 최대 8개의 비정상 레코드로 DNS 쿼리에 응답
  • 가중치 기반 라우팅 정책
    • 사용자가 지정하는 비율에 따라 여러 리소스로 트래픽을 라우팅
    • 각 리소스에 대해 동일한 이름의 레코드 생성
    • 각 리소스로 라우팅 되는 트래픽 비율에 해당하는 상대 가중치를 각 레코드에 할당
    • 가중치 0이면 트래픽이 가지 않음

SQS

  • 마이크로 서비스, 분산 시스템 및 서버리스 애플리케이션을 쉽게 분리하고 확장 할 수 있도록 지원하는 완전 관리형 대기열 서비스
  • 메시지 지향 미들웨어 관리, 운영에 대한 복잡성, 오버헤드 제거
  • 개발자가 차별화 작업에 집중 할 수 있도록 지원
  • 메시지 손실, 다른 서비스를 기동할 필요 없이 소프트웨어 구성 요소간 어떤 볼륨의 메시지든 전송, 저장 수신 가능
  • 폴링 - 메시지 수신을 위한 서버에 요청하는 시간간격
    • 짧은 폴링
      • ReceiveMessage 요청은 서버의 하위 집합(가중치 임의 분포를 기반으로 함)만 쿼리하여 응답에 포함할 수 있는 메시지 찾기
      • 메시지를 찾지 못해도 즉시 응답함
    • 긴 폴링
      • ReceiveMessage 요청이 모든 서버에서 메시지를 쿼리한다.
      • 적어도 하나의 사용가능한 메시지를 수집한 후 요청에 지정된 최대 메시지 수까지 응답 보냄
      • 폴링 대기 시간이 만료된 경우 빈 응답 전송
      • 대기열에서 메시지가 사용 가능해지는 즉시 간편하고 경제적인 방법으로 메시지 검색 가능
      • 빈 응답을 수신하는 횟수 줄일수 있음 –> SQS비용 절감
  • 비용관점
    • 가능하면 긴 폴링을 이용하여 비용 절감
    • 대기열 소비자가 대기열 메시지 도착하는대로 바로 수신가능
    • 비용감소 + 성능향상 결과 일반적
    • 즉각적 응답이 필요한경우 –> 소스 수정이 필요할 수 있음 (즉각적 응답은 짧은 폴링)
    • 단일 쓰레드가 여러 대기열을 긴 폴링 –> 대기시간 길어짐 (지연 발생) –> 이럴경우 단일 쓰레드가 단일 대기열만 보도록 수정 필요

Kinesis Data Stream

  • 특수 요구에 맞춰 스트리밍 데이터를 처리 또는 분석하는 사용자 지정 애플리케이션 구축 가능
  • 수십만개의 소스에서 클릭 스트림, 애플리케이션 로그, 소셜 미디어와 같은 다양한 유형의 데이터를 스트림에 지속적으로 추가 가능
  • 몇 초 안에 kinesis 애플리케이션은 스트림의 데이터를 읽고 처리 가능
  • 기본적으로 최대 24시간 동안 데이터를 저장
  • 보존 기간 연장 활성화 –> 최대 7일 연장가능
  • 실시간으로 데이터를 읽고 쓸 수 있는 정력된 순서의 데이터 레코드
  • 데이터 레코드는 스트림 샤드에 일시적으로 저장
  • 데이터가 추가된 시점부터 더 이상 엑세스 할 수 없는 시점까지의 기간 (보관기간) 24 ~ 168 가능