VPC
=> 퍼블릭 클라우드 상에서 제공되는 고객 전용 사설 네트워크
=> 각각의 VPC는 논리적으로 완벽하게 분리되어 있어 다른 사용자의 네트워크와 상호 간섭이 발생하는 영역 없이 사용이 가능
=> 계정마다 최대 3개의 VPC 생성 가능
*RFC1918 명시 사설 IP 주소 대역 제공*
- 10.0.0.0/16 (10.0.0.0 ~ 10.0.255.255)
- 172.16.0.0/16 (172.16.0.0 ~ 172.16.255.255)
- 192.168.0.0/16 (192.168.0.0 ~ 192.168.255.255)
=> Subnet을 이용하여 VPC 내 네트워크 공간 세분화
=> NACL 이용 inbound/outbound 네트워크 트래픽을 Subnet 단위로 제어 가능
VPC 구성요소 : VPC, Subnet, NAT Gateway, Route Table, ACG, NACL, Virtual Private Gateway, VPC Peering
Subnet
: VPC 네트워크 대역 공간을 세분화하여 사용
: 인터넷 게이트웨이, NAT 게이트웨이용 서브넷을 별도로 생성하여 외부 인터넷과의 통신을 조절할 수 있음
: NACL을 이용하여 inbound/outbound 네트워크 트래픽을 Subnet 단위로 제어 가능
NACL
: Network Access Control List
: VPC의 보안을 강화시키는 요소
: Allow / Deny 모두 설정 가능, 상태 비 저장 방식
ACG vs Network ACL
ACG | Network ACL (NACL) |
서버 NIC 단위로 적용 | Subnet 단위로 적용 |
Allow 규칙에 한하여 지원 | Allow, Deny 규칙 모두 지원 |
Stateful: Response 트래픽 자동 허용 | Stateless: Response 트래픽에 대한 Allow 규칙 추가 필요 |
모든 규칙을 확인하여 판단 | 우선순위에 따라 규칙을 반영 |
VPG (Virtual Private Gateway)
: VPC와 Ipsec VPN 또는 Cloud Connect 연결하기 위한 접점
: 보안이 확보된 통신 경로를 통해 Naver Cloud Platform과 On-Promise Network를 잇는 Hybrid Cloud Create
Route Table
: VPC 내에서 동작하는 고유의 라우팅 기능 제공
: 외부 연계 네트워크 및 내부 사설 통신 간 흐름을 제어
Server Image Builder
: Packer를 활용한 서버이미지 생성 서비스
: 이미지 디스크립션 파일을 이용해서 내 서버 이미지 생성 가능
Init Script
: 서버에 설치하여야 하는 패키지나 초기 설정 내용을 스크립트로 선언하여 서버 초기화를 최대한 빠르고 편리하게 구성
: Linux => Python, Perl, Bash Shell / Windows : Visual Basic 스크립트로 작성
ACG (Access Control Group)
: 서버의 방화벽 역할, Inbound/Outbound 설정 가능 (default : Inbound deny, Outbound Allow)
: Default ACG와 Custom ACG
: Protocol => TCP, UDP, ICMP
: 접근 소스 => IP(CIDR), ACG Group 설정 가능
: 단일 네트워크 카드는 최대 3개의 ACG 적용, 단일 ACG는 최대 100개의 rule 설정 가능
Anti-Virus => Window OS Vaccine
Cloud 의 장점 : 유연한 인프라 확장
AutoScaling 설정
1) Launch Configuration
2) AutoScaling Server Group
3) Event Rule
Kubernetes Cluster => Container의 배포(Scheduling) , 운영(HA, Failover) , 확장(Scaling)을 자동화하기 위한 플랫폼
Control Plane 설치 및 운영에 제약 없이, Container가 구동되는 Worker Node에 대해 관리만 하면 된다.
Networking
- 외부와의 통로, 내부와의 통로 뿐만 아니라 DNS, CDN과 같은 다양한 서비스 제공
- 논리적 망 분리를 위한 VPC
- 유입되는 네트워크 트래픽을 백엔드 서버로 분기하기 위한 Load Balancer
- 네임서버 제공하는 DNS
- 요청 사용자에 가장 가까운 엣지(edge) 서버에서 캐싱된 파일을 제공하여 원본 부하를 낮출 수 있는 CDN 상품
- SIte-to-Site 연결을 위한 IPSEC VPN 상품
- 비공인 IP를 가진 다수의 서버에게 단일 공인 IP를 이용한 외부 접속을 제공하는 NAT Gateway 제공
- 글로벌 네트워크 트래픽을 백엔드 서버로 분기하기 위한 Global Route Manager
Load Balancer
- 부하 분산을 위해 서버 앞단에서 트래픽을 분산
- 로드밸런서 하나를 생성하면 뒷단에 Load Balancer 서버 2개가 생성되고, 도메인에 바인딩 되어 제공
- 최대 9만 CPS까지 이용 가능
종류 : Application Load Balancer, Network LoadBalancer, Network Proxy Load Balancer
기능 | Network LB | Net Proxy LB | Application LB |
프로토콜 | TCP | TCP, TLS | HTTP/HTTPS |
상태확인 | O | O | O |
로깅 | X | O | O |
DSR | O | X | X |
동일 인스턴스의 여러 포트로 로드 밸런싱 | X | X | O |
HTTP 2.0 | N/A | N/A | O |
경로 기반 라우팅 | N/A | N/A | O (출시 예정) |
SSL OffLoad | X | O | O |
고정 세선 | X | O | O |
연결 방식
- Proxy방식 및 DSR 방식 모두 지원
- Proxy 방식 : 클라이언트 IP를 확인하고자 할 때 별도의 설정이 필요
- 클라이언트 IP를 확인하고자 할 때, SSL/TCP 일 경우 : Proxy Protocol / HTTP/HTTPS일 경우 : X-Forwarder 사용
로드밸런싱 알고리즘
- Round Robin : 클라이언트에서 요청이 오면 서버에 1개씩 분배하는 방식
- Least Connection : 클라이언트 연결이 제일 적은 서버에게 새로운 커넥션을 분배하는 방식
- Source IP Hash : 클라이언트 IP에 대한 해시 테이블을 가지고 클라이언트 IP에 매핑되는 서버에 새로운 커넥션을 분배하는 방식
도메인 등록 서비스
- 다양한 레코드 타입 지원 (A, NS, PTR, AAAA, MX, CNAME, SPF)
- 등록 도메인으로 인입되는 트래픽을 분기 (Round Robin)
- 등록된 도메인에 대한 헬스 체크 불가