BLOG

AWS re:Invent 2022 세션 후기 #13 – 네트워킹
작성일: 2022-11-30
[NET301] Improve performance and availability with AWS Global Accelerator

연사 : Ananda Rajagopal, Principal Product Manager, Global Accelerator and internet monitoring, AWS

일시: 2022.11.28 13:45 ~ 14:45

장소: MGM Level 1, Chairmans 115

작성자 : 메가존클라우드 Enterprise Managed 

Svc Group 홍은철 매니저

 

 

AWS Global Accelerator의 기능 소개와 장점에 들을 수 있던 세션 이었습니다.

 

 

Agenda는 아래와 같습니다.

  • AWS Global Accelerator: Overview
  • Simplifying multi-Region deployments
  • Availability
  • DDoS protections
  • Customer case study: Okta
  • Other new capabilities
  • Deployment best practices

 

 

Global Accelerator 가 요구를 해결하기 위해 아래와 같은 방법을 사용 하고 있습니다.

  • 예측 가능한 사용자 경험 -> 고성능 고가용성의 amazon global network 제공
  • Global 사용자 기반의 지역 워크로드 제공 가능한지 -> global static IP를 사용한 anycast 서비스와 ALB, NLB, EC2, EIP등의 다양한 엔드포인트
  • 여러 리전 배포가 단순한지 -> 가장 근접한 리전으로 라우팅, DNS 의존하지 않는 빠른 failover
  • edge 에서의 DDoS 공격 완화 -> AWS Shield를 통한 DDoS 완화

 

 

Global Accelerator edge location 은 48개국 88개 도시에  104개의 POP 존재합니다.

 

 

US의 고객이 eu-west-1 지역의 endpoint로 접속하는 것을 가정하고, AWS Global Accelerator와 Pulic Internet으로 접속할 때의 차이를 보여주는 지표입니다.(P95) 일반적으로 접속할 때 보다 최대 60% 향상된 모습을 보여줍니다.

 

 

Global Accelerator의 TCP termination 기능에 대한 설명입니다.

Global Accelerator는 edge에서의 TCP termination 기능을 통해 end user와 가장 가까운 AWS Edge 로케이션 간에 TCP 연결을 맺음으로써 최초 설정 시간을 단축합니다. 이후 Global Accelerator는 Edge 로케이션과 AWS 리전의 엔드포인트 간의 두 번째 TCP 연결을 생성합니다. 이 프로세스를 통해 클라이언트는 Global Accelerator edge 로케이션으로부터 더 빠른 응답을 얻고, Edge 로케이션에서 리전의 엔드포인트로의 연결은 AWS 글로벌 네트워크에서 실행되도록 합니다.

 

 

Global Accelerator가 네트워크 성능을 최대 60% 까지 끌어올린다는 설명입니다.

  • jumbo frame 사용으로 클라이언트와 어플리케이션 간 데이터 전송시간 단축
  • Large congestion windows – Public Internet을 통하는 것보다 더 많은 양의 데이터 전송 가능
  • Large receive side window and TCP buffers : 더 짧은 시간 어플리케이션에서 더 많은 양의 데이터를 수신하고 버퍼링 할 수 있음

 

 

Global Accelerator를 사용하는 AWS 서비스 목록은 다음과 같습니다.

 

AWS Offerings

  • ECR
  • AWS Management Console
  • Cloudfront
  • AWS Site-to-Site VPN
  • S3
  • Chime SDK

 

Other Amazon Product

  • Amazon New World
  • Amazon Alexa

 

 

엔드포인트 가중치 작동 방식에 대한 설명입니다.

기본값은 128이며, 특정 엔드포인트로 트래픽 전송을 중단하고 싶을 경우 해당 리소스의 가중치를 0으로 변경하면 트래픽이 차단 됩니다.

 

 

Traffic Dial 을 설정하여 엔드포인트 그룹에 전달되는 트래픽 비율을 제어하는 모습을 설명하였는데요,

특정 엔드포인트의 값이 0이 되면 해당 엔드포인트 그룹으로 보내는 트래픽을 차단하며,
기본적으로 모든 지역 엔드포인트 그룹에 대해서는 100%로 설정되나 성능 테스트 또는 Blue/Green 배포 실행 시 트래픽 비율 조절을 위해 사용됩니다.

 

 

DNS-based failover는 TTL cache의 존재로 failover가 Global Accelerator에 비해 느리다는 것을 지표로 확인할 수 있습니다. Global Accelerator의 failover는 1초 내외로 매우 빠른 편입니다.

 

 

Global ISP는 일주일 평균 190건 이상의 이벤트가 발생하며, CSP 보다 약 8배 많이 발생하고 있습니다.

 

 

