Amazon Web Services 한국 블로그

AWS Gateway Load Balancer 소개 – 파트너 어플라이언스를 위한 간편한 배포, 확장성 및 고가용성 제공

작년에 AWS에서는 Virtual Private Cloud(VPC) Ingress Routing을 출시했습니다. 이 기능은 Internet Gateway(IGW) 또는 Virtual Private Gateway(VGW)에서 송수신되는 모든 트래픽을 특정 Amazon Elastic Compute Cloud(EC2) 인스턴스의 탄력적 네트워크 인터페이스로 라우팅합니다. VPC Ingress Routing을 사용하면 주로 네트워크 보안 도구를 실행하여 수상한 네트워크 트래픽을 검사 또는 차단하거나 다른 EC2 인스턴스로 트래픽을 전달하기 전에 다른 네트워크 트래픽 검사를 실행하는 EC2 인스턴스로 모든 트래픽을 보내도록 VPC를 구성할 수 있습니다.

이를 통해 어플라이언스를 네트워크로 쉽게 추가할 수 있게 되었지만 고가용성과 확장성을 보장하기는 여전히 어렵습니다. 고객은 피크 로드와 고가용성을 처리하기 위해 어플라이언스를 초과 프로비저닝하거나 트래픽을 기준으로 어플라이언스를 직접 확장/축소하거나 다른 보조 도구를 사용해야 합니다. 이 모든 작업이 운영 간접비와 비용을 상승시키는 요인이 됩니다.

오늘 AWS Gateway Load Balancer(GWLB)가 정식 출시되었다는 소식을 알려드리고자 합니다. 이를 통해 타사 가상 어플라이언스의 가용성을 쉽고 비용 효율적으로 배포, 확장 및 관리 할 수있는 서비스 방화벽 , 침입 감지 및 방지 시스템과 클라우드의 심층 패킷 검사 시스템. AWS 파트너 네트워크 AWS Marketplace 파트너는 규모, 가용성 및 서비스 제공이라는 복잡한 문제를 해결하지 않고도 AWS 고객에게 가상 어플라이언스를 서비스로 제공 할 수도 있습니다.

또한 Gateway Load Balancer는 패킷을 검사하고 조치를 취하려는 AWS의 모든 네트워킹 경로에 자체 사용자 지정 로직 또는 타사 제품을 추가 할 수있는 새로운 영역을 엽니다. 예를 들어 VPC 간에 암호화되지 않은 트래픽 또는 TLS1.0 / TLS1.1 트래픽이 있는지 확인하는 간단한 애플리케이션을 작성할 수 있습니다.

Gateway Load Balancer – 작동 원리
Gateway Load Balancer는 투명한 네트워크 게이트웨이(즉, 모든 트래픽이 오가는 단일 지점)와 수요에 따라 트래픽을 분산하고 가상 어플라이언스를 조정하는 로드 밸런서를 결합합니다.

VPC의 라우팅 테이블에서 간단히 구성을 업데이트하면 GWLB로 트래픽을 보낼 수 있습니다. GWLB를 사용하는 고객은 가상 어플라이언스에서 트래픽의 부하를 분산하여 가상 어플라이언스를 탄력적으로 확장/축소할 수 있습니다. GWLB는 정상 가상 어플라이언스를 통해 트래픽 흐름을 라우팅하여 가용성을 개선하고, 어플라이언스가 비정상 상태가 되면 다시 트래픽 흐름을 라우팅합니다.

GWLB를 통해 AWS에서 원하는 어플라이언스를 사용하고, 기술 세트 및 기존 프로세스를 유지하면서도 확장 및 가용성 요구 사항을 관리할 수 있습니다. 가상 어플라이언스에서 트래픽의 부하를 분산하여 가상 어플라이언스의 규모를 탄력적으로 조정할 수도 있습니다. 어플라이언스를 확장/축소하면 비용이 절감됩니다. GWLB는 양방향의 트래픽 흐름을 동일한 어플라이언스로 보냄으로써 어플라이언스가 상태 저장 트래픽 처리를 수행하도록 합니다.

