네이버 클라우드 플랫폼 서비스 라인업

 


Server Types

 

서버 구축 방식

  • VM
    • H/W 위에 HyperVisor 위에 복수 VM
  • VDS
    • H/W 위에 HyperVisor 위에 단일 VM
  • Bare Metal
    • H/W 위에 바로 OS

클라우드 환경에서 VM 간 간섭 현상에 대한 위험을 0으로 만들기 위해선 VDS 또는 Bare Metal 방식을 사용해야 한다.

Bare Metal Server

  • 단독으로 사용할 수 있는 고성능 물리 서버를 클라우드 형태로 제공.
  • 하이퍼바이저 없이 물리 서버 자체에 운영 체제를 설치.
  • RAID 1+0, RAID 5 등 적합한 RAID 구성 방식 적용 가능.
  • 단독 서버이기에 성능에 민감한 서비스의 안정적인 운영 가능.
  • CentOS, ORACLE Linux와 Windows 제공.
  • '내 서버 이미지', '스냅샷', '추가 스토리지' 기능 사용 불가.
  • 서버 장애 시 Live Migration 불가

 

GPU Server

  • 병렬 처리에 최적화된 GPU 서버의 고성능 컴퓨팅 파워를 제공.
  • 딥 러닝을 위한 GPU 서버 팜으로 Classic 환경에선 NVIDIA P40, V100 사용.
  • VPC 환경에선 NVIDIA T4, V100 사용.
  • GRID 방식으로 공유 자원으로써 사용하지 않고 Pass Through를 적용하여 전용 리소스로써 제공.

 

서버 타입별 기능 비교표

