Amazon Virtual Private Cloud(Amazon VPC)를 사용하면 정의한 논리적으로 격리된 가상 네트워크에서 AWS 리소스를 시작할 수 있습니다. 이 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 매우 유사합니다.

VPC (Virtual Private Cloud)는 AWS 클라우드에서 고립된 네트워크 환경을 제공하여, 리소스를 더욱 안전하고 효율적으로 관리할 수 있게 해줍니다. VPC를 사용하는 주요 이유는 다음과 같습니다:
VPC는 사용자에게 독립된 네트워크 환경을 제공하여, 다른 AWS 고객의 리소스와 분리된 환경에서 리소스를 운영할 수 있게 해줍니다. 이를 통해 공용 네트워크에서 발생할 수 있는 보안 문제를 방지하고, 네트워크 트래픽을 완전히 제어할 수 있습니다.
보안 그룹(Security Groups) 및 네트워크 ACL(Access Control Lists)을 이용해 세밀한 트래픽 제어가 가능합니다. VPC 내부 리소스에 대해 인바운드 및 아웃바운드 트래픽을 정의하고, 외부에서의 접근을 제한할 수 있습니다.
VPC를 통해 서브넷을 나누어, 중요한 리소스(예: 데이터베이스)는 프라이빗 서브넷에 배치하고, 공용 리소스(예: 웹 서버)는 퍼블릭 서브넷에 배치하는 방식으로 보안을 강화할 수 있습니다.
VPC에서는 프라이빗 IP 주소와 퍼블릭 IP 주소를 유연하게 관리할 수 있습니다. 이를 통해 VPC 내 리소스들 간의 통신을 사설 IP로 처리하고, 외부와의 통신은 퍼블릭 IP를 사용하여 인터넷과 연결할 수 있습니다.
또한, CIDR 블록을 지정하여 IP 주소 범위를 설정하고, 서브넷을 나누어 효율적으로 IP를 관리할 수 있습니다.
VPC를 사용하면 라우팅 테이블을 설정하여 트래픽이 올바른 경로로 흐를 수 있도록 제어할 수 있습니다.
NAT 게이트웨이나 인터넷 게이트웨이를 설정하여 인터넷과 연결할 수 있으며, VPN 연결을 통해 온프레미스 환경과 AWS를 안전하게 연결할 수 있습니다.
VPC Peering을 사용하여 두 VPC 간에 안전한 통신을 설정하거나, AWS Transit Gateway를 이용해 다수의 VPC를 통합할 수 있습니다.
VPC는 Lambda와 같은 서버리스 서비스와도 통합할 수 있습니다. Lambda 함수가 VPC 내의 리소스와 통신할 수 있도록 구성하여 보안 환경을 유지할 수 있습니다.
VPC는 AWS에서 제공하는 강력한 네트워크 격리 및 보안 기능을 통해, 사용자가 클라우드 리소스를 안전하고 효율적으로 운영할 수 있게 해줍니다. 보안, IP 관리, 연결 및 네트워크 제어 측면에서 필수적인 역할을 하며, 복잡한 애플리케이션 및 기업 환경에서 요구되는 유연성과 확장성을 제공합니다.