클라우드

클라우드를 실현하는 기술들

오현섭 2022. 3. 29. 00:25
반응형

클라우드 구축하고 운용하는 가상화기술

 가상화 기술을 이용하면 하나의 물리 서버 리소스를 여러 개로 나우어 여러 개의 서버 환경을 구축, 여러 대의 물리적 서버 리소스를 하나의 서버 환경으로 통합

컨테이너 기술 - 하나의 OS환경에서 애플리케이션을 실행하기 위한 영역을 여러개로 나누어 사용

분산처리기술 - 대량의 데이터를 여러 서버에 분산하여 동시에 병렬로 빠르고 효율적으로 처리

 

서버 가상화 장점

하나의 물리적 서버 리소스에 여러 개의 서버 환경을 할당하고 각각의 OS와 애플리케이션 실행

물리서버수가 줄어들어 공간절약과 비용절감에 도움

 다양한 버전의 OS및 이들웨 환경이 개발,테스트 환경에 적합

 가상서버중 하나가 바이러스와 같은 위협에 노출되더라도 다른 가상서버에게 영향을 미치지 않는다.

 

3종류의 가상화기술

하이퍼바이저형,호스트OS형,컨테이너 형

 

-컨테이너 기술 : 하나의 OS환경에서 애플리케이션의 실행영역을 여러개로 나누어 사용하는 기술

 서버가상화는 하드웨어 환경을 통째로 가상화 

컨테이너 가상화에 따른 오버헤드가 적으므로 빠르게 기동/정지 할 수 있으며 성능저하도 거의 없다.

 개별 컨테이너가 사용하는 하드웨어 리소스가 적어 1대의 물리서버에 매우 많은양의 컨테이너를 올릴 수 있다.

ex)Docker, Kubernetes

 

-분산처리 기술 

데이터를 여러 개의 서버에 나누어 병렬로 처리, 가격부담을 줄이면서 대량의 데이터를 고속으로 처리

클러스터링 : 여러 개의 서버를 결합하여 하나의 컴퓨터로 보이게 만듬, 클러스터링을 하면 장애가 발생하더라도

 나머지 서버에 자동으로 작업을 할당하고 작업을 이어나감

APache Hadoop, Apache Spark 

Apache Hadoop : 1대의 마스터 서버와 마스터 서버가 제어하는 여러 개의 슬레이브 서버로 구성

 처리능력은 슬레이브 서버의 대수에 비례해서 늘어난다.

Apache Spark : 메모리 안에서 대용량 데이터의 병렬 분산 처리 Spark는 메모리 안에서 실행하므로 속도가 매우 빠르다.

 

-데이터베이스 기술

대량의 데이터 분석 처리 및 트랜잭션 처리 등 사용자 목적에 맞는 다양한 데이터베이스 제공

 RDB : 여러 개의 데이터를 행과 열이 있는 표 형식으로 표현하여, 복잡한 데이터 관계를 처리하는 데이터베이스

 관계형 데이터베이스 관리 시스템(Relational Database Management System)

NOSQL : RDB와 같은 관계형 데이터베이스가 아닌 데이터 베이스

 대량의 데이터를 분산시켜 고속으로 처리하는 분산 데이터베이스, 빅데이터 분석에 사용

키밸류형 : 제품의 모든 데이터는 인덱싱된 값으로 구성

컬럼 지향형 : 제품은 컬럼 단위로 데이터를 보관하고

 지향형 : 제품은 복잡한 데이터를 문서에 저장하고 문서 단위로 데이터를 저장

그래프형 : 데이터 간의 관계를 그래프로 형성하고, 통합 검색을 빠르게 할 수 있다.

 

스토리지 기술

스토리지는 데이터와 프로그램을 저장하는 기록장치

블록 스토리지 : 일정한 크기의 블록으로 나뉜 스토리지의 논리 뷸륨을 블록단위로 액세스 할 수 있는 스토리지

 오버헤드가 적어 빠른 데이터 전송 가능

