클라우드에서 인프라 구축 시 고려해야 할 사항들을 살펴보고, 네이버 클라우드 플랫폼을 활용하여 고가용성을 유지하는 방안에 대해 소개합니다. | Explore the considerations of building infrastructure in the cloud and introduce ways to maintain high availability by leveraging the Naver cloud platform.
웨비나 콘텐츠
- 클라우드 기본 개념
- 리전
- 존
- 존
- 클라우드에서 인프라 구축 시 고려사항 6가지
- 가용성
- 성능
- 신뢰성
- 확장성
- 관리성
- 비용
- 멀티존을 활용하여 서버 가용성을 높이는 방안
N AVER C LO U D PLATFO R M
Contents
데모 시연
- 네이버 클라우드 플랫폼에서 가용성이 확보된 서버 만들기
국내 클라우드 데이터센터 현황
• 네이버클라우드 운영 국내 4개 IDC 중 2개 IDC에서 네이버 클라우드 플랫폼 서비스 운영 중
• 민간 클라우드 존 : 2개 데이터센터에 멀티 존 형태로 운영
• 공공 클라우드 존 : 주 데이터센터와 DR 데이터센터 형태로 운영
• 금융 클라우드 존 : 주 데이터센터 오픈, DR 데이터센터 구축 중
글로벌 클라우드 데이터센터 현황
• 10개 지역에 데이터센터 운영 중
• 한국, 일본, 싱가폴, 미국 동부/서부, 독일, 홍콩, 태국, 대만, 베트남
• 글로벌 리전들 간에는 전용선 연결로 사설 통신 제공
• 신규 클라우드 리전 추가 계획 중
Global Region
서비스 KR-1 KR-2(신규) 커버리지 비고
Compute
Server 이용 가능 이용 가능 Zone
SSD Server 이용 가능 이용 가능 Zone
GPU Server 이용 불가 이용 가능 Zone
Bare Metal Server 이용 불가 이용 가능 Zone
Virtual Dedicated Server 이용 가능 이용 가능 Zone
내서버이미지 이용 가능(공통) Region
스토리지 스냅샷 이용 가능(공통) Region
Auto Scaling 이용 가능 이용 가능 Zone 다른 Zone으로도 생성 가능
Kubernetes Services 이용 가능 이용 가능 Zone
Cloud Functions 이용 가능(공통) Region
VPC 환경에서는 액션이 연결할
VPC/Subnet 선택 가능(현재는
KR-2에 생성한 Subnet만 선택
가능)
Storage
Object Storage 이용 가능(공통) Region
Block Storage 이용 가능 이용 가능 Zone
HDD/SSD 타입 모두 제공하며
detach/attach 가능
NAS 이용 가능 이용 가능 Zone
다른 Zone에 있는 서버에도
마운트 가능
Backup 이용 가능 이용 가능 Zone
Network
Load Balancer 이용 가능(공통) Region Zone간 이중화 지원
DNS 이용 가능 이용 가능 Zone
CDN+ 이용 가능(공통) Region 한국 전용 서비스
Global CDN 이용 가능(공통) Global
IPsec VPN 이용 가능 이용 가능 Zone
Private Subnet 및 Network
Interface 우선 설정 필요
Global Route Manager 이용 가능(공통) Global
NAT Gateway 이용 가능(공통) Region
VPC 이용 가능(공통) Region
Global DNS 이용 가능(공통) Global
https://guide.ncloud-docs.com/docs/region-region-1-1
멀티존 서비스 제공 내역 및 특징
02
N AVER C LO U D PLATFO R M
클라우드에서 인프라 구축 시 고려사항 6가지
클라우드에서 인프라 구성 시 고려해야할 사항들
기준 세부기준 내용
가용성 이중화 구성 여부 시스템이 중단없이 계속 서비스가 가능하도록 구성이 되었는지?
성능 서비스 안정성
시스템상의 요구사항을 충족하고 서비스에 대한 수요 증가 혹은 감소에 발맞춰 인프라를 효율적
으로 운영할 수 있는지?
신뢰성
백업 서비스 장애 및 오류, 잘못된 조작 등으로 인한 데이터나 정보의 손상에 대비하였는가?
보안 안정성
고객이 인스턴스에 설치한 모든 애플리케이션 소프트웨어 ,유틸리티의 관리, 고객의 데이터 등
이 보안 측면에서 안정적으로 구축되었는지? 그 외 보안 준수사항대로 설정하였는지 등
확장성 인프라 확장성 서비스 사용자 요청에 맞추어서 인프라가 확장될 수 있도록 구성되었는가?
관리성 인프라 모니터링 클라우드 인프라에 대한 운영 상태를 확인할 수 있는 모니터링 체계를 구축하였는가?
비용 비용 효율성
사용한 만큼 과금되는 구조 및 유연한 인프라 확장이 가능한 클라우드의 특성을 활용하여 구성
하였는가?
“클라우드 상에서 인프라를 구성해야 할 시에는 어떠한 포인트들을 고려해야 할까요?”
▪ 가용성
▪ 가용성이란, 시스템이 중단없이 계속 서비스가 가능함을 의미
▪ 시스템을 구성하는 각 구성요소들을 Compute, Storage, Network 레이어 별로 살펴보고 단일 지점(single point)를 이중화하
여 가용성을 유지하는 것이 일반적임.
▪ 가용성을 유지하기 위한 인프라 구성은 Active-Active 구성이나, Active-Standby 형식으로 이중화를 구성할 수 있음
서버#2
서버#1
LB
서버#2
서버#1
LB
Active Active Active Stand-by
고려해야할 사항 1. 가용성 확보
고려해야할 사항 2. 성능
▪ 성능
▪ 성능적인 측면은 시스템상의 요구사항을 충족하고 서비스에 대한 수요 증가 혹은 감소에 발맞춰 인프라를 효율적으로 운영할 수
있는지를 의미함.
STEP 1. 적절한 용량 산정
▪ 서비스 설계 시, 적절한 용량을 산정하기 위해서는 시스템의 요구사항을 파악하고 이에 맞춰 인프라를 구성하는 것이 중요합
니다.
▪ 특히 On-prem 환경에서 클라우드 환경으로의 이관일 경우, 기존 On-prem환경과 동일한 구성이 아닌 오토스케일링 기능
을 통해서 트래픽이 많을 때 인프라를 확장하여 대응할 수 있도록 구성하는 것이 효율적입니다.
STEP 2. 사전 테스트
▪ nGrinder, Apache bench와 같은 툴을 사용하여 웹서비스의에 부하를 발생하고 서비스가 안정적으로 제공되는 지 사전테
스트가 가능합니다.
STEP 3. 지속적인 모니터링
▪ 지속적인 모니터링을 수행하면, 예상했던 성능과 실제 성능의 차이를 인식할 수 있으며 리소스의 변화를 감지하여 Sale-out
혹은 Scale-up 정책을 통해 리소스를 확충할 수 있습니다.
▪ 네이버클라우드플랫폼에서는 웹페이지에 대한 모니터링 뿐만 아니라, Cloud Insight 서비스를 통해 네이버클라우드플랫폼
에서 운영하는 인프라에 대한 전반적인 지표 확인 및 통보 알람 설정이 가능합니다.
▪ 신뢰성 - 백업
▪ 서비스 장애 및 오류, 잘못된 조작 등으로 인한 데이터나 정보의 손상에 대비하여, 인프라 운영 관리담당자는 주기적(일/주/월 등)
으로 백업을 할 수 있도록 백업을 수행해야 합니다.
▪ 백업 대상을 선정하고 그에 맞는 백업주기와 방법, 보관주기, 소산백업 여부 등에 대한 백업 계획을 수립하고 이를 수행합니다.
백업대상 백업주기 백업방법 보관주기 소산백업
데이터베이스 백업
1.1회성
2. MSSQL 1일 1회 전체백업
3. MSSQL 1주 1회 전체백업
4. MSSQL 1주 1회 전체백업 & 매일 1회 증분백업
5. MYSQL 1일 1회 전체백업
6. MYSQL 1주 1회 전체백업
증분 혹은 전체 백업 최대 24주까지 보관 가능 소산백업 진행 여부
파일 백업
1. 1회성
2. 1일 1회 전체백업
3. 1주 1회 전체백업
4. 1주 1회 전체백업 & 매일 1회 증분백업
5. 2주 1회 전체백업
6. 2주 1회 전체백업 & 매일 1회 증분백업
7. 3주 1회 전체백업
8. 4주 1회 전체백업
[네이버 클라우드 플랫폼 백업 신청]
고려해야할 사항 3. 신뢰성
■ 네이버 클라우드 플랫폼 책임 영역
네이버 클라우드 플랫폼에서 제공되는 모든 서
비스를 실행하는 인프라를 보호할 책임이 있습
니다. 이 인프라는 네이버 클라우드 서비스를
구성하는 하드웨어, 네트워크 및 시설을 의미
합니다.
■ 고객 책임 영역
고객은 게스트 운영 체제의 관리(업데이트, 보
안 패치 등), 고객이 인스턴스에 설치한 모든 애
플리케이션 소프트웨어 ,유틸리티의 관리, 고객
의 데이터, 인스턴스별로 네이버 클라우드 플랫
폼에서 제공한 방화벽(ACG, NACL)의 구성 관
리에 대한 책임이 있습니다.
Cloud Layer
Service Models
IaaS PaaS SaaS
Data
Interfaces(APIs, GUIs)
Applications
Solution Stack(Programming languages)
Operation Systems(OS)
Virtual Machines
Hypervisors
Processing and Memory
Data Storage(hard drivers, removable disks, backups, etc.)
Network(Interfaces and devices, communications infrastructure)
Physical facilities / data centers NAVER Cloud Platform
Tenant
고려해야할 사항 3. 신뢰성
▪ 신뢰성 - 보안
▪ 책임공유모델에 따라 Naver Cloud Platform은 ‘클라우드의 보안‘ 을 책임지고, 고객은 ‘클라우드에서의 보안‘ 을 책임 집니다.
고려해야할 사항 3. 신뢰성
구 분 상 품 Description
침입탐지/대응
Basic Security 모든 고객에게 기본으로 제공 되는 무료 보안 서비스
Security Monitoring IDS, Anti-DDoS, Anti-Virus, IPS, WAF와 같은 다양한 보안 상품들을 이용하여 높은 수준의 보안 서비스를 제공
Site Safer 고객이 개발한 웹 사이트가 해킹 또는 다른 보안 문제로 인행 악성코드를 배포하는지 검사
File Safer 고객의 서비스에서 제공하는 파일과 아웃링크 URL의 악성 감염 여부를 해시 기반으로 검사
App Safer 고객의 앱이 모바일에서 실행될 때, 루팅/탈옥, 악성 앱 설치, 앱 변조 등 보안 위협 여부를 실시간으로 탐지
접근제어
ACG 인스턴스 그룹 단위로, IP, Port 기반의 네트워크 패킷 필터링 기능을 제공
Secure Zone 개인정보와 같이 중요 정보를 보다 더 안전하게 보호 할 수 있도록 대외 인터넷 망과 분리된 별도의 존을 제공
인증/권한 관리 Sub Account 사용자 업무 역할별로 권한 관리를 할 수 있는 기능을 제공
암호화
KMS 고객 데이터의 암/복호화에 이용되는 키를 안전하게 보호할 수 있는 서비스
SSL VPN 고객 사이트로 안전하게 접근 가능한 SSL 방식의 가상 사설망을 제공
Certificate Manager SSL 인증서의 손쉬운 등록 및 관리 서비스를 제공
로깅 및 모니터링
Resource Manager 네이버 클라우드 플랫폼 서비스 내 생성한 모든 리소스를 한 눈에 볼 수 있는 통합 관리 서비스
Cloud Activity Tracer 네이버 클라우드 플랫폼 서비스 상에서 발생한 계정 활동 로그를 자동으로 수집해주는 서비스
Cloud Advisor 네이버 클라우드 플랫폼 모범 사례에 따른 서비스 이용 권장 지침 안내
취약점 관리
System Security Checker 고객 서버의 운영체제 및 WAS 시스템에 대해서 보안상 취약점이 없는지 점검하고 결과 리포트를 제공하는 서비스
Web Security Checker 고객의 웹 서비스에 대해 총 20가지의 주요 웹 취약점을 자동으로 진단하고 결과 리포트를 제공하는 서비스
App Security Checker 고객의 Android 모바일 앱에 대하여 취약점을 자동 점검하고 결과 리포트를 제공하는 서비스
Compliance Compliance Guide 고객이 보안 인증이나 규제에 대응하는 데 필요한 사항들을 알기 쉽게 정리한 가이드
▪ 신뢰성 - 보안
고려해야할 사항 4. 확장성
최소 용량
동일 사양의 서버 대 수를 증가시킴으로써
리소스의 Capacity를 확보
▪ 확장성
▪ 오토스케일링 기능을 통해, 미리 등록한 설정에 따라 서버 수를 자동으로 증가 또는 감소시켜 안정적인 서비스를 유지할 수 있습
니다.
▪ Alarm 방식 : 운영 중인 서버를 모니터링해 서버가 투입되기를 원하는 자원 조건에 도달하면 자동으로 서버를 증가시키고 조건
이 해소되면 자동으로 서버를 반납할 수 있습니다.
▪ On-demand 방식 : 미리 트래픽 예측이 가능한 경우, 트래픽이 많이 발생할 시간에 서버를 증가시켰다가 줄어드는 시간에는 서
버를 반납할 수 있습니다. 서버 운용 기준을 최대 트래픽이 발생하는 순간으로 두는 것이 아니라 필요할 때에만 증가시켜 서버 운
영 비용을 효율적으로 관리할 수 있습니다
Auto Scaling Group
기대 용량
최대 용량
로드밸런서
Cloud Insight
Monitoring
고려해야할 사항 5. 관리성
▪ 관리성
▪ 관리성은 클라우드서비스에 대한 지속상태를 확인하기 위해 모니터링 체계를 구축하는 것이며 이를 통해 잠재적인 문제나 장애
발생시 예방 혹은 빠르게 조치를 취하여, 서비스 가용성을 유지 혹은 개선할 수 있습니다. 또한 서비스되고 있는 웹사이트에 대한
지속적인 모니터링 체계를 추가 구축한다면 더욱더 안정적인 서비스 운영이 가능할 것입니다.
[데이터로 수집해야 하는 항목들(예시)]
디스크 지연 시간
트래픽 IN/OUT
서버의 CPU사용량
웹 서버 동시 접속 수
데이터베이스 동시 접속 수
데이터베이스 Select 명령 실행에 걸리는 시간
데이터베이스 Update 명령 실행에 걸리는 시간
읽기 평균값
디스크 또는 inode사용량
메모리 사용량
출처 : 인프라 엔지니어링 첫걸음
감시 종류 감시할 내용 개요
포트 감시 Listen 상태 확인 포트 통신을 확인해서 포트 상태를 확인할 수 있음
프로세스 감시 프로세스 수 확인 수신할 수 없는 것 또는 포트를 수신하지만 프로세스에 문제가 생긴 경우를 감지할 수 있음
디스크 사용량 디스크 사용량 디스크 사용량이 상한에 가까운지 감지할 수 있음
읽기 평균(load average) 값 시스템 전체의 부하 상태를 나타내는 값 처리 실행 대기 행렬을 확인할 수 있음
메모리 스왑 사용량 메모리 스왑 사용량 메모리가 부족할 지 미리 감시할 수 있음
Ping fail 서버 장애 서버와 관련된 이상을 감지할 수 있음
▪ 디스크 사용량과 inode 사용량 : 누군가 데이터를 대량으로 업로드하거나 로그를 정기적으로 압축하지 않으면 두 가지 모두 사용량이 100% 도달할 수
있습니다. 이렇게 되면 더 이상 파일을 생성할 수 없으므로 메일 송수신 오류가 발생하거나 로그를 추가 저장할 수 없기 때문에 통보 알람 설정을 통해 디스크
사용량과 inode 사용량을 모니터링 하는 것이 좋습니다.
▪ 읽기 평균 : 읽기 평균은 서버 스펙과 애플리케이션에 따라 적절한 값이 변경됩니다.
▪ 메모리의 스왑 사용량 : 스왑이란 메인 메모리를 모두 사용하거나 부족할 때 보충해 주는 하드디스크 영역으로서, 메모리의 처리 속도보다 매우 느립니다.
따라서 스왑 영역에 읽고 쓰는 횟수가 많으면 서비스 전체 성능에 영향을 줄 수 있기 때문에 메모리의 스왑 사용량에 대해 지속적으로 모니터링 하는 것이
좋습니다.
고려해야할 사항 5. 관리성
▪ 비용
▪ 클라우드는 사용한 만큼 과금 되는 구조로서, 시간 당 혹은 월 단위 비용이 청구되며 짧은 시간 동안 서버를 사용할 시에는 편리하
지만 ‘얼마만큼 과금될 지 알기 어렵다'라는 특징이 있습니다.
▪ 클라우드 서비스 제공업체마다 과금 구조가 다르기 때문에 각 과금 구조를 정확하게 파악하고 장기 할인 플랜 등 요금을 절약할 수
있는 방안을 살펴보는 것이 중요합니다.
▪ 대규모 웹서비스 운영 시에는 트래픽이 늘었을 시에는 서버를 확장했다가, 트래픽이 줄었을 시에는 불필요한 서버를 반납처리 함
으로써 인프라를 비용 효율적으로 운영할 수 있습니다.
고려해야할 사항 6. 비용