AWS

[AWS] VPC, 서브넷, AZ, 인스턴스

박경태 2024. 5. 1. 19:47

AWS VPC(Virtual Private Cloud)

AWS 클라우드에서 가상의 네트워크를 프로비저닝하고 구성할 수 있는 서비스임.

이는 AWS 리전 내의 논리적으로 격리된 가상 네트워크를 생성하여 AWS 리소스를 배치할 수 있는 환경을 제공함.

AWS VPC는 클라우드 네트워킹의 핵심 요소임.

보안, 확장성 및 관리 용이성을 제공하여 AWS 리소스를 안전하게 배포하고 운영할 수 있도록 지원함.

 

AWS VPC 특징

1. 논리적 격리

VPC는 논리적으로 격리된 네트워크 공간을 제공함.

여러 고객이 같은 하드웨어 리소스를 공유하지만 서로의 네트워크 간에 격리되어 있음.

 

2. 사용자 정의

VPC를 사용하여 IP 주소 범위, 서브넷, 라우팅 테이블, 네트워크 게이트웨이 등을 사용자 정의할 수 있음.

 

3. 네트워크 접근 제어

보안 그룹과 네트워크 ACL을 사용하여 네트워크 트래픽을 제어하고 보호할 수 있음.

 

4. 인터넷 접속

인터넷 게이트웨이를 통해 VPC 내의 인스턴스가 인터넷과 통신할 수 있음.

 

5. VPN 연결

가상 프라이빗 네트워크와 기업 데이터 센터 또는 온프레미스 환경을 연결하기 위해 VPN 연결을 설정할 수 있음.

 

6. Direct Connect 연결

전용 네트워크 연결을 통해 기업 데이터 센터 또는 온프레미스 환경을 VPC에 연결할 수 있음.

 

7. 서브넷

VPC를 여러 서브넷으로 분할하여 가용 영역에 걸쳐 인스턴스를 배치할 수 있음.

이는 가용성과 확장성을 향상시키는 데 도움이 됨.

 

8. 가상 프라이빗 게이트웨이(VPN 연결용)

VPC와 온프레미스 네트워크 간의 VPN 연결에 사용됨.

 

AWS 서브넷 (Subnet)
VPC(가상 프라이빗 클라우드) 내에서 IP 주소 범위를 정의하고, VPC 내의 리소스들을 구분하는 데 사용되는 네트워크의 일부임.

서브넷은 특정 가용 영역(Availability Zone)에 속하며, 해당 영역 내에서 리소스를 배치할 수 있도록 함.

서브넷을 사용하면 VPC 내의 리소스들을 더욱 세분화하고 관리할 수 있음.

예를 들어, 웹 서버를 실행하는 인스턴스를 포함하는 퍼블릭 서브넷과 데이터베이스를 실행하는 인스턴스를 포함하는 프라이빗 서브넷을 구성할 수 있음.

이를 통해 보안 및 네트워크 관리를 효율적으로 수행할 수 있으며, 가용성과 성능을 향상시킬 수 있음.

 

AWS 서브넷 특징

1. IP 주소 범위

각 서브넷은 고유한 IP 주소 범위를 가지며, VPC의 IP 주소 범위 내에 속함.

서브넷은 CIDR(Classless Inter-Domain Routing) 블록을 사용하여 정의됨.

 

2. 가용 영역

서브넷은 특정한 가용 영역에 연결돼 있음.

가용 영역은 AWS의 데이터 센터를 나타내며, 서로 독립적인 전원 공급 및 네트워크 인프라를 가지고 있음.

 

3. 라우팅 테이블

각 서브넷은 VPC의 라우팅 테이블에 연결되어 있음.

이를 통해 서브넷 간 통신 및 인터넷 연결이 가능함.

 

4. 보안 그룹 및 네트워크 ACL

서브넷은 보안 그룹(Security Group)과 네트워크 액세스 제어 목록(Network Access Control List, ACL)을 통해 트래픽을 제어하고 보호할 수 있음.

 

5. 퍼블릭 및 프라이빗 서브넷

서브넷은 인터넷에 직접 연결되는 퍼블릭 서브넷과 인터넷에 직접 연결되지 않는 프라이빗 서브넷으로 나뉨.

퍼블릭 서브넷은 퍼블릭 IP 주소를 가질 수 있으며, 프라이빗 서브넷은 퍼블릭 IP 주소를 가지지 않음.

 

AWS 가용 영역 (Availability Zone, AZ)

AWS의 데이터 센터의 물리적 위치를 나타냄.

각 가용 영역은 독립적인 전원 공급 및 네트워크 인프라를 가지고 있음.

서로 다른 가용 영역 간에는 고가용성 및 내결함성을 제공하기 위해 격리되어 있음.

가용 영역을 활용하면 고가용성 및 내결함성을 제공하는데 도움이 됨.

예를 들어, 애플리케이션을 여러 가용 영역에 배포하면 하나의 가용 영역에서 장애가 발생했을 때 다른 가용 영역으로 트래픽을 자동으로 전환하여 서비스의 지속성을 보장할 수 있음.

AWS는 전 세계에 여러 개의 가용 영역을 보유하고 있으며, 이를 통해 고객은 지리적으로 분산된 데이터 센터를 활용하여 서비스를 구성할 수 있음.

이는 성능 최적화, 지리적 가용성 및 규정 준수를 달성하는 데 도움이 됨.

 

가용 영역 특징

1. 독립적인 시설

각 가용 영역은 물리적으로 다른 시설에 위치해 있음.

