View a markdown version of this page

Amazon VPC Lattice 참조 아키텍처 - Amazon VPC Lattice 참조 아키텍처

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon VPC Lattice 참조 아키텍처

게시일: 2023년 10월 16일(다이어그램 기록)

Amazon VPC Lattice는 서비스 간의 통신을 일관되게 연결, 모니터링 및 보호하는 애플리케이션 계층 서비스입니다. 이 시리즈는 다중AWS 계정 환경에 대한 다양한 연결 패턴을 보여줍니다.

구성 요소 다이어그램

VPC Lattice는 AWS 컴퓨팅 서비스(인스턴스, 컨테이너 및 서버리스 함수) 전반에서 서비스 간의 통신을 연결, 보호 및 모니터링하는 일관된 방법을 제공합니다. 이 다이어그램은 VPC Lattice의 다양한 구성 요소와 이러한 구성 요소가 서로 상호 작용하는 방법을 보여줍니다.

VPC Lattice의 다양한 구성 요소와 이러한 구성 요소가 서로 상호 작용하는 방식을 보여주는 다이어그램입니다.
  1. 서비스 네트워크는 서비스 모음의 논리적 경계입니다. 네트워크와 관련된 서비스는 검색, 연결, 접근성 및 관찰성에 대한 승인을 받을 수 있습니다. 네트워크의 서비스에 요청하려면 클라이언트가 서비스 네트워크와 연결된 VPC에 있어야 합니다.

  2. 서비스는 특정 작업 또는 함수를 제공하는 독립적으로 배포 가능한 소프트웨어 단위를 나타냅니다. 각 서비스에는 규칙을 사용하여 하나 이상의 대상 그룹을 대상으로 지정하는 리스너가 있습니다. 대상은 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스, IP 주소, AWS Lambda 함수, Application Load Balancer 또는 Kubernetes 포드일 수 있습니다.

  3. 서비스가 서비스 네트워크에 연결되면 클라이언트가이 서비스에 요청할 수 있지만 클라이언트가 위치한 VPC가 서비스 네트워크에도 연결되어 있고 정책에서 허용하는 경우에만 가능합니다.

  4. 서비스 네트워크와 VPC 연결을 수행하면 해당 VPC 내의 모든 대상이 클라이언트가 되고 서비스 네트워크의 다른 서비스와 통신할 수 있습니다. 보안 그룹을이 연결에 연결하여 VPC에서 네트워크 액세스를 제어할 수 있으며, 서비스 네트워크 또는 서비스 정책을 사용하여 세분화된 액세스 제어를 적용할 수 있습니다.

  5. 서비스 네트워크 또는 서비스 모두에서 인증 정책을 사용하여 액세스 제어를 구성할 수 있습니다.

트래픽 흐름 다이어그램

VPC Lattice는 모든 서비스를 쉽고 효과적으로 검색, 보호, 연결 및 모니터링할 수 있도록 설계되었습니다. Amazon Route 53 VPC Resolver는 소비자 VPC 내에서 VPC Lattice 서비스의 도메인 이름을 확인하는 데 사용되며, 로컬 주소를 링크하여 트래픽을 서비스 네트워크로 로컬로 전송합니다.

모든 서비스를 쉽고 효과적으로 검색, 보호, 연결 및 모니터링하는 방법을 보여주는 다이어그램입니다.
  1. Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 배치된 소비자 애플리케이션은 Amazon Route 53 VPC Resolver를 쿼리하여 service1의 도메인 이름 확인을 가져옵니다.

  2. DNS 확인에 따라 트래픽을 서비스 네트워크(링크-로컬 주소)로 전송해야 합니다. 첫 번째 트래픽 제어 조치는 VPC 연결에 연결된 보안 그룹입니다(두 개 이상의 보안 그룹을 연결할 수 있음).

  3. 요청된 VPC Lattice 서비스가 소비자 VPC와 연결된 서비스 네트워크에 연결되어 있고 서비스 네트워크 정책이 해당 서비스에 대한 통신을 허용하는 경우 트래픽이 특정 대상으로 전달됩니다.

  4. 이 예제에서 service1에는 Application Load Balancer(ALB)인 대상 그룹(기본적으로 라우팅됨)이 하나만 있습니다. 이 ALB는 트래픽을 해당 Amazon EC2 인스턴스로 전달합니다.