파일 스토리지 : 파일을 그대로 읽고 쓸 수 있으며 공유할 수 있는 스토리지

 파일 서버로 이용하며, 파일의 접근제어나 파일의 속성정보를 관리하기 쉽다.

오브젝트 스트리지 : 데이터를 객체 단위로 처리

 오브젝트 스토리지 액세스에는 HTTP프로토콜 기반의 REST 형식의 API사용

 

클라우드 구축하려 할 떄 유력한 대안 OPENstack

 오픈소스 클라우드 기반 소프트웨어 : 프라이빗 클라우드를 구축하기 위한 소프트웨어

 주요 퍼블릭 클라우드 서비스의 Iaas기반으로 사용

 

OPENStack  : 표준개발언어 python, 표준 외부 api는 독자적인 api로 REST API 및 Amazon EC2/S3호환

 

네트워크 가상화 기술

VLAN: 하나의 물리적인 네트워크를 여러 개의 논리적인 네트워크로 분할하는 기술 

 조직단위로 네트워크를 나누면 조직 안에 한정된 데이터를 전송할 수 있다.

VPN : 인터넷과 같은 불특정 다수가 이용하는 네트워크에 가상으로 전용선과 같은 사설망을 연결하는 기술

NFV : 네트워크 기능을 소프트웨어로 구현하여 가상서버 위에 구축하는 기술

라우터,게이트웨이,방화벽, 로드 밸런서 와 같은네트워크 장비의 기능을 가상서버에서 소프트웨어로 구현

 

SDN(Software Defined Networking)

네트워크 장비마다 가지고 있떤 통신의 전송기능과 제어기능을 분리하여 제어 기능을 컨트롤러에 논리적으로 집중시켜서 데이터의 흐름을 소프트웨어로 정의

 SDN이 보급되면서 네트워크 가동상황 및 운영에 맞추어 소프트웨어로 유연하게 데이터 전송 경로를 변경

 

클라우드의 약점을 보완하는 엣지 컴퓨팅

 엣지컴퓨팅은 서버를 클라우드 쪽에 배치하는 대신, 서버를 스마트폰 등 맡단 디바이스에 가까운 영역에 배치하고,

 서버에서 말단 디바이스가 보낸 데이터를 처리하는 컴퓨팅 모델

실시간 데이터처리와 높은 신뢰성 요구사항 클라우드 서비스 장애 또는 네트워크 지연을 피할 수 있다.

 

하이퍼 컨버지드 인프라 : 클라우드 서비스의 기본 기능을 패키지로 제공하는 플랫폼

 컨버지드 인프라 : 하나로 모으다, 서버와, 네트워크,스토리지, 소프트웨어(하이퍼바이저 및 도구) 등을 하나의 패키지로

 통합한 제품, 수직 통합 시스템

하나의 패키지 제품으로 문의 창구 및 지원 창구가 일원화되는 장점

 

하이퍼 컨버지드 인프라 : 소프트웨어 기반의 서버와 네트워크 ,스토리지 등의 구성요소가 통합된 제품

 서버와네트워크 모듈단위로 구성하고, 윤영 효율성이 우수

 여러 개의 서버를 통합하여 각 서버에 내장된 스토리지로 가상공유 스토리지 구축

전체를 하나의 시스템으로 관리

 

GPU

빠른 이미지 처리, GPU를 기계학습/딥러닝 등의 범용 계산에 사용

GPU 자율주행 자동차/제조분야 바이오 헬스케어분야 기계학습/딥러닝 슈퍼컴퓨팅 기반으로 보급

 

데이터 센터

클라우드 서비스를 지탱하는 서버와 네트워크 장비등은 데이터 센터에 설치되어 있따.

 지진이나 해일 등의 재해 위험이 적고, 지반이 딱딱한 장소, 내진, 면진 설계된 건물

 엄격한 출입관리 24시간 365일체제 운용

무정전 전원장치와 자가발전 장치 등 재해상태에도 지속

 

서버리스 아키텍처

마이크로 서비스 아키텍처 : 하나의 애플리케이션을 작은 서비스의 집합체로 구축하는 방법