GWLB와 가상 어플라이언스는 GENEVE 캡슐화를 사용하여 서로 애플리케이션 트래픽을 교환하고, 따라서 GWLB가 원래 트래픽의 내용을 보존할 수 있도록 합니다. GWLB는 Gateway Load Balancer Endpoint(GWLBe), 즉 AWS PrivateLink로 구동되는 새로운 유형의 VPC 엔드포인트를 사용하여 라우팅 테이블에서 다음 홉(next-hop)이 될 수 있습니다. 이렇게 하면 VPC 안에 어플라이언스 서비스를 간편하게 삽입할 수 있습니다.

예를 들어 고객의 워크로드가 들어가게 될 고객 VPC를 만들 수 있습니다. 이 VPC에 GWLB 엔드포인트가 배포됩니다. AWS 파트너의 어플라이언스는 파트너 VPC에 배포됩니다.

어플라이언스 공급자와 소비자는 서로 다른 AWS 계정과 VPC에 있을 수 있습니다. GWLBe는 어플라이언스 통합, 일관된 보안 정책, 작업자 오류 감소, 트래픽 소스 또는 대상을 변경하거나 NAT를 변환할 필요가 없는 원활한 트래픽 검사를 지원합니다.

고가용성을 보장하려면 GWLB의 고급 라우팅 기능을 사용하여 트래픽을 정상 어플라이언스로만 보내고, 장애로 인해 어플라이언스가 비정상 상태가 되었을 때 트래픽을 다시 라우팅할 수 있습니다. GWLB는 모든 VPC와 사용자 계정에 작동하므로 중앙에서 한 번에 가상 어플라이언스를 관리하는 옵션을 제공합니다. 모든 사용자 계정에서 GWLB를 사용할 수 있으므로 파트너는 가상 어플라이언스를 AWS 호스팅 서비스로 제공하고, 고객이 각 VPC에서 액세스하도록 할 수 있습니다. 이렇게 하면 복잡성이 줄어들고 보안이 개선됩니다.

Gateway Load Balancer – 시작하기
GWLB를 생성하려면 EC2 콘솔의 [로드 밸런싱] 메뉴에서 로드 밸런서 마법사의 Gateway Load Balancer [생성] 버튼을 선택합니다.

GWLB를 구성하려면 이름을 입력하고 VPC와 서브넷 선택 사항을 확인한 다음, 로드 밸런서에 활성화할 가용 영역을 지정합니다. [다음: 라우팅 구성]을 선택합니다.

GWLB는 기본적으로 GENEVE 프로토콜과 6081 포트를 사용하여 이 대상 그룹의 대상으로 요청을 라우팅합니다. [다음: 대상 등록]을 선택합니다.

파트너 VPC에 있는 EC2 인스턴스를 등록하고 다음 단계에서 [다음: 검토]와 [생성]을 선택합니다.

가상 어플라이언스 소프트웨어로 EC2 인스턴스 보안 그룹을 구성하면 GWLB에서 트래픽을 가져오는 용도로 GENEVE 포트 – 6081을 추가하고, 상태 검사 용도로 HTTP 포트 – 80을 추가할 수 있습니다.

클라이언트에 송수신되는 트래픽을 GWLB 뒤의 어플라이언스로 보내려면 GWLB 엔드포인트(GWLBe)를 설정해야 합니다. 가용 영역별로 2개 이상의 서브넷(GWLBe와 애플리케이션 서브넷에 각각 1개씩, AZ별 라우팅 테이블 2개)이 필요합니다. GWLBe와 애플리케이션 서브넷에 각각 1개씩, VPC에서 IGW에 연결된 수신 라우팅 테이블 1개가 필요합니다.

AWS 명령줄 인터페이스(CLI)로 Gateway Load Balancer 엔드포인트를 생성하려면 create-vpc-endpoint-service-configuration 명령을 사용하여 Gateway Load Balancer로 엔드포인트 서비스 구성을 생성해야 합니다.