AWS Global Network를 사용하기 때문에 일반적인 Public Internet을 사용하는 것보다 거쳐가는 Router Hop 수가 적어 고객의 어플리케이션 까지의 latency를 최소화 시킵니다.

 

 

일반적인 Public Internet을 통하는 것 보다 매년 500분 이상의 가용률을 더 보여줍니다.(99.995%)

 

 

  • Global Accelerator는 SPOF를 방지하고 고가용성과 재해복구를 위해 설계되었습니다.
    • Network Zone
      • 내결함성과 격리를 제공하기 위해 Network Zone을 사용하여 IP주소를 광고
      • Accelerator 생성 시 두 개의 global anycast static IP를 할당 받게되고 각 IP 주소는 각각 다른 Network Zone에 광고됨
    • Cellular architecture, Shuffle Sharding
      • Network Zone은 여러 고객이 공유하여 사용하나, 한 고객의 문제가 다른 고객에게 미치는 영향을 제한하기 위하여 각 Network Zone은 4개의 Cell로 분리 및 Shuffle Sharding 이라는 추가적인 보호 장치를 사용

 

 

  • DDos Protection
    • Shield Advanced를 사용하여 Global Accelerator에서 실행되는 어플리케이션에 대해서 향상된 수준의 DDoS 보호 기능을 얻을 수 있다.
      • Shield Advanced 사용 시 이점
        • DDoS 관련 사용량 증가에 대한 비용 보호
        • AWS DDoS 대응팀 24/7 대기
        • 정교한 보호
      • 일반적으로 Shield Standard는 인프라(3/4계층)의 DDoS 공격으로부터 Global Accelerator 보호

 

 

  • Global Accelrator와 AWS WAF를 사용하여 Layer7 계층의 DDoS 방어를 하기 위한 구성도
    • AWS WAF 소개
      • OWASP10 Top 10, CVE, Bot 차단
      • IP reputation, limit access, rate limits 기능 사용 가능

 

 

  • New Reference Architecture
    • F5 BIGIP 혹은 Nginx Plus 솔루션을 EC2에 설치하여 Endpoint로 사용하는 구성도

 

 

  • Global Accelerator 신규 기능 발표
    • dual stack accelerator를 제공하여 고객 리전의 ALB 엔드포인트까지 IPv6 트래픽 라우팅 가능
    • IPv4트래픽과 함께 IPv6 라우팅 가능

 

 

  • 엔드포인트를 빠르게 생성/제거 가능
  • 이전에는 endpoint 업데이트 시 UpdateEndPointGroup API를 사용해 전체 endpoint 전체 목록을을 제공해야 했지만, 이제는 두 개의 새로운 API인 AddEndpoints 및 RemoveEndpoints를 제공하여 고객이 액셀러레이터 뒤에 엔드포인트를 추가 및 제거할 수 있게 되었습니다.
  • 이전보다 구성이 간단 해졌으며, API 실행 시간 50% 감소되는 효과가있음

 

 

  • Global Accelerator 주요 고려사항
    • Connection Collisions
    • TCP Keepalives
    • Cross-zone load balancing on NLB Endpoints
    • IP address space in your subnet
    • Using your accelerator IP address

 

 

  • Conncection Collison 시나리오
  • 충돌이유:
    Global Accelerator는 ALB, EC2 인스턴스에 대해 IP 주소 보존
    클라이언트는 두 연결에 대해 서로 다른 5-tuple(Source IP, Source Port, Destination IP, Destination Port, Protocol)을 사용하지만 엔드포인트는 두 연결 모두에서 동일한 5-tuple을 확인

 

 

  • 시나리오: keepalive가 활성화 되있음에도 TCP 연결 시간 초과됨
  • 이유: TCP termination 기능이 기본적으로 활성화 되어있고, 엔드포인트가 unhealthy로 표시되더라도 유휴 제한 시간 340초 전까지 엔드포인트로 트래픽을 계속 전달하나 받지 못하는 경우 Global Accelerator는 연결을 닫아버림
  • Best Practice: 유휴 제한 시간이 경과하기 전에 최소 1byte의 데이터를 보내야함

 

 

  • NLB의 경우 교차 영역 로드 밸런싱과 클라이언트 IP 보존이 모두 활성화된 경우, 동일한 로드 밸런서의 다른 IP에 연결하는 클라이언트가 동일한 대상으로 라우팅 될 수 있기 때문에 교차 영역 로드 밸런싱은 비활성화 하는 것이 좋음
  • Global Accelerator는 client IP 보존을 위해 ENI를 생성하기 때문에 Subnet에 적어도 1개의 유휴 IP를 확보해 놓을 것(ALB, EC2 엔드포인트로 사용 시)
  • accelerator의 두 IP 주소를 모두 사용

 

 