이는 자연 재해나 인프라 문제와 같은 이벤트가 한 가용 영역에 영향을 미치더라도 다른 가용 영역은 영향을 받지 않도록 함.

 

2. 독립적인 전원 공급

각 가용 영역은 독립적인 전원 공급 시스템을 가지고 있어 전원 장애가 다른 가용 영역으로 확산 되지 않음.

 

3. 독립적인 네트워크

각 가용 영역은 독립된 네트워크 인프라를 가지고 있어 네트워크 문제가 다른 가용 영역으로 확산되지 않음.

 

4. 지연 시간 최소화

가용 영역은 지연 시간을 최소화하기 위해 도시 간에 고르게 분산되어 있음.

 

AWS 인스턴스 배포

인스턴스 배포는 가상 컴퓨팅 리소스를 프로비저닝하고 구성하는 과정을 의미함.

이를 통해 사용자는 필요에 따라 가상 서버를 생성하고 운영할 수 있음.

사용자는 AWS 클라우드에서 필요에 따라 가상 서버를 배포하고 운영할 수 있음.

이는 유연성과 확장성을 제공하며, 인프라를 효율적으로 관리할 수 있는 장점을 가지고 있음.

 

1. 인스턴스 유형 선택

AWS에서는 다양한 인스턴스 유형을 제공함.

이는 CPU, 메모리, 스토리지, 네트워크 처리량 등에 따라 다양한 성능과 구성을 가지고 있음.

사용자는 자신의 요구 사항에 맞는 인스턴스 유형을 선택함.

 

2. AMI(Amazon Machine Image) 선택

인스턴스를 시작하기 위해 사용자는 AMI를 선택해야 함.

AMI는 운영 체제와 필요한 애플리케이션 소프트웨어를 포함한 가상 머신 이미지임.

사용자는 AWS에서 제공하는 AMI를 사용하거나 자체 AMI를 생성할 수 있음.

 

3. 인스턴스 구성

사용자는 인스턴스 구성을 정의함.

이는 인스턴스의 크기, 네트워크 설정, 보안 그룹, 스토리지 구성 등을 포함함.

 

4. 가용 영역 선택

인스턴스를 시작할 때 사용자는 배포하고자 하는 가용 영역을 선택해야 함.

AWS는 각 리전 내에 여러 가용 영역을 가지고 있으며, 사용자는 가용 영역 간의 고가용성을 보장하기 위해 인스턴스를 여러 가용 영역에 분산 배치할 수 있음.

 

5. 키 페어 및 보안 설정

SSH 키 페어 또는 RDP 암호를 사용하여 인스턴스에 액세스 할 수 있도록 설정함.

보안 그룹을 구성하여 인바운드 및 아웃바운드 트래픽을 제어함.

 

6. 인스턴스 시작

모든 설정이 완료되면 인스턴스를 시작함.

이를 통해 사용자는 가상 서버를 프로비저닝하고 사용할 수 있음.

 

7. 인스턴스 모니터링 및 관리

인스턴스가 실행되면 사용자는 AWS 콘솔, CLI 또는 API를 사용하여 인스턴스를 모니터링하고 관리할 수 있음.

이는 인스턴스의 성능, 가용성, 비용 등을 실시간으로 추적하고 관리하는 데 도움이 됨.

 

AWS 인스턴스 배포 종류
AWS에서는 다양한 방법으로 인스턴스를 배포할 수 있음.

사용자의 요구 사항, 성능, 가용성 및 관리 용이성을 고려해서 선택해야 됨.

다양한 인스턴스 배포를 통해 사용자는 자신의 요구 사항에 맞게 유연하게 인스턴스를 관리하고 비용을 최적화할 수 있음.

 

1. 온디맨드 인스턴스 (On-Demand Instances)

온디맨드 인스턴스는 필요한 만큼의 용량을 제공하는 가장 간단한 방법임.

시간 제한 없이 사용 가능하며, 시간당 요금을 지불함.

유연성이 높고, 언제든지 인스턴스를 시작하거나 중지할 수 있음.

 

2. 예약 인스턴스 (Reserved Instances)

예약 인스턴스는 일정 기간 동안 특정 유형의 인스턴스를 예약하는 방식임.

예약 인스턴스를 예약하면 할인된 요금을 받게 되며, 사용자는 일정한 용량을 보장받음.

인스턴스 유형, 가용 영역, 인스턴스 크기 등을 예약할 수 있음.

 

3. 스팟 인스턴스 (Spot Instances)

스팟 인스턴스는 AWS의 미사용 용량을 이용하여 저렴한 가격에 인스턴스를 실행하는 방법임.

가격은 현재 시장 가격에 따라 변동되며, 요구가 높을 때는 인스턴스가 종료될 수 있음.

일시적인 작업이나 가격에 민감한 작업에 적합함.

 

4. 온프레미스 인스턴스 (On-Premises Instances)

온프레미스 인스턴스는 사용자의 온프레미스 데이터 센터에서 AWS 클라우드로 확장성을 제공하는 방법임.

AWS 서비스 중 하이브리드 환경을 지원하는 서비스들을 이용하여 온프레미스와 AWS 간에 연결할 수 있음.

 

5. Lambda 함수 (Lambda Functions)

AWS Lambda는 서버리스 컴퓨팅 서비스로, 코드 실행을 위해 인프라를 관리할 필요가 없음.

코드가 호출될 때만 비용이 청구되며, 자동으로 확장되므로 스케일링에 대한 걱정이 없음.