$ aws ec2-gwlb create-vpc-endpoint-service-configuration \
               --gateway-load-balancer-arns <provider_gwlb_arn> \
               --no-acceptance-required

create-vpc-endpoint 명령을 사용하여 서비스에 대한 Gateway Load Balancer 엔드포인트를 생성합니다.

$ aws ec2-gwlb create-vpc-endpoint \
               --vpc-endpoint-type GatewayLoadBalancer \
	       --vpc-id <consumer-vpc-id> \
	       --subnet-ids <consumer-gwlbe-subnet-id>

그런 다음, 애플리케이션/인스턴스 및 인터넷 게이트웨이에서 customer-client-rtbconsumer-igw-rtb의 다음 홉(next-hop)으로 GWLBe를 추가하도록 라우팅 테이블을 편집합니다. 각 영역의 각 애플리케이션 서브넷 라우팅 테이블에 대해 이 과정을 반복합니다.

$ aws ec2 create-route --route-table-id <customer-instance-rtb> \
          --destination-cidr-block 0.0.0.0/0 --vpc-endpoint-id <vpce-id>
$ aws ec2 create-route --route-table-id <consumer-gwlbe-rtb-id> \
          --destination-cidr-block 10.0.0.32/28 --vpc-endpoint-id <vpce-id>
$ aws ec2 create-route --route-table-id <consumer-gwlbe-rtb-id> \ 
          --destination-cidr-block 10.0.0.64/28 --vpc-endpoint-id <vpce-id>

설정에 대한 자세한 정보는 데모 동영상을 통해 다음의 전체 단계를 확인하세요.

  1. AWS Marketplace에서 파트너의 가상 어플라이언스 소프트웨어 찾기
  2. VPC에서 어플라이언스 인스턴스 시작
  3. 어플라이언스 인스턴스로 GWLB 및 대상 그룹 생성
  4. 트래픽을 검사해야 하는 GWLB 엔드포인트 생성
  5. GWLB 엔드포인트를 다음 홉(next-hop)으로 지정하도록 라우팅 테이블 업데이트

GWLB 파트너
이번 출시로 AWS GWLB는 Aviatrix, Check Point, Cisco, cPacket, Glasnostic, Fortinet, Hashicorp, Netscout, Palo Alto Networks, Radware, Trend Micro, Valtix 등의 업계를 선도하는 여러 파트너와 통합됩니다. 파트너들은 수많은 유용한 피드백을 제공했습니다. 파트너의 경험을 공유하기 위해 파트너가 작성한 블로그 게시물 중 일부를 소개합니다(블로그 게시물이 게시되는 대로 링크와 함께 이 문서를 업데이트하고 있습니다).

GWLB를 사용하는 AWS 파트너는 별도로 솔루션의 가용성, 부하 분산, 클라우드 확장 문제를 해결할 필요 없이 가상 어플라이언스를 SaaS(Software as a Service)로 사용하여 AWS 고객에게 다양한 관리형 서비스를 제공할 수 있습니다. 어플라이언스에서 GENEVE 프로토콜을 지원하고, GWLB 메타데이터를 복호화/암호화하도록 소프트웨어를 구현하고, AWS 환경에서 어플라이언스의 상호운용성 테스트를 수행한 뒤에 GWLB와 통합할 수 있습니다. 자세한 내용은 AWS 파트너 팀에 문의하세요.

정식 출시
AWS Gateway Load Balancer미국 동부(북부 버지니아), 미국 서부(오레곤), EU(아일랜드), 남아메리카(상파울루), 아시아 태평양(시드니) 리전에서 제공되며, AWS Marketplace에서 AWS 파트너의 가상 어플라이언스를 찾을 수 있습니다. Amazon EC2의 AWS 포럼 또는 평소 이용하는 AWS 지원 연락처를 통해 피드백을 보내주시기 바랍니다. 자세한 내용은 설명서코드 샘플을 참조하세요.

AWS Gateway Load Balancer에 대한 모든 세부 정보를 알아보고 지금 시작하십시오 .

Channy