AWS VPC

Joyfulbean·2022년 8월 1일
0

AWS SAP 시험

목록 보기
1/9
post-thumbnail

Regions and Availability Zones (AZs)

Region: 26
Availability Zones: 84


Local Zones

Local Zones: Available: 17
Announced: 33 cities in 27 countries.

현재 미국에서만 서비스 중이다.
AWS에서 가장 많이 사용하는 서비스들 위주로 구성 되어 있는 존이며,
EC2와 EBS가 들어가 있지만 제약적인 타입만 사용 가능하다.


VPC Overview

  • 하나의 region은 최소 3개의 AZ로 구성이 되어 있다.
  • Region 간에는 AWS 백본망으로 구성이 되어 서로 통신 가능한 상태이다.
  • 계정을 만들면 Account id 생성 되고, 서비스를 Region안에 올리기 위해서 VPC를 만든다.
  • VPC 안에 EC2나 RDS 등의 서비스를 만든다.
  • VPC 바깥에 서비스는 s3, dynamo db등의 서비스를 사용 할 수 있다. 이런 서비스 들은 기본적으로는 퍼블릭이지만, 프라이빗으로 통신하는 방법도 있다. (Regional Service)
  • IAM, Route53은 특정 리전에 속하지 않은 글로벌 서비스 이다.

Subnets and AZs

  • VPC 기본적으로 10.0.0.0/16으로 IP를 사용한다.
  • 부족하면 세컨더리 할당이 가능하다.
  • VPC를 만들면 /28까지 Subnet으로 쪼갤수 있다.
  • 서브넷을 만들때는 하나의 AZ에 하나의 서브넷을 만들어야 한다. 서브넷을 만들고 나면, 그 안에 서비스들을 띄우면 된다.

Route Tables & Internet Access

  • 서브넷 간에 통신을 위해서 Routing Table을 사용 할 수 있다.
  • 기본으로 10.0.0.0/16 local 이 생성이 된다. 이 테이블만 있으면, VPC안에서 서로 통신이 가능하고, default임으로 없앨 수 없다.
  • 서브넷 하나에는 하나의 라우팅 테이블만 존재 한다.
  • 외부 통신을 위해서는 인터넷 게이트 웨이를 만들고 VPC에 붙여야 한다. 그리고 라우팅 테이블에 0.0.0.0/0 은 igw-12345 이런식으로 게이트웨이로 전달하게 수정을 해주면 Public subnet이 된다.
  • Public IP를 할당 받는 방법은 ec2를 생성할때 자동으로 할당을 받거나, Elastic ip를 할당 받아서 사용 하는 방법이 있다.
  • 자동으로 할당 받는 퍼블릭 ip는 ec2가 실행되어 있을 때만 사용 할 수 있다. ec2가 죽으면 자동으로 release되고, 새로운 ip가 할당이 되기 때문에 Elastic ip를 사용해야한다.
  • AWS는 10.0.0.0, 10.0.0.1, 10.0.0.2, 10.0.0.3은 Reserved 이기 때문에 사용자가 사용 불가능하다.
  • VPC DHCP: DHCP 옵션셋은 TCP/IP 네트워크 상의 호스트로 설정 정보를 전달하는 DHCP 표준입니다. 일반적으로 Default 사용.

NAT Gateways

-프라이빗 서브넷에서도 인터넷 통신이 가능하게 하기 위해서는 NAT Gateway를 사용하면 된다.

NAT Gateway vs NAT Instance?
NAt Gateway는 포트 포워딩을 지원하지 않는다.


Security Groups

  • Security그룹: VPC안에 들어가 있는 서비스는 무조건 기본적으로 생성됨.
  • 기본값: EC2에서 외부로 나가는건 가능하지만, 외부에서 들어오는건 불가능
  • Inbound 룰을 추가하면, 외부에서 해당 포트로 들어 올 수 있게 된다. 이때, 룰에 다른 서비스를 레퍼런스 할 수 있다.
  • Security 그룹은 나눠서 쓸수 있다. 이렇게 하면 클러스터가 추가가 되도 수정이 필요가 없다는 장점이 있다.
  • Security group은 stateful 방화벽 이다. 어떤 트래픽을 막을래 라는 설정은 불가능하다. 나가는게 있으면 들어오는걸 자동으로 열어준다.

Network Access Control Lists (NACLs)

  • 각 인스턴스 개별이 아니라 서브넷 전체를 제한 하는 역할이다.
  • 나가는것과 들어오는걸 따로 따로 열어줘야 한다.
  • 기본적으로 INBOUND와 OUTBOUND 전부 열려 있는 상태.
  • 네트워크 ACL은 허용과 막는것 둘다 넣을 수 있다.
  • 룰 개수의 제한이 있다. (INBOUND 40개, OUTBOUND 40개)