VPC Lattice 서비스 다이어그램의 사용자 지정 도메인 이름

VPC Lattice 서비스를 생성할 때 사용자에게 보다 직관적인 URL을 제공하도록 사용자 지정 도메인 이름을 구성할 수 있습니다. 클라이언트가 사용자 지정 도메인 이름을 사용하여 요청하면 DNS 서버는 이를 VPC Lattice 생성 도메인 이름(service-name-service_id.partition_id.vpc-lattice-svcs.region.on.aws)으로 확인합니다. 그러나 이는 사용자 지정 도메인 이름을 VPC Lattice에서 생성한 도메인 이름(CNAME 레코드)에 매핑하는 경우에만 발생합니다.

사용자 지정 도메인 이름을 VPC Lattice에서 생성한 도메인 이름에 매핑하는 방법을 보여주는 다이어그램입니다.
  1. 사용자 지정 도메인 이름과 VPC Lattice 생성 도메인 이름 간의 매핑을 허용하려면 소비자 VPC와 연결된 프라이빗 호스팅 영역을 생성합니다. 이 호스팅 영역에는이 매핑을 수행하는 ALIAS 레코드가 포함됩니다.

  2. 선택적으로 HTTPS 요청을 처리하려면 사용자 지정 도메인 이름을 설정할 때 AWS Certificate Manager (ACM)에서 자체 SSL/TLS 인증서를 준비해야 합니다.

  3. Amazon EC2 인스턴스에 배치된 소비자 애플리케이션은 VPC 해석기를 쿼리하여 service1.example.com 도메인 이름 확인을 가져옵니다. Route 53 Resolver는 별칭 레코드를 확인하여 적절한 VPC Lattice 엔드포인트 IP 주소를 직접 반환하므로 VPC 해석기에 대한 추가 DNS 조회가 필요하지 않습니다.

  4. 애플리케이션은 트래픽을 VPC Lattice 서비스 네트워크 VPC 연결로 전달합니다.

  5. 요청된 VPC Lattice 서비스는 소비자 VPC와 연결된 서비스 네트워크와 연결되고 서비스 네트워크의 정책이 해당 서비스에 대한 통신을 허용하므로 트래픽은 특정 대상으로 전달됩니다.

  6. 이 예제에서 service1에는 Auto Scaling 그룹인 대상 그룹(기본적으로 라우팅됨)이 하나만 있습니다. 트래픽은 그룹의 Amazon EC2 인스턴스 중 하나로 전달됩니다.

다중 계정 중앙 집중식 단일 서비스 네트워크 다이어그램

중앙 계정은 서비스 네트워크의 소유권을 가질 수 있으며, 서비스 네트워크는 동일하거나 다른 내의 다른 AWS 계정과 공유( AWS 리소스 액세스 관리자 사용)됩니다 AWS Organizations. 또한 공급자 계정은 AWS Resource Access Manager를 사용하여 서비스를 공유할 수도 있습니다.

중앙 계정이 서비스 네트워크의 소유권을 가질 수 있는 방법을 보여주는 다이어그램으로, 서비스 네트워크는 동일하거나 다른 내의 다른 AWS 계정과 공유됩니다( AWS Resource Access Manager 사용). AWS Organizations
  1. Amazon EC2 인스턴스에 배치된 소비자 애플리케이션은 VPC 해석기를 쿼리하여 service2의 도메인 이름 확인을 가져옵니다.

  2. DNS 확인에 따라 트래픽을 서비스 네트워크로 전송해야 합니다.

  3. 이 예제에서는 서비스 네트워크 및 서비스 수준의 두 정책 모두 소비자로부터 대상(Auto Scaling 그룹)으로의 트래픽을 허용하므로 Amazon EC2 인스턴스의 애플리케이션이 service2를 사용할 수 있습니다.

  4. 소비자 애플리케이션은 service1의 도메인 이름 확인을 가져옵니다.

  5. VPC 해석기는 서비스 네트워크와 함께 다음 홉으로 확인됩니다. 그러나이 예에서는 서비스 네트워크 또는 서비스 수준의 정책이 소비자가 service1(Lambda 함수)을 소비하도록 허용하지 않으므로 트래픽이 삭제됩니다.

다중 계정 중앙 집중식 다중 서비스 네트워크 다이어그램

