DevOps - (VPC) AWS 네트워킹의 동작원리2

현시기얌·2021년 9월 6일
0

DevOps

목록 보기
12/16

NAT(Network Address Translation) instance/gateway

ex) 보안상에 중요한 것들을 주로 Private Subnet에 저장한다. 때문에 MySQL, MariaDB, MongoDB 같은 데이터베이스들도 Private Subnet에 저장되는데 문제는 이런 데이터베이스들을 다운받으려면 인터넷이 필요하다.
그리고 다운을 받았다 하더라도 최신버전으로 업데이트를 할려면 역시나 인터넷이 필요하다.
하지만 Private Subnet은 외부 인터넷과 차단된 상태이다.
이렇듯 Private Subnet이라도 인터넷과의 연결이 종종 필요한 경우가 생긴다.

이렇게 Private Subnet에서 인터넷과의 연결이 필요할 때는 우회를 통해서 인터넷과 연결을 하는데
그 방법중에 하나가 위에 그림처럼 Private Subnet에서 Pulbic Subnet으로 트래픽을 보낸다음에 Public Subnet에서 IGW를 통해 인터넷과 연결하는 방법이다.

조금 더 자세히 설명하자면
Private Subnet에 있는 EC2에서 MySQL을 다운받고 싶다.
이 때 EC2 에서는 Public Subnet으로 트래픽을 보낸다.
그리고 Public Subnet은 IGW를 통해 인터넷과 연결해서 MySQL을 다운 받는다.
이 때 Public Subnet에서 이러한 역할들을 하는 객체들이 바로
NAT GatewayNAT instance 이다.

NAT instance

Public Subnet 에 있는 EC2 서버로써 Private Subnet에서 인터넷 연결이 필요할 때 도와주는 역할을 한다.

NAT Gateway

AWS에서 우회에 특화된 서비스를 제공하기 위해 만든 GateWay

엄밀히 말하자면 EC2에서 NACL을 지나 RouteTable로 가서 Router에서 Public Subnet으로 트래픽을 보내 RouteTable을 거치고 NACL을 거쳐 NAT gateway로 가게 된다.
그런 다음에 Nat gateway에서 다시 NACL을 지나 RouteTable을 지나 IGW를 통해 인터넷과 연결한다.
인터넷을 통해 전달 받은 데이터를 Nat Gatway는 다시 NACL을 지나 Route Table을 지나 Router를 통해 EC2에게 전달한다.

Bastion Host

  • Private Instance에 접근하기 위한 수단
  • Public Subnet 내에 위치하는 EC2

인터넷에 있는 관리자가 Private Subnet에 있는 다양한 인스턴스들을 조작하고 싶다면
Private Subnet에 접근해야 한다.
하지만 Private Subnet은 격리되어있는 공간이기 때문에 접근하기 쉽지 않다.
이때 Public Subnet에 있는 Bastion Host를 통해 인터넷에서 private Subnet으로 접근할 수 있다.

콘솔을 통해 Bastion Host에 접근해 Bastion Host에서 SSH 접근을 통해 Private Subnet으로 접근가능하다.

VPC endPoint

  • AWS의 여러 서비스들과 VPC를 연결시켜주는 중간 매개체
    • AWS에서 VPC 바깥으로 트래픽이 나가지 않고 AWS의 여러 서비스를 사용하게끔 만들어주는 서비스
    • Private Subnet 같은 경우는 격리된 공간인데, 그 상황에서도 AWS의 다양한 서비스들(S3, DynamoDB, Athena 등) 연결할 수 있도록 지원하는 서비스
  • Interface EndPoint : Private IP를 만들어 서비스로 연결해줌(SQS, SNS, Kinesis, Sagemaker 등 지원)
  • GateWay EndPoint : 라우팅 테이블에서 경로의 대상으로 지정하여 사용(S3, DynamoDB 지원)

Interface EndPoint

Gateway EndPoint

VPC 엔드포인트를 통해 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결을 필요로 하지 않고 AWS Private Link 구동 지원 AWS 서비스 및 VPC 엔드포인트 서비스에 비공개로 연결할 수 있다.
VPC 인스턴스는 서비스의 리소스와 통신하는데 퍼블릭 IP주소를 필요로 하지 않는다.
VPC와 기타 서비스 간의 트래픽은 Amazon 네트워크를 벗어나지 않는다.

profile
현시깁니다

0개의 댓글