Endpoints

크게 두가지 타입의 endpoints가 존재한다.

1) Gateway endpoints

  • S3의 프라이빗 통신을 위해서 사용한다.
  • prefix-list를 만들어서 라우팅 테이블에 적용을 해주는 서비스 이다. 서울리전의 S3의 퍼블릭 IP리스트를 주면, 이걸 프라이빗 통신이 가능하게 한다.
  • 무료 서비스 이다.

2) Interface endpoints

  • 인터페이스 타입의 endpoint.
  • Kinesis나, Dynamo DB등의 리저널 서비스와 연결을 해준다.
  • 유료 서비스이다. (트래픽 과금 + 인터페이스 사용료)
  • 장점은 대부분의 서비스를 라우팅 받아서 프라이빗 통신 가능.
  • 프라이빗 IP가 아예 할당이 됨.

VPC Flow Logs

  • VPC나 Subnet의 덤프를 다 사용 가능.
  • S3와 CloudWatch 둘다 사용 가능. 클라우드 워치가 더 비싸지만, 콘솔에서 직접 조회 가능해서 더 편리하다. S3의 경우 파일단위로 저장하고 아테나로 조회 해야 한다. 한달이상 남겨야 할때는 S3가 더 유리하다.

VPC Peering

  • 용도에 따라서 VPC를 나눌 경우, VPC간에 통신이 필요. 그럴 경우 Peering을 사용한다.
  • VPC Peering이라는 것을 생성 후, 라우팅 테이블에 각자의 vpc방향으로 가는 룰을 만들어야 한다.

Transitive Routing 불가능!!!

VPC1-VPC2-VPC3으로 연결이 되어 있을때 1에서 3으로 통신 불가능하다. 이럴경우 1과 3의 연결을 따로 맺어줘야한다.


VPN Connectivity

  • Virtual Private Gateway(VPC)와 Customer Gate way(ON PREMIS)사이를 ipsec으로 연결한다.
  • VGW를 VPC마다 만들어야한다. vgw로 라우팅 테이블에 잡아줘야 사용 가능하다.
  • 연결 방식으로 BGP나 스태틱 라우팅 사용한다. BGP를 일반적으로 더 추천한다.스태틱의 경우 AWS에서 들어오는 패스는 선택할수가 없다.
  • IPSEC을 통해서 redundant ipsec tunnels구성. 터널은 기본적으로 2개이다. bgp를 사용할 경우 한 터널에 문제가 생기면 자동으로 다른 하나로 넘어간다.

Direct Connect

  • VPN은 인터넷 환경이기 때문에 Latency가 발생한다. 그렇기 때문에 프로덕션 환경의 경우 Direct Connect 추천한다.
  • Direct Connect의 특징으로 1 or 10 Gbps(50Mbps + via partner)를 고를 수 있고, 퍼포먼스가 일정하다는 장점이 있다.
  • vpc가 늘어날때 마다 새로 bgp 세션을 맺어서 관리 해야한다.

Private VIF: 50개로 제한. VPC 안에 있는것과 통신. VGW와 연결.
Transit VIF: 1개만 만들 수 있음. TGW 연결하는 만큼 비용이 는다. S3도 트랜짓 게이트 웨이 사용해서 사용 가능.
Public VIF: 퍼블릭VIF. s3와 같은 서비스들에 필요. 퍼블릭 IP로 되어 있는 모든 AWS서비스를 사용 가능. 라우팅 테이블이 엄청 커지지만, 인터넷 안타고 서비스 사용 가능하다는 장점이 있다.

요즘은 DX Gateway를 중간에 두어 bgp세션을 하나만 맺으면 나머지 뒤에 서비스 통신 가능 한 아키텍쳐를 많이 사용하는 추세이다.


Direct Connect Gateway & Transit Gateway

두가지의 아키텍쳐를 비교해 보면 두번째가 훨씬 심플함을 알 수가 있다.

  • Transit Gateway 또는 Direct Connect Gateway를 이용해서 vpc를 한번에 관리 가능하다.
  • 트랜짓 게이트웨이가 더 비싸지만, 관리는 더 편하다.

Traffic Mirroring

  • 특정 포트로 오는 타겟 서버 등을 분석 할 수 있다.
  • 하지만 분석은 현재 제공하는 기능이 없어서 다른 3rd party 설치해서 분석해야한다.

VPC Reachability Analyzer

  • 특정 출발지부터 목적지까지 점검을 해준다.
  • 한번 룰을 만들어 두면, 다음에도 재사용 가능하다.
  • 실제 사용하는 서비스를 건들지 않고, 분석하는 툴이다.
profile
즐거움, 긍정, 열정으로 꿈을 꾸는 사람

0개의 댓글