BLOG

서버리스 오픈 소스 프로젝트, AWS Sync Routes 활용법… 라우팅 테이블 간 경로 동기화
작성일: 2020-03-13

사용중이신 네트워크 아키텍처가 Amazon VPC(Virtual Private Cloud)에 여러 개의 라우팅 테이블을 포함하고, 이 라우팅 테이블 간에 자동 업데이트를 동기화하기 위한 솔루션을 찾고 계시다면 AWS Sync Routes를 확인해 보십시오. 바로 배포할 수 있는 서버리스 인프라를 코드 프로젝트로 탐색하시려는 경우에도 AWS Sync Routes 프로젝트가 도움이 될 수 있습니다.

 

이 프로젝트는 AWS CloudFormation 템플릿 및 다른 코드를 구성하는 직관력 있는 방법을 제공하기 때문에 AWS Amplify framework로 구축되었습니다. Amplify CLI는 몇 개의 간단한 명령으로 life cycle를 관리하고 배포할 수 있는 표준화된 방법을 제공합니다. 이에 대한 전제 조건과 시작 방법이 궁금하시다면 다음의 설명서를 참고해 주시기 바랍니다.

 

운영 방법

AWS Sync Routes가 배포된다면 모든 구성요소는 AWS Console에서 확인할 수 있지만 폴링 클라이언트(예시: aws-sync-routes-client.sh) 나 이벤트 모니터링 작업 등 Amazon API Gateway REST API 인스턴스에 대한 웹 요청이 시작될 때까지 솔루션은 가동되지 않습니다.

 

웹 요청에는 요청 조절뿐 아니라 단순한 단일 요청 인증 메커니즘에 사용되는 API 토큰이 포함되어야 합니다. 또한 요청 기관의 엄격한 1티어 입력 유효성 검사를 시행하기 위해 요청 유효성 검사 모델이 사용됩니다. 요청이 초기 유효성 검사를 통과하면 API 게이트웨이는 요청을 완료하는 데 필요한 최소한의 권한을 부여하는 AWS (IAM)Identity and Access Management 정책을 사용하여 AWS Lambda 기능을 실행합니다.

 

그다음에는 Lambda 기능으로 URI 경로에 제공된 식별을 통하여 VPC의 메인/기본 라우팅 테이블을 검색하고, 유효한 경우 바디에 포함된 IPv4 CIDIR 블록을 통해 라우팅을 선택합니다. 일치하는 라우트는 메인 라우트 테이블에서 활성화된 상태이며 탄력적으로 네트워크 인터페이스(ENI) 타깃으로 로컬 라우트인지 전파라우트가 아인지 확인합니다. 모든 테스트를 패스하였다면, 라우트가 사용자 지정 라우트 테이블에서 비동기적으로 추가 또는 업데이트가 되고(만약 필요하다면) 알림이 Amazon Simple Notification Service (SNS)에 게시될 것이며 원한다면 구독하여 알림 또한 받아볼 수 있습니다.

 

일반적으로 솔루션은 실행되는데 1~3초의 시간이 걸립니다. 한 고객의 성공 사례로 4초 이내에 4개의 사용자 지정 경로 테이블(104개의 루트 동시 동기화)에 걸쳐 26개의 생산 루트를 동기화 하기 위해 사용된 적이 있습니다. 이는 미션 크리티컬 애플리케이션이 15초가 지나기 전에 모든 동기화를 완료해야 하는 고객의 요구를 충족시켰고, 이로써 중요한 유지보수 기간을 완료할 수 있었습니다.

 

이 솔루션은 간단하고 의도적으로 원하는 결과를 얻을 수 있으며, 기능 중 하나를 수정하고 싶은 경우에도 실행 가능합니다. 필요에 가장 적합한 솔루션을 맞춤화할 수 있도록 권한을 부여한 것도 이 프로젝트를 오픈 소스로 출시하는 이유 중 하나였습니다. 다양한 고객에 의해 논의되고 구현된 아이디어로는 지역 대신 사설 API 게이트웨이 인스턴스를 사용하는 것, 인증 프로세스 확대, 바람직하지 않은 요청을 필터링하기 위한 AWS Web Application Firewall (WAF) 통합 등이 있습니다.

 

 

다음 단계로 고려해야 것들

  • AWS Sync Routes를 배포하여 VPC의 라우트 테이블에 동기화를 시작하십시오
  • 다음 설명서를 통하여 어떠한 전제조건이 필요하고 어떻게 시작하는지 확인하십시오.
  • 풀 요청을 작성하여 오픈 소스 프로젝트를 개선 하는데 도움을 줄 수 있습니다.
  • Amplify Framework를 사용하여 자체적 서버리스 인프라를 코드 솔루션을 통하여 구축하십시오.

 


원문 URL: https://aws.amazon.com/ko/blogs/opensource/sync-routes-across-route-tables-with-aws-sync-routes-a-serverless-open-source-project/

 

** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 개제하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달드리도록 하겠습니다.