Amazon VPC에 있는 MemoryDB 클러스터에 액세스하기 위한 액세스 패턴 - Amazon MemoryDB

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

Amazon VPC에 있는 MemoryDB 클러스터에 액세스하기 위한 액세스 패턴

MemoryDB는 Amazon VPC의 클러스터에 액세스하기 위한 다음 시나리오를 지원합니다.

MemoryDB 클러스터와 Amazon EC2 인스턴스가 같은 Amazon VPC에 있는 경우, MemoryDB 클러스터 액세스

가장 일반적인 사용 사례는 EC2 인스턴스에 배포된 애플리케이션이 같은 VPC에 있는 클러스터에 연결해야 하는 경우입니다.

동일한 VPC에서 EC2 인스턴스와 클러스터 간 액세스를 관리하는 가장 간단한 방법은 다음과 같습니다.

  1. 클러스터의 VPC 보안 그룹을 만듭니다. 이 보안 그룹을 사용해 클러스터에 대한 액세스를 제한할 수 있습니다. 예를 들어, 클러스터를 만들 때 할당한 포트와 클러스터에 액세스할 때 이용할 IP 주소를 사용해 TCP 액세스를 허용하는 이 보안 그룹의 사용자 지정 규칙을 만들 수 있습니다.

    MemoryDB 클러스터의 기본 포트는 6379입니다.

  2. EC2 인스턴스(웹 및 애플리케이션 서버)의 VPC 보안 그룹을 만듭니다. 이 보안 그룹은 필요할 경우 VPC의 라우팅 테이블을 통한 EC2 인스턴스 액세스를 허용할 수 있습니다. 예를 들어, 이 보안 그룹에서 TCP가 포트 22를 통해 EC2 인스턴스에 액세스하도록 허용하는 규칙을 설정할 수 있습니다.

  3. 클러스터에 대한 보안 그룹에서 EC2 인스턴스에 대해 생성한 보안 그룹으로부터의 연결을 허용하는 사용자 지정 규칙을 만듭니다. 그러면 보안 그룹의 모든 구성원이 클러스터에 액세스하도록 허용됩니다.

