-
Notifications
You must be signed in to change notification settings - Fork 2
VPC(Virtual Private Cloud) 학습 정리
GWANGHYEON KIM edited this page Dec 3, 2024
·
2 revisions
- VPC(Virtual Private Cloud)는 클라우드 내에서 구축할 수 있는 가상의 데이터 센터입니다. 외부와 격리된 네트워크를 구성할 수 있으며, 할당된 IP 대역을 필요에 따라 분할하여 사용할 수 있습니다.
- VPC의 하위 단위로, VPC에 할당된 IP를 더 작은 단위로 분할한 개념
- 하나의 서브넷은 하나의 가용영역(AZ)에 위치
- CIDR 블록으로 IP 주소 범위 지정
Public Subnet
- 인터넷 게이트웨이(IGW)를 통해 외부 인터넷과 연결
- 인스턴스에 퍼블릭 IP 할당 가능
- 주로 웹서버, 애플리케이션 서버 등 배치
Private Subnet
- 외부 인터넷과 직접 연결되지 않음
- 퍼블릭 IP 할당 불가
- 주로 데이터베이스, 로직 서버 등 배치
- 인스턴스 단위의 방화벽
- 특징:
- 포트 허용만 가능 (기본적으로 모든 포트 비활성화)
- 하나의 인스턴스에 여러 보안 그룹 설정 가능
- Stateful (들어온 트래픽은 자동으로 나갈 수 있음)
- 서브넷 단위의 방화벽
- 특징:
- 포트 허용 및 거부(Deny) 가능
- 규칙 번호에 따라 순차적으로 평가
- Stateless (인바운드/아웃바운드 규칙 별도 설정 필요)
- VPC와 외부 인터넷 간의 통신 경로
- IPv4, IPv6 지원
- 확장성과 고가용성 기본 제공
- Private 서브넷의 인스턴스가 외부 인터넷에 접근하기 위한 통로
- NAT Gateway: AWS 관리형 서비스
- NAT Instance: 사용자가 관리하는 EC2 인스턴스
- Private 서브넷의 인스턴스에 접근하기 위한 중간 경유 서버
- Public 서브넷에 위치
- 최근에는 AWS Systems Manager Session Manager로 대체 추세
서브넷의 CIDR 블록에서 다음 5개 IP는 예약됨
- 네트워크 주소 (첫 번째 IP)
- VPC 라우터 용
- DNS 서버 용
- 미래 사용 예약
- 네트워크 브로드캐스트 주소 (마지막 IP)
- Mediasoup 포트 매핑 문제
- swagger 같은 응답 코드에 다양한 응답 보여주기
- Sudo가 계속 비밀번호를 요청함
- Docker 이미지가 너무 크다
- Git action에서 도커 이미지 빌드 시간을 단축시켜보자
- Docker compose를 이용해서 메모리 사용률을 줄여보자
- 방송 녹화 시 CPU 과부하 문제를 해결해보자
- Release 브랜치? 너 필요해?
- 로딩이 너무 짧아…!
- NestJS ORM으로 무엇을 사용해야 할까?
- WebRTC를 이용한 1:N 스트리밍 서비스에서 시그널링 서버가 필요할까?
- 실시간 채팅 구현: 인메모리 방식을 선택한 이유
- MySQL 아키텍처 개선: DB 의존성 분리와 서버 역할 명확화
- 브라우저 창이 최소화되면 비디오 송출이 안된다…!
- Mediasoup 기본 개념
- DLTS와 Signaling
- Tell, Don't Ask (TDA) 원칙이란
- VPC(Virtual Private Cloud) 학습 정리
- 순환참조: A 서비스 ‐ B 서비스 vs. A 서비스 ‐ B 레포지토리
- Dto 메서드 전략
- WebRTC란?
- 자바스크립트 패키지 매니저(npm, yarn, pnpm)
- shadcn/ui을 이용해 UI 개발 생산성 높이기
- React 이벤트 핸들러 네이밍(on vs handle)
- React-router-dom의 createBrowserRouter을 사용해보기
- fetch vs axios