Written by Hyojung Yoon
안녕하세요! 오늘은 AWS와 기타 클라우드 플랫폼의 기본 구성 요소인 VPC에 대해 알아보고자 합니다.
이번 가이드에서 프라이빗 클라우드가 무엇인지, 어떻게 작동하는지, 왜 클라우드 환경에서 중요한 부분을 차지하고 있는지 알아볼 예정입니다. 그럼, 지금부터 VPC에 대한 종합 가이드를 시작해 보겠습니다!
VPC란?
프라이빗 클라우드란?
프라이빗 클라우드는 단일 조직 전용 클라우드 컴퓨팅 환경입니다. 모든 클라우드 인프라에는 셀프서비스 포털을 통해 온디맨드로 프로비저닝하는 CPU 및 스토리지와 같은 기본 컴퓨팅 리소스가 있습니다. 프라이빗 클라우드에서는 모든 리소스가 분리되어 하나의 조직에서 제어할 수 있습니다. 따라서 프라이빗 클라우드는 내부 또는 기업 클라우드라고도 합니다.
Amazon VPC란?
VPC(Virtual Private Cloud, 가상 프라이빗 클라우드)는 논리적으로 독립된 고객 전용 사설 네트워크 공간입니다.
너무 어려우신가요? 그럼, 대규모 아파트 단지를 AWS 클라우드 환경이라고 가정해 봅시다.
아파트 단지는 부지가 방대하며 아파트 외에도 공동 공간, 체육관 및 수영장과 같은 수많은 시설을 가지고 있습니다. 이제 이 커다란 단지 내에 여러분을 위한 펜트하우스를 가지고 있다고 생각해 보세요. 펜트하우스에는 거실, 침실, 주방, 전용 테라스까지 여러분이 필요로 하는 모든 것이 있으며 여러분의 허락 없이는 다른 사람이 출입하거나 사용할 수 없습니다.
아파트 단지 내에 있는 이 펜트하우스는 AWS 클라우드의 VPC를 잘 나타내고 있습니다. VPC는 다른 사람의 손이 닿지 않는 곳에서 디지털 작업을 할 수 있는 안전한 전용 공간입니다. 아파트 단지(AWS 클라우드)의 펜트하우스(VPC)에는 고유한 특성이 있습니다. 다른 아파트들과는 분리가 되어있다는 점입니다. 또한, 높은 수준의 보안과 제어를 제공하여 누가 언제 집에 출입할지를 여러분이 조정할 수 있습니다.
아파트에 사는 사람들이라면 지켜야 할 기본적인 규칙이 있으며, 입주민은 정해진 규칙 내에서 자유롭게 행동할 수 있습니다. 필요에 따라 자기 집에 가구를 추가하고 재배치할 수 있습니다. 그러나 아파트 단지 내 공용 공간인 헬스장의 운동 기구를 집으로 가져올 수 없습니다. 이는 VPC 작동 방식과 유사합니다. Amazon은 클라우드에 지정된 공간을 제공하며, 정해진 규정 내에서 이 공간을 원하는 대로 구성할 수 있습니다.
다른 점은 VPC의 경우 필요에 따라 더 많은 리소스를 요청할 수 있으며, 승인되면 이 리소스는 VPC의 일부가 된다는 점입니다.
VPC의 구성 요소
1. 서브넷
서브넷(Subnet)은 하나의 네트워크가 분할되어 나눠진 작은 네트워크입니다. 각 서브넷에는 IP 주소 범위가 할당되며 네트워크 트래픽 제어를 위한 자체 정책이 있을 수 있습니다. 이를 통해 VPC를 웹 서버 또는 데이터베이스 서버 호스팅과 같은 특정 목적을 가진 개별 섹션으로 나눌 수 있습니다.
VPC 안에서는 여러 개의 서브넷을 생성할 수 있는데 각각의 서브넷은 하나의 가용 영역(Available Zone, AZ) 안에 존재해야 하며, 여러 영역으로 확장할 수 없습니다. 별도의 가용 영역에서 AWS 리소스를 시작하면 단일 가용 영역의 장애로부터 애플리케이션을 보호할 수 있습니다.
퍼블릭 서브넷은 외부와 자유로운 통신이 가능하고, 외부 인터넷 구간과 직접적으로 통신을 할 수 있는 공공 네트워크입니다. 프라이빗 서브넷은 외부에서 직접 접근할 수 없고, NAT 게이트웨이를 이용하면 내부에서 외부로의 단방향 통신만 가능합니다.
2. 라우팅 테이블과 라우터
라우팅 테이블에는 서브넷 또는 게이트웨이의 네트워크 트래픽이 전송되는 위치를 결정하는 라우팅이라는 규칙 세트가 포함되어 있습니다. VPC의 각 서브넷은 라우팅 테이블과 연결되어야 합니다. 별도로 사용자가 설정하지 않으면, VPC의 기본 라우팅 테이블과 연결됩니다. 라우팅 테이블을 수정하고, 사용자 지정 라우팅 테이블을 생성하고, 이를 서브넷과 연결하여 트래픽 흐름을 더욱 정확하게 제어할 수 있습니다.
3. 인터넷 게이트웨이 및 NAT 게이트웨이
인터넷 게이트웨이는 VPC와 인터넷 간에 통신이 가능하도록 해주는 관문이라고 할 수 있습니다. 반면 NAT(Network Address Translation, 네트워크 주소 변환) 게이트웨이는 NAT 서비스로 프라이빗 서브넷의 인스턴스가 인터넷이나 다른 AWS 서비스에 액세스할 수 있도록 허용하고, 인터넷이 해당 인스턴스와의 연결을 시작하는 것을 방지합니다.
이렇게 하면 VPC의 프라이빗 서브넷에 있는 인스턴스에 대한 안전한 아웃바운드 연결이 가능합니다 .
4. 네트워크 액세스 제어 목록과 보안 그룹
네트워크 액세스 제어 목록(Access Control List, ACL)과 보안 그룹은 VPC 내에서 네트워크 보안의 중추입니다.
네트워크 ACL은 서브넷 수준에서 특정 인바운드 또는 아웃바운드 트래픽을 허용하거나 거부합니다. 네트워크 ACL 규칙은 트래픽이 서브넷 내에서 라우팅 될 때가 아니라 서브넷에 들어오고 나갈 때 평가됩니다. 즉 허용되는 인바운드 트래픽에 대한 응답은 아웃바운드 트래픽에 대한 규칙을 따르고 그 반대의 경우에도 마찬가지입니다.
반대로 보안 그룹은 개별 리소스 수준에서 작동합니다. 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하며 포트 및 프로토콜을 기반으로 허용할 수 있는 트래픽을 지정할 수 습니다. 각 보안 그룹에는 인바운드 트래픽과 아웃바운드 트래픽에 대한 별개의 규칙 집합을 추가합니다.
VPC 사용의 이점
1. 개인정보 보호 및 보안
네트워크 인프라를 격리함으로써 VPC는 데이터가 퍼블릭 클라우드의 다른 데이터와 분리되도록 합니다. 보안 그룹 및 네트워크 액세스 제어 목록과 같은 기능을 사용하면 인바운드 및 아웃바운드 트래픽을 제어할 수 있어 애플리케이션을 더욱 안전하게 보호할 수 있습니다.
2. 맞춤형 네트워크 구성
VPC를 사용하면 비즈니스 요구 사항에 맞게 네트워크 구성을 자유롭게 사용자 정의할 수 있습니다. IP 주소 범위를 선택하고, 서브넷을 생성하고, 경로 테이블 및 네트워크 게이트웨이를 구성할 수 있습니다.
3. 제어된 트래픽 흐름
VPC는 리소스에 대한 제어된 액세스를 허용합니다. 라우팅 테이블, 인터넷 게이트웨이 및 가상 사설망(VPN) 연결을 사용하여 네트워크 내의 데이터 흐름을 지시하고 관리할 수 있습니다.
4. 확장된 IT 인프라
보안 VPN 연결을 통해 온프레미스 리소스를 클라우드 인프라에 연결하여 자체 데이터 센터의 확장으로 만들 수 있습니다. 이렇게 하면 데이터 전송이 더 원활해지고 두 환경의 이점을 모두 활용할 수 있습니다.
5. 다중 연결 옵션
VPC는 온프레미스와의 프라이빗 연결, 사무실 또는 로컬 네트워크와의 직접 연결 옵션, 인터넷을 통한 VPN 연결을 비롯한 여러 연결 옵션을 제공합니다.
VPC와 다른 클라우드 모델
클라우드 컴퓨팅에 대해 공부하면서 VPC, 퍼블릭 클라우드, 하이브리드 클라우드 및 온프레미스 환경과 같은 다양한 모델 간의 차이점을 파악하는 것이 좋습니다. 각 모델은 서로 다른 요구 사항을 충족하는 고유한 기능을 제공합니다.
퍼블릭 클라우드
퍼블릭 클라우드는 광장, 공원처럼 일반 대중에게 개방된 공유 공간으로 설명할 수 있습니다. 모든 사람이 벤치, 놀이터와 같은 공원의 리소스를 사용할 수 있으며, 한 번에 많은 사람을 수용할 수 있습니다.
퍼블릭 클라우드는 클라우드 서비스 제공자가 관리 및 운영을 해주기 때문에 물리적 서버를 구매하지 않아도 되고, 서버 운영 및 유지 보수에도 부담이 없기 때문에 비용 효율적이라는 장점을 가지고 있습니다. 그렇기 때문에 주로 수요가 유동적인 기업이나 사용자가 많은 공용 어플리케이션에 적합합니다.
프라이빗 클라우드
프라이빗 클라우드는 단독 주택처럼 한 가족이 전용으로 사용하는 건물입니다. 집 안부터 마당까지 가족이 원하는 대로 꾸미거나 관리할 수 있습니다. 그러나 이는 아파트 단지에 비해서 높은 유지 비용과 관리를 요구합니다.
프라이빗 클라우드는 독립적인 액세스 권한을 갖는 단일 고객만 독점적으로 사용할 수 있는 클라우드라고 할 수 있습니다. 조직의 인트라넷이나 데이터센터 등 데이터가 보호되어야 하는 곳에서 사용합니다. 프라이빗 클라우드는 내부적으로 운영할 수 있어 데이터와 리소스를 효율적으로 관리할 수 있다는 장점이 있습니다 .
하이브리드 클라우드
하이브리드 클라우드는 퍼블릭 클라우드와 프라이빗 클라우드의 조합으로, 두 클라우드 간에 데이터와 애플리케이션을 교환할 수 있는 기술을 통해 연결됩니다. 섬(프라이빗 클라우드)과 육지(퍼블릭 클라우드)를 연결하는 다리라고 생각하면 됩니다.
하이브리드 클라우드는 두 클라우드 컴퓨팅 모델의 장점을 결합해 보안이 요구되는 중요 데이터와 애플리케이션은 프라이빗 클라우드에서 운영하면서 비교적 부하가 적은 애플리케이션 등은 퍼블릭 클라우드에서 운영할 수 있게 합니다. 이를 통해 기업은 비용을 절감하고 비즈니스의 요구에 맞게 보안 및 컨트롤을 유지할 수 있습니다.
| VPC | 퍼블릭 클라우드(Public Cloud) | 프라이빗 클라우드 (Private Cloud) | 하이브리드 클라우드 (Hybrid Cloud) |
프라이버시 | 퍼블릭 클라우드 내의 프라이빗 공간 | 보통 | 완전히 통제됨 | 높음 |
비용 | 사용량에 따라 다르며, 프라이빗 클라우드보다 저렴함 | 종량제 모델로 저렴함 | 전용 인프라를 쓰기 때문에 비쌈 | 퍼블릭·프라이빗 클라우드 결합으로 다양함 |
확장성 | 높음 | 높음 | 낮음 ~ 보통 | 높음 |
제어 | 높음 | 낮음 ~ 보통 | 높음 | 높음 |
복잡성 | 보통 | 낮음 | 높음 | 높음 |
적용분야 | 웹, 이메일, CRM, 협업, HR | ERP, R&D, 공급망관리, 분석 | 콜센터, 원격사이트, 은행 |
마치며
VPC 아키텍처 프레임워크에서부터 퍼블릭, 프라이빗, 하이브리드 클라우드와의 세부 비교에 이르기까지 방대한 지식을 살펴보았습니다. VPC를 잘 사용하기 위해서는 VPC 기본 사항에 대한 이해뿐만 아니라, 네트워크에 대한 전반적인 이해가 필요한데요. 이번 VPC 가이드가 그 첫걸음이 되는 데 도움이 되었기를 바랍니다.
Comments