기능 Micro Compact Standard High Memory CPU Intensive VDS GPU 2세대 서버(High CPU, Standard, High Memory, CPU Intensive
스토리지 추가 불가 가능 가능 가능 가능 가능 가능 가능
SSD 스토리지 이용 불가 가능 가능 가능 가능 SSD Only 가능 가능
오토스케일링 이용 불가 가능 가능 불가 가능 불가 불가 가능(High CPU, Standard)
IOPS 성능 낮음 높음 높음 높음 높음 높음 높음 높음
Network Interface 이용 불가 가능 가능 가능 가능 가능 불가 가능
글로벌 회선 이용 불가 가능 가능 불가 불가 불가 불가 가능

Server Operations

 

Server Image / Snapshot / 유사 서버

Server Image : 서버 OS + 추가 볼륨에 대한 상태를 이미지로 뜨는 것이다. Classic 환경에선 서버가 셧다운된 상태에서만 가능하고, VPC 환경에선 러닝중이어도 가능하다. 부팅 디스크 타입, 서버 타입(사양) 변경 또는 리전 간 이미지 공유에 사용된다.

Snapshot : 볼륨에 대한 상태를 이미지로 저장한다. 디스크 타입 변경에 사용되며, 사이즈 변경은 불가하다. 볼륨 이미지 또한 리전 간 공유가 가능하다.

유사 서버 : 서버에 대한 스펙만 저장하는 것이다. 실제로 서버의 기능을 할 수 없다.

Init Script

서버 생성 시 최초 1회 실행되는 스크립트. 서버에 설치해야 하는 패키지나 초기 설정 내용을 스크립트로 선언하여 서버 초기화를 빠르고 편리하게 구성할 수 있다.
같은 용도의 서버를 여러 대 일괄로 생성하는 경우 잘 사용된다.

OS별 스크립트 사용
Linux : Python, Perl, Shell
Windows : Visual Basic

서버에서 /var/log/ncloud-init.log 경로로 접속하여 확인할 수 있다.

추가 스토리지 구성

OS 영역인 50GB에 추가로 더 큰 스토리지 용량이 필요할 경우 사용한다. 단일 서버당 최대 15개의 추가 스토리지를 구성할 수 있으며, 스토리지당 10GB~2TB까지 용량을 잡아줄 수 있다. Linux-LVM, Windows-동적 디스크 할당을 통해 여러 개의 디스크를 하나의 볼륨으로 묶음으로써 여러 개의 디스크를 하나의 볼륨인 것처럼 사용할 수 있다.
서버가 중지 상태이거나 대상 스토리지가 서버에서 unmount 되어 있는 상태일 때 서버에 연결된 스토리지를 Detach한 후 다른 서버로 Attach하여 옮길 수 있다.


서버 생성까지의 단계

  1. VPC 생성
  2. NACL 생성
  3. Subnet 생성
  4. ACG 생성
  5. Server 생성

VPC

계정당 최대 3개의 VPC 생성 가능.

IP 주소 범위

  • 10.0.0.0/8 : 10.0.0.0 ~ 10.255.255.255
  • 172.16.0.0/12 : 172.16.0.0 ~ 172.31.255.255
  • 192.168.0.0/16 : 192.168.0.0 ~ 192.179.255.255

Peering : VPC 간 연결을 위한 네트워크 구성. 다른 계정의 VPC와도 연결이 가능하다(로그인 ID, VPC ID, VPC 이름 입력 필요).

ACG / NACL

AWS의 Security Group과 NACL이라고 볼 수 있다. 외부에서 접속 시 NACL을 먼저 거친 후 서버 레벨에서 ACG가 검문한다.

ACG Network ACL
서버 단위로 적용 Subnet 단위로 적용
Allow 규칙만 설정 Allow, Deny 규칙 설정
Default All Deny Default All Permit
모든 규칙을 확인하여 판단 우선 순위에 따라 규칙을 반영

VPC 환경에서는 서버, 서브넷에 적용된 ACG, NACL을 다른 ACG, NACL로 변경 가능하다.

Subnet

VPC당 최대 200개의 Subnet 생성 가능. 나머진 AWS의 Subnet과 같다.

Load Balancer

Target Group이라는 단위로 관리할 서버들을 묶는다. 동일한 VPC 내에 있는 서버들에 대해 생성 가능하다. 하나의 서버가 동시에 여러 타겟 그룹에 속할 수는 있지만 타겟 그룹을 다수의 로드 밸런서에 연결할 수는 없다. VPC 환경에서의 헬스 체크 주기는 디폴트 30초에 변경 가능이며, Classic 환경에선 디폴트 6초에 변경은 불가하다.

로드 밸런서의 종류

  • Network Load Balancer
    • 고성능의 분산 처리 가능
    • Client IP가 그대로 로깅(LB가 브로커로서 관리하지 않고 서버에 Client IP가 찍힌다)
    • DSR(Direct Server Return)을 구현하여 서버에 부하 분산되어 도착한 트래픽에 대한 응답을 클라이언트단으로 보낼 때 LB를 거치지 않고 빠르게 서비스를 제공할 수 있음
    • Hash, RR 알고리즘만 제공
  • Network Proxy Load Balancer
    • 프록시 방식의 통신을 제공하여 세션 유지가 필요한 TCP 기반 애플리케이션에 이용
    • SSL 인증 및 암호화 가능
    • 3가지 알고리즘 제공
  • Application Load Balancer
    • HTTP/HTTPS 트래픽에 대한 처리
    • URL 기반 분기 가능
    • SSL 인증 및 암호화 가능
    • 3가지 알고리즘 제공
기능 Network Network Proxy Application
프로토콜 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 오프로드 X O O
고정 세션 X O O


부하 처리 성능별 보장되는 CPS(초당 연결 수=분산 처리 횟수)

  Small Medium Large
Application 30,000 60,000 90,000
Network 100,000 200,000 400,000
Network Proxy 30,000 60,000 90,000


로드 밸런싱 알고리즘

  • Round Robin : 골고루 각 서버에 트래픽을 1개씩 분배
  • Least Connection : 클라이언트 연결이 가장 적은 서버에게 새 커넥션을 분배
  • Source IP Hash : 클라이언트 IP에 대한 해시테이블을 통해 서버와 매핑하여 분배

 

Auto Scaling

오토 스케일링의 3가지 방식

  • 스케줄링 : 사용자가 정의한 주기
  • 모니터링 : 사용자가 설정한 메트릭(ex: CPU 사용량 80%로 5분 간 유지 시)
  • 온디맨드 : 사용자의 요청

Auto Scaling에 설정해야 하는 부분
로드 밸런서에 바인딩되는 서버의 그룹이다.
Launch Configuration, Auto Scaling Group, Event Rule 3가지를 설정해주어야 한다.
Auto Scaling Group당 최대 30대의 서버를 묶을 수 있다.

CDN+ / Global CDN

CDN+는 국내 전용, GCDN은 국외 전용 CDN이다.
대규모 파일 배포나 이미지 서비스, 동영상 서비스 등 대규모로 트래픽이 발생하는 경우 캐싱을 통해 빠른 처리를 가능케 한다.

CDN 관련 용어

용어 설명
Purge CDN 캐시 서버에 저장되어 있는 콘텐츠를 삭제하는 기능
Cache expiry CDN에서 캐싱된 콘텐츠가 원본 서버에서 변경되었는지의 여부를 확인하는 주기
Streaming 네트워크(인터넷)를 기반으로 사용자들에게 멀티미디어 정보를 실시간(Real-time)으로 제공하는 기술. 네이버 클라우드 플랫폼 CDN의 스트리밍 서비스는 HTTP Live Streaming, HTTP Pseudo Streaming, MPEG-DASH 프로토콜 지원
Secure Token 토큰 기반의 인증으로 허용된 접근에만 콘텐츠를 전달
Ignore query string CDN 서비스가 원본 서버에 요청할 때 ?id=1234와 같이 URL에 포함된 GET 파라미터를 제거한 후 요청
Referrer domain 콘텐츠가 지정된 도메인에만 제공되므로 다른 사이트에서 참조되는 것을 방지함. 도메인은 www.domain.com 또는 *.domain.com 형식을 지원하며, 숫자, 영문자, "*", "-", "."만 사용 가능

 


과정의 모든 내용이 아닌 일부 내용만 정리하였음.

+ Recent posts