EC2 인스턴스가 인터넷에 액세스하지 못하는 문제
주제
Internet Gateway(IGW)를 VPC에 연결했지만, EC2 인스턴스가 여전히 인터넷에 액세스할 수 없는 문제 발생
부연 설명
정답) 보안그룹이 network in을 허용하지 않았다.
- 보안 그룹은 기본적으로 상태를 유지하는(stateful) 방식을 사용한다.
- 즉, 아웃바운드 트래픽이 허용되면 그에 대한 응답 트래픽(인바운드 트래픽)은 자동으로 허용된다.
EC2 인스턴스가 인터넷에 액세스할 수 없는 예상 원인 3가지
- 서브넷의 라우팅 테이블이 IGW를 가리키고 있지 않음
- 각 서브넷에는 라우팅 테이블이 있어야 하며, 이 테이블에 IGW로의 경로(`0.0.0.0/0`가 설정된 IGW) 설정이 있어야 한다. 해당 경로가 없으면, 서브넷 내 인스턴스가 인터넷에 접근할 수 없다.
- EC2 인스턴스에 퍼블릭 IP가 할당되지 않음
- EC2 인스턴스가 퍼블릭 서브넷에 있더라도 퍼블릭 IP 주소가 할당되지 않으면 인터넷에 직접 접근할 수 없다.
- 퍼블릭 IP 주소는 인터넷 통신을 위한 필수 조건이다.
- NACL 또는 SG가 outbound traffic을 차단하고 있음
- 서브넷의 NACL이나 EC2 인스턴스의 SG가 outbound traffic (ex. HTTP, HTTPS)에 대한 규칙을 차단하고 있는 경우 인터넷 접근이 불가능하다. 아웃바운드 규칙을 허용하는지 확인해야 한다.
AWS 내 VPC CIDR 범위 설정
주제
VPC의 CIDR 범위를 선택할 때, 나중에 온프레미스 네트워크(회사 네트워크 및 위성 사무실)와 연결할 계획이라면 CIDR 범위가 중복되지 않도록 선택해야 한다. 중복되는 IP 범위는 VPC와 온프레미스 네트워크 간의 라우팅 충돌을 일으킬 수 있기 때문에 피해야 한다.
부연 설명
정답) `172.16.0.0/16`
문제에 따르면, 이미 회사 네트워크로 `10.0.0.0/8`을, 위성 사무실 네트워크로 `192.168.0.0/16`을 사용하고 있다. 따라서 이와 겹치지 않는 범위로 CIDR를 선택해야 한다. 그럼 `172.16.0.0/12`와 `172.16.0.0/16`의 선택지가 남는다.
적합한 IP 주소를 구하기 위한 선정 기준으로는 필요한 IP 주소 수, 네트워크 관리 및 확장 용이성, 향후 네트워크 계획 등을 고려해야 한다.
- 필요한 IP 주소 수
- 대부분의 VPC는 수천에서 수만 개의 IP 주소면 충분하다. `172.16.0.0/16`의 약 65,536개의 IP 주소는 일반적인 AWS 인프라의 요구 사항을 충족한다.
- 네트워크 관리 및 확장성
- 작은 CIDR 범위를 선택하면 더 작은 네트워크 세그먼트로 세분화하기 쉬워진다.
- `/12` 같은 큰 범위를 선택할 경우, 다른 네트워크와 연결할 때 IP 충돌 가능성이 높아지며, IP 공간을 비효율적으로 사용할 가능성이 높아진다.
- 향후 네트워크 계획
- `/12` 범위는 아주 큰 네트워크로, 여러 VPC와 연결하려는 경우 불필요한 IP 공간 낭비가 발생할 수 있다. 보통은 작은 범위(`/16` 같은)를 선택하고, 필요한 경우 다른 VPC에 대해 다른 CIDR를 할당하는 것이 적합하다.
NAT Gateway
주제
프라이빗 서브넷의 EC2 인스턴스에 인터넷 엑세스를 제공하면서 관리 부담을 최소화하고 자동 확장에 적합한 솔루션
부연 설명
정답) NAT Gateway
- NAT Gateway는 프라이빗 서브넷에 있는 인스턴스가 인터넷에 액세스할 수 있도록 하면서도 외부에서 직접 액세스할 수 없도록 하는 관리형 서비스이다. NAT Gateway는 AWS에서 관리되므로, 설정이 간단하고 자동 확장 및 고가용성을 제공한다.
- 장점
- 자동 확장
- 관리 부담 감소
- 고가용성
- 보안
NAT Gateway vs. NAT instance
- NAT Gateway
- AWS 관리형 서비스로, 고가용성과 자동 확장을 제공하여 관리가 필요하지 않다.
- 비용은 더 높을 수 있지만 안정성과 성능 면에서 우수하다.
- NAT Instance
- 사용자가 관리해야 한다.
- 유연성이 있지만 고가용성이나 자동 확장이 없고, 관리 작업이 더 많이 필요하다.
NAT Gateway | NAT Instance | |
가용성 | - 고가용성을 제공한다. - 각 AZ에서 중복성을 통해 구현되며, 영역 독립적인 아키텍처를 위해 각 AZ에 NAT 게이트웨이를 생성할 수 있다. |
스크립트를 사용하여 인스턴스 간 장애 조치를 관리해야 한다. |
대역폭 | 최대 100 Gbps 자동 확장 가능 | 인스턴스 유형의 대역폭에 따라 다르다. |
유지보수 | AWS에서 관리. 유지보수 필요 X | 사용자가 관리해야 함. |
성능 | NAT 트래픽 처리를 위해 소프트웨어가 최적화됨 | NAT 역할 수행을 위해 구성된 AMI 사용 |
비용 | 사용 중인 NAT Gateway 수, 사용 기간, 데이터 전송량에 따라 비용이 청구됨 |
사용 중인 NAT 인스턴스 수, 사용 기간, 인스턴스 유형과 크기에 따라 비용이 청구됨 |
유형/크기 | 고정됨 | 예측된 워크로드에 따라 인스턴스 유형과 크기 선택 |
Public IP 주소 | Elastic IP 주소 선택 | Elastic IP 또는 Public IP 주소 사용 가능 |
Priavte IP 주소 | 게이트웨이 생성 시, 서브넷 IP 주소 범위에서 자동 선택 | 인스턴스 시작 시, 서브넷의 IP 주소 범위에서 특정 프라이빗 IP 주소 할당 |
보안 그룹 | 보안그룹 연결 불가 | 보안그룹 연결 가능 |
NACL | NAT Gateway의 서브넷 트래픽 제어로 사용 | NAT Instance의 서브넷 트래픽 제어 위해 사용 |
Flow logs | 트래픽 캡처용 | |
Port Forwarding | 지원하지 않음 | 수동으로 구성해야 함 |
Bastion servers | 지원하지 않음 | 사용 가능함 |
IP 단편화 | UDP 프로토콜만 지원 | UDP, TCP 및 ICMP 프로토콜 모두 지원 |
AWS Direct Connect
주제
기업 데이터 센터로부터 AWS 까지 500 Mbps 의 전용선 연결(Direct Connect connection)을 구축하고자 하는 상황
부연 설명
AWS Direct Connect는 전용 네트워크 연결을 통해 온프레미스 데이터 센터와 AWS 네트워크 간에 안정적이고 고대역폭의 연결을 제공한다. Direct Connect를 설정하는 방법에는 두 가지 유형이 존재한다.
Dedicated Connection (전용 연결)
- AWS와 협력하는 네트워크 공급자를 통해 1 Gbps, 10 Gbps, 또는 100 Gbps의 고정된 대역폭을 제공한다.
- 1 Gbps 이상의 연결이 필요할 때 적합하다
- 500 Mbps 같은 낮은 대역폭을 지원하지 않는다.
Hosted Connection (호스팅 연결)
- AWS 파트너 네트워크 (APN) 제공업체를 통해 설정되는 연결로, 50 Mpbps 부터 최대 10 Gbps 까지 다양한 대역폭을 지원한다.
- 500 Mbps 같은 특정 대역폭 요구 사항을 충족하기 적합하다.
- 더 작은 대역폭 요구 (ex. 50 Mbps, 100 Mbps 등)에도 적합하며 유연성이 더 크다
정리하면, 500 Mbps Direct Connect 연결을 설정하려면, Hosted Connection이 적합하다.
AWS Direct Connect와 Direct Connect Gateway
주제
AWS Direct connect 연결을 통해 기업 데이터 센터와 AWS 계정 내 VPC A 간의 연결이 설정된 상황에서, 다른 AWS 리전에 있는 VPC B에 대한 액세스를 설정하는 방법
부연 설명
정답) 다른 리전에 있는 VPC B에 액세스하려면, AWS Direct Connect Gateway를 사용하여 Direct Connect 연결을 확장해야 한다.
- AWS Direct Connect Gateway
- Direct Connect Gateway는 AWS Direct Connect 연결을 여러 VPC 및 여러 리전에 걸쳐 확장할 수 있는 기능을 제공한다.
- 이는 기업 데이터 센터와 여러 리전의 VPC 간에 전용 네트워크 연결을 설정하는 데도 사용할 수 있다.
- VPC A와 VPC B 모두 Direct Connect Gateway 에 연결하여 단일 Direct Connect 연결을 통해 두 리전에 있는 VPC에 액세스할 수 있다.
- 다른 옵션에 대한 설명
- VPC Peering 활성화
- 리전 간 VPC 피어링을 사용할 수 있지만, 비용과 복잡성이 증가하고 Direct Connect의 이점을 살리지 못함.
- Customer Gateway 사용
- Customer Gateway는 AWS와 온프레미스 네트워크 간의 VPN 연결 설정에 사용된다.
- 이는 AWS Direct Connect 대신, 인터넷을 통해 VPN으로 보안을 강화한 네트워크 연결을 제공한다.
- NAT Gateway 사용
- NAT Gateway는 private subnet에서 인터넷 또는 AWS 외부 리소스에 대한 outbound 트래픽을 허용하는 데 사용된다. Private subnet에 있는 인스턴스가 인터넷에 접근하려면 NAT Gateway를 경유하여 나가게 된다.
- VPC Peering 활성화
VPC Endpoints
VPC Endpoint에는 두 가지 유형이 존재한다 : Gateway Endpoint & Interface Endpoint
Gateway Endpoint
Gateway Endpoint는 특정 AWS 서비스에 대한 전용 엔드포인트를 제공하여 인터넷을 거치지 않고 프라이빗하게 통신할 수 있게 만든다.
Gateway Endpoint를 사용할 수 있는 두 가지 AWS 서비스는 Amazon S3 & DynamoDB 이다.
Amazon S3와 DynamoDB는 VPC와 서비스 간에 프라이빗 경로를 제공하는 Gateway Endpoint를 통해 접근할 수 있다. 이를 통해 데이터가 인터넷을 거치지 않고 AWS 네트워크 내부에서 안전하게 전송된다.
Interface Endpoint
Interface Endpoint는 다른 많은 AWS 서비스에 대해 사용할 수 있으며, 이는 VPC와 해당 인터페이스 간의 전용 인터페이스를 제공하는 방식이다.
VPC Peering
주제
VPC A와 VPC B 사이에 VPC Peering이 설정되었고, VPC A의 라우팅 테이블이 업데이트 되었지만 EC2 인스턴스 간의 통신이 되지 않는 문제 발생
부연 설명
정답) VPC B의 라우팅 테이블이 업데이트 되지 않았기 때문이다.
- 위 문제 상황의 경우 트래픽이 한 방향으로만 흐를 수 있어 통신이 불가능하다.
- VPC Peering은 두 VPC 간에 트래픽을 교환할 수 있는 비공개 연결을 제공한다. 그러나 VPC Peering만 설정한다고 해서 두 VPC 간에 자동으로 통신이 가능한 것은 아니다. 각 VPC의 라우팅 테이블이 서로를 가리키도록 올바르게 구성되야 한다.
'자격증 공부 > AWS SysOps Administrator - Associate' 카테고리의 다른 글
AWS SysOps 4회차 실전 문제 풀이 (2) | 2024.10.04 |
---|---|
AWS SysOps 3회차 실전 문제 풀이 (1) | 2024.09.18 |
AWS SysOps Administrator - Security and Compliance for SysOps (1) | 2024.08.23 |
AWS SysOps 2 회차 실전 문제 풀이 (0) | 2024.08.15 |
AWS SysOps Administrator - Monitoring and Auditing (1) | 2024.08.08 |