Cloud/AWS Certified Solutions Architect - Asso

글로벌 전송

Tony Lim 2023. 8. 17. 10:31
728x90

CloudFront 개요

  • CDN 으로 엣지 로케이션의 콘텐츠 캐싱을 이용해 콘텐츠를 사용자에게 더 빨리 배포하도록 지원하는 서비스
  • 전세계에 배포된 200개이상의 엣지 로케이션을 이용하여 콘텐츠 전송
  • 엣지 로케이션은 데이터를 임시 저장할 수 있는 캐싱 기능이 있음
  • 글로벌 배포 서비스로 콘첸츠 지연시간을 최소화
  • EC2등의 오리진 서버의 부하를 줄일 수 있음
  • 오리진에서 CloudFront 로 전송되는 비용은 부과 되지 않으므로 비용 절감 효과가 있음

 

CloudFront - Origin Group

  • 고가용성을 위해 기본 origin 과 보조 origin  을 그룹으로 묶는다.
  • 기본 오리진을 사용할 수 없거나 실패코드가 돌아오면 보조 오리진에게 요청을 보내는 방식이다.
  • 오리진은 s3, ec2 , elastic LB등 뭔가 요청을 받을 수 있는 서비스이면 된다.

 

Lambda@Edge

  • CloudFornt를 통해 전달되는 콘텐츠를 받거나 줄떄 일종의 트리거 처럼 람다함수를 실행 할 수 있게 해준다.
    • 최종 사용자의 요청을 수신할때
    • 오리진에 요청을 전달하기 전
    • 오리진의 응답을 수신할 때
    • 최종 사용자에게 응답을 반환하기전
  • 실제 사용사례
    • A/B 테스트를 위해 사이트의 다양한 버전을 볼 수 있도록 쿠기를 검사하고 URL을 다시작성
    • User-Agent 헤더를 확인하여 사용 중인 디바이스를 기반으로 디바이스의 화면 크기에 따라 다른 이미지를 반환
    • 최종 사용자 요청 또는 오리진 요청 이벤트가 발생할 때 HTTP 응답을 생성
    • 데이터 전송 비용을 줄이기 위해 사용자에게 전송되는 파일을 압축

CloudFront 보안

프로토콜을 이용한 보안정책

 

OAI (Origin Access Identity)

OAI를 통해 s3 버킷의 액세스를 클라우드 프론트를 통해서만 하도록 할 수 있게 하는 기능

Cloud Front에서 원본 액세스에서 원본엑세스제어 ID( OAI )  를 만든후 cloudfront설정에서 s3 버킷 액세스에서 원본엑세스 제어설정 을 설정후 정책복사를 한다.

버킷정책에 위와 같이 복붙해준다. s3 GetObject를 AWS:SourceArn 이 있는 애만 허용해주겠다 는 의미이다.

 

 

Signed URL , Signed Cookies

  • 서명된 URL, cookie를 이용해 콘텐츠에 접속하는 기능
  • url, cookie에 콘텐츠 만료기간, 액세스가능 ip를 저장할 수 있음
  • 서명된 url은 1개의 파일에 1개의 서명만 저장 (1개의 파일 접속을 위한 URL)
  • 서명된 쿠키는 하나ㅢ 쿠키로 여러 개의 파일 접속 가능

지역 제한 (geographic restirctions)

  • 특정국가에서 콘텐츠 액세를 제한
  • 화이트리스트 ,블랙리스트 방식이 존재

Aws Web Application FireWall (WAF) , Aws Shield 와 결합해 DDos 방어 기능을 함

필드레벨 암호화

  • 신용카드 번호와 같이 사용자가 제출한 데이터를 안전하게 오리진 서버로 업로드 할 수 있게 해주는 CloudFront의 기능
  • PUT/POST 요청이 오리진으로 전달되기전에 엣지 로케이션에서 비대칭 암호화 키를 사용하여 데이터를 추가로 암호화
  • 데이터는 프라이빗 키를 가진 앱에서만 복호화 할 수 있음

Global Accelerator

  • 가장 가까운 위치로 트래픽을 라우팅하여 인터넷 대기시간을 줄이고 전송 성능을 향상하는 서비스
  • Global Accelerator를 미사용시 서버로 부터 지리적으로 먼 사용자는 많은 인터넷 라우팅을 하여 속도가 느림
  • Global Accelerator를 사용하면 사용자는 가까운 거리의 엣지 로케이션으로 라우팅하고 엣지로케이션과 서버는 AWS 전용 네트워크 연결로 전송속도가 빠름

  • 글로벌 액셀러레이터에는 2개의 Anycast 퍼블릭 고정 IP가 생성됨 (IP 주소 연결 방식)
  • Anycast는 네트워크 트래픽을 가장 가까운 노드로 전송하는 라우팅 방식
  • Elastic IP , EC2 인스턴스, ALB, NLB 등의 AWS 엔드포인트를 연결하여 사용가능
  • 앱의 health check 기능을 통해 하나의 서버 장애 발생시 다른 서버로 라우팅 가능

 

 global accelerator endpoint 에 가면 region 별로 listener endpoint 가 존재한다.

각 endpoint에 ec2, s3, alb 등등이 연결되어있고 헬스체크를 하게된다.

헬스체크에 실패하면 기존에 가까운 region에 있는 서비스에 연결되지 않고 다른 region에 헬스체크에 성공한곳으로 연결해준다.

 

 

 

 

728x90

'Cloud > AWS Certified Solutions Architect - Asso' 카테고리의 다른 글

데이터 분석 서비스  (0) 2023.08.22
데이터베이스  (0) 2023.08.21
스토리지 - 기타  (0) 2023.08.14
스토리지 - S3  (0) 2023.08.08
EC2 스토리지  (0) 2023.08.07