Search
Duplicate

VPC(네트워크) 환경 구성하기

날짜
2021/07/26
작성자
태그
개념정리
AWS
VPC
Series
AWS 입문하기!
완료

1. 서론

이전 글에서 계정을 생성했으니 이제 본격적으로 AWS를 사용해보겠습니다.
이번 글에서는 VPC를 비롯한 AWS에서 사용되는 개념들을 설명하고 AWS 대부분 서비스들의 기반이 되는 VPC 환경을 생성해 보겠습니다.
Cloud Service(AWS)가 낯선 분들도 최대한 이해하기 쉽게 설명하려다보니 사전적의미 혹은 AWS가 내리는 정의와 조금 다르게 설명될 수 있습니다.

2. VPC 관련 개념들

What is VPC ?

VPC (Virtual Private Cloud)를 AWS에선 이렇게 말하고 있습니다.
사용자의 AWS 계정 전용 가상 네트워크입니다.
가상 네트워크,,, 감이 잘 안 오시나요? 쉽게 말해서 AWS에 나만의 공간을 만드는거에요.
이번 프로젝트에서는 클라우드 환경에 컴퓨터(웹 서버)를 만들건데 내 의지와 상관없이 이 컴퓨터에 다른 사람들이 접근하면 곤란하겠죠? 그래서 AWS를 사용하는 것은 동일하지만 사용자마다 각각의 격리된 공간이 필요합니다. (우선은 간단하게 여러분 PC가 강남 한복판에 있는것이 아닌 격리된 각자의 집에 있는거라고 생각하겠습니다. 조금더 자세한 설명이 보고싶다면 → 여기)

VPC에 필요한 개념들

이 이미지를 참고하면서 아래 개념들을 읽어주세요.
리전(Region)
AWS에서 가장 큰 지역의 단위에요. 서울 리전! 서울특별시라고 생각합시다.
가용영역(Availability Zone 이하 AZ)
리전을 이루는 데이터 센터의 모음이에요. 서울을 이루는 자치구라고 생각하시면 됩니다. (강남구,관악구,은평구 ...) 즉 한 개 이상의 AZ가 모여서 리전을 구성합니다.
이 AZ들은 하나 이상의 데이터 센터로 이루어져 있어요. (강남구를 이루는 개포동, 대치동 ...)
IPv4 CIDR
사설 IP 대역이라고도 불러요.
VPC는 사용자가 원하는 주소(IP CIDR)를 지정해서 만들 수 있어요.
이 이미지를 참고하면서 아래 개념들을 읽어주세요.
Subnet
VPC를 사용자의 목적에 맞게 자른것입니다. 용도에 맞게 집의 공간을 나누는 것 처럼요. 최종적으로 이 공간에 PC가 위치해요.
기본적으로 서로다른 VPC 간에는 (VPC-1 VPC-2) 가는 길을 모르고, VPC 내부의 서로다른 Subnet 간에는 (Subnet-1 Subnet-2) 가는 길을 알고있습니다. (Routing Table을 생성하면 Local 정책이 이 내용이에요.)
VPC CIDR와 Subnet에 대한 설명은 추후에 좀 더 자세하게 다루겠습니다. 우선은 VPC라는 집을 하나 이상의 Subnet으로 나눈것이라고 이해하고 넘어갑시다.
Routing Table (RTB)
모르는 목적지에 갈 때 네비게이션 역할을 해줍니다. Routing 설정 없이는 모르는 목적지에 갈 수 없어요.
이런 Routing 정보들을 모아둔 곳을 Routing Table이라고 합니다.
라우팅의 가장 중요한 개념은 내가 목적지에 가기위해서 어디로 가야할까 입니다. 집에서 편의점을 간다고 순간이동하는게 아니고 현관문을 거치겠죠? 라우팅 정책은 집에서 편의점을 갈 땐 현관문으로 이동해! 와 유사하게 생성합니다.
조금 더 자세한 Routing 설명은 → 여기에서
Internet Gateway (IGW)
VPC에서 인터넷으로 가기 위해 꼭 필요한 문(Gate)입니다. (집 현관문이라고 생각합시다)
NAT
이번 프로젝트에서는 다루지 않지만 꼭 알아야하는 개념이에요!
통상적으로 외부(인터넷)에서 접근할 수 없는 Subnet을 Private Subent 외부(인터넷)에서 접근할 수 있는 Subnet을 Public Subnet 이라고 불러요.
외부에서 접근은 못하지만, 내부에서 외부로 나가고 싶을 때에는 NAT라는 것을 경유해서 나가야합니다.
이 외에도 VPN, Endpoint 등 다양하고 중요한 개념들이 많지만 이번 시리즈에서는 다루지 않는 개념이고 이미 충분히 머리가 어지러울것 같아서 다음에 다루겠습니다.
위 설명으로 VPC와 그 구성요소의 내용들이 무엇인지 대략적인 감이 잡혔다면 좋겠습니다. 이제 직접 VPC를 구성하면서 위에 적힌 개념들의 상관관계를 느껴보도록 할게요.

3. VPC 인프라 구축

서울 리전인지 확인하고 시작합시다.
리전은 이렇게 변경할 수 있어요. 제 콘솔처럼 AWS 상단 바의 색을 리전마다 다르게 설정할 수 있어요 → 이 링크를 참고해서요.(AWS 콘솔 업데이트로 막힘)
제 화면과 다르게 보이면 New VPC Experience가 체크되어있는지 확인해보세요.
사실 AWS 계정을 생성하면 모든 Region에 Default VPC 환경이 구축되어있습니다. 콘솔에서 VPC 서비스로 이동하면 확인할 수 있어요.
VPC, Subnet, Routing Table, Internet Gateway 등 이번 시리즈에서 필요한 모든 리소스가 Default로 제공됩니다.
하지만 저희는 백지 상태에서 VPC를 구성해보며 그 흐름을 느껴보고자 합니다.

VPC & 네트워크 환경 구성

VPC 콘솔로 이동해서 실습을 진행하겠습니다.
상단 검색창에서 VPC를 입력하여 이동한다.
VPC 생성
Subnet 생성
IGW 생성
RTB 생성

4. 결론

이제 AWS에서 서비스들을 사용하기 위한 최소한의 사전작업을 마쳤습니다.
이번 시리즈의 최종 목표이면서 가장 많이 사용되는 EC2(가상 서버)가 위치할 공간을 생성한 것이죠.
이번 포스팅의 핵심을 3줄로 정리해봤습니다.
1. VPC는 AWS라는 퍼블릭 클라우드 서비스 내부에 존재하는 나만의 개인 네트워크 공간입니다. 2. 이번 포스팅에서 만든 네트워크환경은 Internet과 통신이 가능한 Public Subnet입니다. 3. IGW, RTB 설정 및 연결을 해주지 않으면 VPC 내부 Internet간 통신이 이뤄지지 않습니다!
다음 포스팅에서는 드디어 클라우드 환경을 사용중이라는걸 체감할 수 있도록 EC2를 생성하고 접속해보겠습니다.