중앙 계정은 동일하거나 다른(서비스와 AWS Organizations 동일) AWS 계정내에서 ( AWS 리소스 액세스 관리자를 사용하여) 다른와 공유되는 여러 서비스 네트워크의 소유권을 가질 수 있습니다. 여러 서비스 네트워크를 사용하면 서비스를 세분화할 수 있으며, 정책을 사용하여 이를 달성하거나 보완할 수도 있습니다.

중앙 계정이 동일하거나 다른(서비스와 동일) AWS 계정내에서 공유되는 AWS Organizations ( AWS 리소스 액세스 관리자 사용) 여러 서비스 네트워크의 소유권을 가질 수 있는 방법을 보여주는 다이어그램입니다.
  1. VPC에 배치된 AWS Lambda 함수는 VPC가 연결된 후 서비스 네트워크에 액세스할 수 있습니다. 이 경우 Lambda 함수에 있는 소비자 서비스는 VPC 해석기를 쿼리하여 service1의 도메인 이름을 확인합니다.

  2. DNS 확인에 따라 트래픽을 서비스 네트워크 2로 전송해야 합니다.

  3. 서비스 네트워크 및 서비스 수준의 두 정책 모두 소비자로부터 대상(Auto Scaling 그룹)으로의 트래픽을 허용하므로 소비자 애플리케이션이 서비스를 사용할 수 있습니다.

  4. Amazon EC2 인스턴스에 배치된 소비자 애플리케이션은 VPC 해석기를 쿼리하여 service2의 도메인 이름을 확인합니다. 이렇게 하면 트래픽을 서비스 네트워크로 전송하는 VPC Lattice 링크-로컬 주소에서 확인됩니다.

  5. service2는 서비스 네트워크 1과 연결되지 않으므로 트래픽이 삭제됩니다.

다중 계정 분산 서비스 네트워크 다이어그램

각 공급자는 자체 서비스를 AWS 계정 소유하고 동일하거나 다른 AWS 계정내에서 다른 공급자와 공유합니다 AWS Organizations. VPC는 하나의 서비스 네트워크에만 연결할 수 있으므로 소비자는 자체 서비스 네트워크를 소유하고 사용할 서비스를 선택할 수 있습니다.

각 공급자가 자체 서비스를 AWS 계정 소유하고 동일하거나 다른 AWS 계정내에서 다른 공급자와 공유하는 방법을 보여주는 다이어그램입니다 AWS Organizations.
  1. Amazon EC2 인스턴스에 배치된 소비자 애플리케이션은 VPC 해석기에 service1의 DNS 확인을 쿼리합니다.

  2. DNS 확인에 따라 트래픽을 서비스 네트워크 1로 전송해야 합니다.

  3. 서비스 네트워크 및 서비스 수준의 두 정책 모두 소비자로부터 대상(Lambda 함수)으로의 트래픽을 허용하므로 소비자 애플리케이션은 service1을 사용할 수 있습니다.

  4. VPC에 배치된 Lambda 함수는 VPC가 연결된 후 서비스 네트워크에 액세스할 수 있습니다. 이 경우 Lambda 함수에 있는 소비자 서비스는 VPC 해석기에 service2의 DNS 확인을 쿼리합니다.

  5. DNS 확인에 따라 트래픽을 서비스 네트워크 2로 전송해야 합니다.

  6. 서비스 네트워크 및 서비스 수준의 두 정책 모두 소비자로부터 대상(Auto Scaling 그룹)으로의 트래픽을 허용하므로 소비자 애플리케이션은 service2를 사용할 수 있습니다.

참조 자료

자세한 내용은 섹션을 참조하세요.

기여자

이 참조 아키텍처 다이어그램의 기여자는 다음과 같습니다.

  • Pablo Sánchez Carmona, Amazon Web Services의 전문가 솔루션 아키텍트

  • Adam Palmer, Amazon Web Services의 Senior Specialist Solutions Architect

다이어그램 기록

이 참조 아키텍처 다이어그램의 업데이트에 대한 알림을 받으려면 RSS 피드를 구독하세요.

변경 사항설명날짜

다이어그램 업데이트

다이어그램을 업데이트하고 새 사용 사례를 추가했습니다.

2023년 10월 16일

최초 게시

참조 아키텍처 다이어그램이 처음 게시되었습니다.

2023년 4월 17일

참고

RSS 업데이트를 구독하려면 사용 중인 브라우저에 대해 RSS 플러그인이 활성화되어 있어야 합니다.