결론: global accelerator의 기초부터 상세한 내용,특히 트러블슈팅 시나리오 까지 알게되어 global accelerator 운영 시 많은 도움이 될 것 같아 유익한 세션이었습니다.
앞으로 어떤 신규 기능이 나올지 기대되는 서비스입니다.

 

 


 

👉 본 세션 내용 관련하여 추가 문의나 요청 사항이 있으시다면? 우측 링크로 이동하셔서 편하게 의견을 남겨주세요! https://www.megazone.com/contact/

 

👉 다른 세션 후기글이 궁금하시다면? 아래 링크를 통해 확인해 주세요!

🔷Keynote Report #1. Day1 Monday Night Live with Peter DeSantis 확인하기

🔷Keynote Report #2. Day2 Adam Selipsky Keynote 확인하기

🔷Keynote Report #3. Day3 Swami Sivasubramanian Keynote 확인하기

🔷Keynote Report #4. Day4 Dr.Werner Vogels Keynote 확인하기

 

✅1. 데이터 보호 세션 후기 확인하기

✅2. 마이그레이션 세션 후기 확인하기

✅3. 현대화 (Modernization)세션 후기 확인하기

✅4. SAP 세션 후기 확인하기

✅5. 쿠버네티스 세션 후기 확인하기

✅6. 마이그레이션2 세션 후기 확인하기

✅7. 분석 세션 후기 확인하기

✅8. AI/ML 세션 후기 확인하기

✅9. AI/ML 2 세션 후기 확인하기

✅10. 현대화 (Modernization) 2 세션 후기 확인하기

✅11. 현대화 (Modernization) 3 세션 후기 확인하기

✅12. Data Lakes 세션 후기 확인하기

✅13. 네트워킹 세션 후기 확인하기

✅14. 마이그레이션3 세션 후기 확인하기

✅15.비용 최적화 세션 후기 확인하기

✅16. 보안 세션 후기 확인하기

✅17. SAP 2 세션 후기 확인하기

✅18. 마이그레이션4 세션 후기 확인하기

✅19. DevOps 세션 후기 확인하기

✅20. 신규업데이트 세션 후기 확인하기

✅21. 스토리지 세션 후기 확인하기

✅22. Amazon 세션 후기 확인하기

✅23. 신규업데이트2 후기 확인하기

✅24. 거버넌스 후기 확인하기

✅25. 거버넌스2 후기 확인하기

✅26. DevOps 2 후기 확인하기

✅27. AI/ML 3 세션 후기 확인하기

✅28. 분석2 세션 후기 확인하기

✅29. 쿠버네티스2 세션 후기 확인하기

✅30. 분석 3 세션 후기 확인하기

✅31. 서버리스 컴퓨팅 세션 후기 확인하기

✅32. 신규 업데이트 3 세션 후기 확인하기

✅33. 신규 업데이트 4 세션 후기 확인하기

✅34. 보안 2 세션 후기 확인하기

✅35. 분석 4 세션 후기 확인하기

✅36. 모니터링 세션 후기 확인하기

✅37. AI/ML 4 세션 후기 확인하기

✅38. 운영 세션 후기 확인하기

✅39. 운영 2 세션 후기 확인하기

✅40. 데이터베이스 세션 후기 확인하기

✅41. 데이터베이스 2 세션 후기 확인하기

✅42. 보안 3 세션 후기 확인하기

✅43. SaaS 세션 후기 확인하기

✅44. 컴퓨팅 세션 후기 확인하기

✅45. 신규 업데이트 : AWS SnapStart 세션 후기 확인하기

✅46. 신규 업데이트 : 네트워크 최적화 인스턴스와 최신 Amazon EC2 네트워킹 세션 후기 확인하기

✅47. 아키텍처 세션 후기 확인하기

✅48. SAP 3 세션 후기 확인하기

✅49. 고객사례 세션 후기

✅50. SAP 4 세션 후기 확인하기

✅51. 데이터베이스, 마이그레이션 세션 후기 확인하기

✅52. 보안 4 세션 후기 확인하기

✅53. 보안 규정 세션 후기 확인하기

✅54. 데이터베이스 3 세션 후기 확인하기

✅55. 신규 업데이트 5 세션 후기 확인하기

✅56 .DevOps 3 세션 후기 확인하기

✅57. 분석 5 세션 후기 확인하기

✅58. AI/ML 5 세션 후기 확인하기

✅59. DevOps 4 세션 후기 확인하기

✅60. 신규업데이트 6 세션 후기 확인하기

✅61. 분석 6 세션 후기 확인하기

✅62. 데이터 보호 세션 후기 확인하기

✅63. AI/ML 6 세션 후기 확인하기

✅64. DevOps 5 세션 후기 확인하기

✅65. 신규업데이트 7 세션 후기 확인하기

✅66. 신규 업데이트 8 세션 후기 확인하기