이제 우리 VPC의 서비스를 다른 VPC에
노출시키는 방법에 대해 알아보겠습니다
첫 번째 방법은 퍼블릭으로 공개하는 것입니다
그 경우 인터넷 트래픽은
퍼블릭인터넷을 거치는데
접근을 관리하기가 힘들어 집니다
여기 예시가 있습니다
서비스 VPC에는 애플리케이션 서비스가 있고
고객 VPC에는 인터넷 게이트웨이가 있으므로
퍼블릭 인터넷을 통해
소통할 수 있습니다
작동은 되지만 최적화되진 않았습니다
퍼블릭 인터넷을 이용하기 때문에
신뢰할 수 없기 때문입니다
더 나은 방법도 많습니다
두 번째 방법은
이 섹션에서 배운 것을 바탕으로
VPC peering(피어링)을 사용하는 것입니다
이 경우
하나의 VPC가
다수의 고객과 연결되어 있을 경우
모든 VPC 간의 peering 설정이
필요한데 많은 작업이 요구됩니다
그리고 VPC를
잘못된 피어링 연결로 설정하면
한 VPC의 전체 네트워크를 열게 됩니다
하나의 애플리케이션만 외부화하고 싶은 것인데 말입니다
예상하시다시피
더 좋은 방법이 있습니다
AWS PrivateLink라고 하는데
VPC 엔드포인트에 동력을 공급합니다
VPC 엔드포인트 서비스라고도 불립니다
수천 명이 넘는 VPC에게 서비스를 공개하는
더 안전하고 확장 가능한 방법입니다
자신의 계정이든 다른 계정에서 말입니다
그리고 시험에 이러한 내용이 나올 것입니다
수천 명 이상의 VPC에게 서비스를 노출하고 싶을 때
무엇을 사용하느냐 묻는다면 모든 답은 PrivateLink입니다
VPC 피어링이나 인터넷 게이트웨이
NAT 또는
루트 테이블도
필요 없습니다
작동 방식은 서비스 VPC가 있고
응용 프로그램 서비스와
고객 VPC와 소비자 애플리케이션가 있습니다
서비스를 노출하려면
Network Load Balancer(NLB, 네트워크 부하 분산 장치)와 ENI 또는
Gateway load balancer(게이트웨이 부하 분산 장치)가 필요합니다
네트워크 부하 분산 장치가 더 흔합니다
이 네트워크 부하 분산기가 애플리케이션 서비스를
노출시킵니다
고객 VPC 쪽에는 ENI를
생성할 것입니다
PrivateLink를 통한 이 ENI는
NLB에 연결됩니다
그리고 AWS의 프라이빗 네트워크를
모두 통과합니다
이게 PrivateLink의 기능입니다
이 예시에서 NLB와
ENI의 연결을
확립하기 위해서는
VPC 피어링을 설정할 필요가 없습니다
정말 강력한 개념입니다
NLB가 여러 가용 영역에 있고
ENI도 마찬가지라면
(Fault tolerant)결함 감내 솔루션이 있습니다
고도의 안전성과 확장성을 확보하며
많은 설정을 필요로 하지 않습니다
결함 감내 솔루션을 갖기에
정말 좋은 방법입니다
PrivateLink는 훌륭한 솔루션입니다
예를 들어 ECS와 PrivateLink의
실제 사용법을 알려드리기 위해
설정하는 법을 알려드리자면
ECS 서비스와 다중 태스크가 있다고 해봅시다
응답을 위해 애플리케이션에 노출되어 있습니다
하지만 NLB가 필요하다는 것을 알고 있습니다
우선 NLB와
애플리케이션 부하 분산기를 연결합니다
이제 ALB는 NLB의 목표가 될 수 있기 때문입니다
Private Link는 NLB에 직접 설정될 수 있습니다
다른 VPC에겐 PrivateLink에 바로
ENI를 연결하는 것입니다
그리고 기업의 데이터 센터에는
프라이빗 연결 예를 들어
직접적인 연결이나
VPN 연결 말입니다
PrivateLink는 여기까지였습니다 즐거우셨기를 바랍니다
다음 강의에서 뵙겠습니다