VPC 보안 그룹에서 다른 보안 그룹으로부터의 연결을 허용하는 규칙을 만들려면
  1. AWS 관리 콘솔에 로그인하고 https://console.aws.amazon.com/vpc 에서 Amazon VPC 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 [Security Groups]를 선택합니다.

  3. 클러스터에 사용할 보안 그룹을 선택하거나 만듭니다. [Inbound Rules]에서 [Edit Inbound Rules]를을 선택한 다음 [Add Rule][을 선택합니다. 이 보안 그룹은 다른 보안 그룹 멤버에 대한 액세스를 허용합니다.

  4. [Type]에서 [Custom TCP Rule]을 선택합니다.

    1. [Port Range]에 대해 클러스터를 만들 때 사용한 포트를 지정합니다.

      MemoryDB 클러스터의 기본 포트는 6379입니다.

    2. [Source] 상자에 보안 그룹 ID를 입력합니다. 목록에서 Amazon EC2 인스턴스에 사용할 보안 그룹을 선택합니다.

  5. 완료되면 [Save]를 선택합니다.

MemoryDB 클러스터와 Amazon EC2 인스턴스가 다른 Amazon VPC에 있는 경우, ElastiCache 클러스터 액세스

클러스터가 액세스에 사용할 EC2 인스턴스와 다른 VPC에 있는 경우, 여러 가지 방법으로 클러스터에 액세스할 수 있습니다. 클러스터와 EC2 인스턴스가 서로 다른 VPC에 있지만 리전은 동일한 경우, VPC 피어링을 사용할 수 있습니다. 클러스터와 EC2 인스턴스가 서로 다른 리전에 있으면 리전 간에 VPN 연결을 만들 수 있습니다.

 

ElastiCache 클러스터와 Amazon EC2 인스턴스가 같은 리전의 서로 다른 Amazon VPC에 있는 경우, MemoryDB 클러스터 액세스

같은 리전 내의 서로 다른 Amazon VPC에 있는 Amazon EC2 인스턴스가 액세스하는 클러스터 - VPC 피어링 연결

VPC 피어링 연결은 프라이빗 IP 주소를 사용하여 두 VPC 간에 트래픽을 라우팅할 수 있도록 하기 위한 두 VPC 사이의 네트워킹 연결입니다. 동일한 네트워크에 속하는 경우와 같이 VPC의 인스턴스가 서로 통신할 수 있습니다. 자신의 Amazon VPC 간에 또는 단일 지역 내 다른 AWS 계정의 Amazon VPC와 VPC 간 VPC 피어링 연결을 생성할 수 있습니다. Amazon VPC 피어링에 대한 자세한 내용은 VPC 설명서를 참조하세요.

피어링으로 다른 Amazon VPC에 있는 클러스터에 액세스하려면
  1. 두 VPC에 겹치는 IP 범위가 없거나 이 VPC를 피어링할 수 없어야 합니다.

  2. 두 VPC를 피어링합니다. 자세한 정보는 Amazon VPC 피어링 연결 생성 및 수락을 참조하세요.

  3. 라우팅 테이블을 업데이트합니다. 자세한 내용은 VPC 피어링 연결을 위한 라우팅 테이블 업데이트를 참조하세요.

  4. MemoryDB 클러스터의 보안 그룹을 수정하여 피어링된 VPC의 애플리케이션 보안 그룹에서 들어오는 인바운드 연결을 허용합니다. 자세한 내용은 피어 VPC 보안 그룹 참조를 참조하세요.

피어링 연결을 통해 클러스터에 액세스하면 데이터 전송 비용이 추가로 발생합니다.

 

Transit Gateway 사용

트랜짓 게이트웨이를 사용하면 동일한 AWS 지역의 VPC와 VPN 연결을 연결하고 이들 간에 트래픽을 라우팅할 수 있습니다. 트랜짓 게이트웨이는 여러 AWS 계정에서 작동하며, AWS Resource Access Manager를 사용하여 트랜짓 게이트웨이를 다른 계정과 공유할 수 있습니다. 트랜짓 게이트웨이를 다른 AWS 계정과 공유한 후 계정 소유자는 자신의 VPC를 트랜짓 게이트웨이에 연결할 수 있습니다. 두 계정의 사용자는 언제든지 연결을 삭제할 수 있습니다.

Transit Gateway에서 멀티캐스트를 활성화한 다음 도메인과 연결된 VPC 연결을 통해 멀티캐스트 소스에서 멀티캐스트 그룹 멤버로 멀티캐스트 트래픽을 보낼 수 있는 Transit Gateway 멀티캐스트 도메인을 생성할 수 있습니다.

또한 여러 지역의 트랜짓 게이트웨이 간에 피어링 연결 연결을 생성할 수 있습니다. AWS 이렇게 하면 여러 리전의 Transit Gateway 연결 간에 트래픽을 라우팅할 수 있습니다.

자세한 내용은 전송 게이트웨이를 참조하세요.

MemoryDB 클러스터와 Amazon EC2 인스턴스가 다른 리전의 다른 Amazon VPC에 있는 경우, MemoryDB 클러스터 액세스

전송 VPC 사용

VPC 피어링을 사용하는 대신, 지리적으로 떨어져 있는 여러 VPC와 원격 네트워크를 연결하는 또 다른 일반적인 전략은 글로벌 네트워크 전송 센터 역할을 하는 전송 VPC를 만드는 것입니다. 전송 VPC는 네트워크 관리를 간소화하고 여러 VPC와 원격 네트워크를 연결하는 데 필요한 연결 수를 최소화합니다. 이 디자인은 기존의 방식대로 공동 배치 전송 허브에 실제 존재를 만들거나 물리적 네트워크 장비를 배포하지 않고 가상으로 구현되므로 시간, 노력, 비용을 아낄 수 있습니다.

다른 리전의 다른 VPC를 지나는 연결

전송 Amazon VPC가 설정되면 한 리전의 “스포크” VPC에 배포된 애플리케이션이 다른 리전의 “스포크” VPC에 있는 MemoryDB 클러스터에 연결할 수 있습니다.

다른 지역 내의 다른 VPC에 있는 클러스터에 액세스하려면 AWS
  1. 전송 VPC 솔루션을 배포합니다. 자세한 내용은 AWS Transit Gateway를 참조하세요.

  2. 앱 및 VPC에서 VPC 라우팅 테이블을 업데이트하여 VGW(가상 프라이빗 게이트웨이) 및 VPN 어플라이언스를 통해 트래픽을 라우팅합니다. BGP(Border Gateway Protocol)를 사용하는 동적 라우팅의 경우 라우팅이 자동으로 전파됩니다.

  3. MemoryDB 클러스터의 보안 그룹을 수정하여 애플리케이션 인스턴스 IP 범위에서 들어오는 인바운드 연결을 허용합니다. 이 시나리오에는 애플리케이션 서버 보안 그룹을 참조할 수 없습니다.

여러 리전의 클러스터에 액세스하면 네트워크 지연 시간이 생기고 교차 리전 데이터 전송 비용이 추가로 발생합니다.

고객의 데이터 센터에서 실행되는 애플리케이션에서 MemoryDB 클러스터 액세스

고객 데이터 센터의 클라이언트나 애플리케이션이 VPC의 MemoryDB 클러스터에 액세스해야 하는 하이브리드 아키텍처도 가능한 시나리오입니다. VPN이나 Direct Connect를 통해 고객의 VPC와 데이터 센터 간에 연결을 제공하여 이 시나리오도 지원됩니다.

 

VPN 연결을 사용하여 고객의 데이터 센터에서 실행되는 애플리케이션에서 MemoryDB 클러스터 액세스

VPN을 통해 데이터 센터에서 MemoryDB에 연결

VPN 연결을 통해 온-프레미스 애플리케이션에서 VPC의 클러스터에 액세스하려면
  1. 하드웨어 가상 프라이빗 게이트웨이를 VPC에 추가하여 VPN 연결을 설정합니다. 자세한 내용은 VPC에 하드웨어 가상 프라이빗 게이트웨이 추가를 참조하세요.

  2. MemoryDB 클러스터가 배포되는 서브넷의 VPC 라우팅 테이블을 업데이트하여 온프레미스 애플리케이션 서버에서 들어오는 트래픽을 허용합니다. BGP를 사용하는 동적 라우팅의 경우 라우팅이 자동으로 전파될 수 있습니다.

  3. MemoryDB 클러스터의 보안 그룹을 수정하여 온프레미스 애플리케이션 서버에서 들어오는 인바운드 연결을 허용합니다.

VPN 연결을 통해 클러스터에 액세스하면 네트워크 지연 시간이 생기고 데이터 전송 비용이 추가로 발생합니다.

 

Direct Connect를 사용하여 고객의 데이터 센터에서 실행되는 애플리케이션에서 MemoryDB 클러스터 액세스

Direct Connect를 통해 데이터 센터에서 MemoryDB에 연결

Direct Connect를 사용하여 네트워크에서 실행되는 애플리케이션에서 MemoryDB 클러스터에 액세스하려면
  1. Direct Connect 연결을 설정합니다. 자세한 내용은 AWS Direct Connect로 시작하기를 참조하십시오.

  2. MemoryDB 클러스터의 보안 그룹을 수정하여 온프레미스 애플리케이션 서버에서 들어오는 인바운드 연결을 허용합니다.

DX 연결을 통해 클러스터에 액세스하면 네트워크 지연 시간이 생기고 데이터 전송 요금이 추가로 발생할 수 있습니다.