- 클라우드 아키텍처의 이해
- 리소스 풀링, 로드밸런싱, 클라우드 버스팅
클라우드 아키텍쳐의 이해
클라우드 아키텍처링
- 클라우드 기반 서비스 설계 시 가장 먼저 선행되어야 함
- 안정적인 서비스를 위해 서비스 대상과 리스크를 분석하고 컴퓨팅 리소스를 적적하게 배치 및 설계하는 과정
- 클라우드가 얼마나 필요한가를 알고 있어야함
클라우드 아키텍처
리소스 풀링
리소스 풀
: 자원을 모아둔 논리적인 장소
- 풀에서 필요한 만큼 가져옴
로드밸런싱
클라우드버스팅
무정지 서비스
클라우드 아키테처링 없이 서비스를 진행할 경우
- 서비스를 요청하는 사용자의 급작스러운 증가 대처 불가
- 컴퓨팅 리소스의 문제 발생시 대처 불가
과도한 초기 컴퓨팅 리소스 설계 시
소극적인 초기 컴퓨팅 리소스 설계 시
- 사용자의 접속 폭증하는 경우 서비스 응답 지연, 접속 불능으로 서비스 만족도 저하
선행 개념
- 서비스 오케스트레이션
: 자동화된 리소스 프로비저닝
: 운영자가 노드에서 리소스를 골라서 사용하는 것이 아니라 자동적으로 논리적인 풀 형태로 제공됨
: 리소스 배치를 자동화하기 위한 설정, 관리, 조정 작업
: 제공자는 미리 자신의 자원에 대한 상태값을 확인하여 논리화 할 수 있게 해야함
: 물리적인 노드 상에서는 여러 곳에서 가져와 리소스 풀을 만들어 마스터 노드에 풀을 저장해두고 사용자는 이 마스터 노드에 요청하여 리소스를 가져다가 쓰게 됨
- 서비스 관리
- 경영 지원
: 리소스 과금, 감사 정책
- 프로비저닝/구성
: 리소스 배치, 변경, 모니터링, SLA 관리
: 리소스가 얼마나 있고 어디에 있는지 - 배치, 가상화
: 계약성 작성한 만큼만 제공 - SLA
: 제공자의 내부 자원이 살아있는지, 상태 정보 확인 - 모니터링
- 이식성/상호 운영성
: 타시스템으로의 데이터, 소프트웨어 이전
: 2개 이상의 시스템 간의 원활한 정보 교환
: 다른 클라우드로 넘어가는 것이 아니라 다른 노드로 이전
서비스 고가용성 전략
고가용성
(HA: High Availability)
: 서버와 네트워크, 프로그램 등의 시스템이 오랜 기간동안 지속적으로 정상 운영이 가능한 특성
확보 방안
- 다중 애플리케이션 서버와 부하 분산
: 로드밸런싱과 같은 개념
- 데이터베이스 혹은 스토리지의 이중화
: 미러링, 스트라이핑
- 여러 지리적 위치에 따른 서비스 배치
리소스 풀링
리소스 풀
- 즉시 사용할 수 있는 서버, 스토리지 등의 리소스를 담아두는 공간
- 확장, 탄력성 확보를 위해 사용자로부터 물리적으로 가까운 위치에 구성
가상 서버 풀은 내부적인 변경 불가
특징
- 사용자는 자원의 물리적인 위치를 알 수 없음 (IDC의 특정 서버, 스토리지 내부의 지리적 위치 등)
- 사용이 용이하도록 추상화되어 있음
- 서비스나 프로그램에 의하여 자유롭게 사용되고 해제됨
구성
- 도시, 국가 단위의 계층적 구조
- 위 구성으로 리소스 요청할 시 인접한 리소스를 즉시 사용
로드 밸런싱
-
서버가 여러 대 있을 때 사용자의 요청을 분산 시키는 기법
-
운영중인 서버나 시스템의 용량과 성능을 확장/축소
-
무조건적으로 모든 작업을 분산처리 할 수 있는 것은 아님
스케일링
로드 밸런서가 없는 구조
오토 스케일링