이번 포스팅에서는 클라우드 컴퓨팅의 기술, 즉 클라우드 컴퓨팅이 IT 리소스를 서비스화하여 사용자에게 탄력적으로 제공하기 위한 기반 기술에 대해 알아보고자 한다. 특히 그 기술 중에서도 가상화 기술, 인프라 구성, 서버 가상화를 살펴본다.
먼저 클라우드 컴퓨팅 기술의 구성에 대해 살펴보기 전, 한국 클라우드 컴퓨팅 연구조합이 2017년 정의한 클라우드 컴퓨팅의 5가지 영역의 역할에 대해 살펴보자. 첫 번째 영역은 '클라우드 컴퓨팅 서비스 제공사'이다. 클라우드 컴퓨팅 서비스 제공사는 SaaS, PaaS, IaaS 와 같은 다양한 서비스를 클라우드 플랫폼을 통해 제공한다. 두 번째로는 '클라우드 컴퓨팅 서비스 브로커리지'가 있다. 이 모델은 다수의 클라우드 서비스를 연계하여 사용자에게 제공하는 것으로, 최적화된 서비스를 통해 신규 가치를 창출하고 사용자에게 최적화된 서비스를 선택 및 배치하는 기능을 제공한다. 그다음으로는 '클라우드 컴퓨팅 네트워크'가 있다. 클라우드 컴퓨팅 네트워크란 클라우드 컴퓨팅 서비스 제공사와 사용자의 클라우드 터미널 장치를 연결하는 광대역 유무선 네트워크를 뜻한다. 그다음으로는 '클라우드 컴퓨팅 서비스 단말기'가 있다. 이는 사용자가 클라우드 서비스를 이용하기 위해 사용하는 장치로 대표적으로 스마트폰, PC 등이 있다. 마지막으로는 '클라우드 서비스 보안'이다. 이는 클라우드 컴퓨팅 제공사와 클라우드 네트워크 그리고 각 클라우드 단말기까지 클라우드 서비스를 안전하게 이용할 수 있는 환경을 구축하는 모델이다. 참고로 이와 같은 각각의 영역에서 클라우드 컴퓨팅 서비스가 가능하도록 클라우드 컴퓨팅을 구성하는 기술은 가상화, 분산처리, 오픈 인터페이스, 오케스트레이션, 보안 및 프라이버시 보호가 있다.
다음으로는 가상화 기술에 대해 살펴본다. 가상화란 물리적인 것을 가상의 것으로 전환하는, 즉 물리적 IT 리소스를 가상의 IT 리소스로 전환하는 기술이다. 가상화 기술은 사용자가 하나의 서버에서 여러 실행 환경을 사용하거나, 여러 서버를 사용해 하나의 실현 환경을 구현할 수 있도록 도와줄 수도 있다. 이러한 가상화는 클라우드 컴퓨팅의 핵심 기술이다. 가상화 기술은 물리적 리소스를 논리적 리소스로 재구성해서 사용자가 요청한 물리적 리소스인 것처럼 보여주는 기술이라고 할 수 있다. 가상화 기술은 파티셔닝, 캡슐화, 격리, 하드웨어 독립성이라는 특성을 보유하여 여러 환경이 동시에 동작할 수 있도록 가상 환경 서비스를 제공한다. 먼저 파티셔닝이란 하나의 물리적인 단말기에서 여러 개의 OS를 운영할 수 있고, 리소스를 분할 및 분배하여 사용량에 따라 사용할 수 있도록 하는 것이며, 캡슐화란 가상 머신이 구조화되어 이동 및 복제가 가능하다는 뜻이고, 격리란 각각의 가상 머신이 장애 또는 보안 사고를 대비해서 각각 캡슐화되어 문제 발생 시 그 가상 머신만 격리 조치되는 것을 뜻하며, 마지막으로 하드웨어 독립성이란 하드웨어 안에 가상 머신이 독립적으로 가동된다는 뜻이다.
그다음으로는 인프라 구성에 대해 살펴본다. 애플리케이션이 배포되어 실제 사용되기 위해서는 시스템 뿐만 아니라 그 위에 애플리케이션 동작 시 사용되는 OS, 미들웨어, 라이브러리 등이 구성되어야 하는데, 이런 환경을 인프라라고 한다. 인프라 구성을 위해서는 서버, 스토리지, CPU, 메모리 뿐만 아니라 데이터 센터의 무중단 전력공급 장치, 보안설비, 건물까지 포함한다. 이 중 생소한 개념인 미들웨어에 대해 살펴보면, 미들웨어란 하드웨어와 소프트웨어 중간에 위치해서 보조적인 역할을 하는 소프트웨어를 의미한다. 미들웨어는 서버 OS 상에서 애플리케이션이 OS로부터 제공받는 서비스 외에 추가로 서비스를 제공한다. 미들웨어의 종류로는 TP 모니터, 웹 애플리케이션 서버, 엔터프라이즈 서비스 버스, 데이터베이스 미들웨어 등이 있다.
서버 가상화를 위한 방법으로는 크게 호스트 가상화 방식, 하이퍼바이저 가상화 방식, 컨테이너 방식이 있는데 아래에서 각각의 특징을 구체적으로 살펴본다. 호스트 가상화 기술이란 호스트(하드웨어) 위에 기반이 되는 OS를 설치하고 그 위에 다시 가상화 소프트웨어를 설치하여 가상화를 구성하고, 그 가상 환경에서 애플리케이션을 위한 OS를 작동시키는 방식이다. 그다음으로 하이퍼바이저 가상화 방식은 어떠한 OS에 의존하지 않고, 하이퍼바이저라는 펌웨어 단계에서 한 가지 이상의 OS 이미지들이 물리적 서버 위에서 동작하게 된다. 하이퍼바이저 구동 시 관리머신이 함께 구동되는데, 얼마나 많이 개입하느냐에 따라 전 가상화 방식과 반가상화 방식으로 나누어진다. 전 가상화 방식이란 하드웨어를 완전 가상화 하는 방식으로 모든 명령에 대해 관리머신이 함께 구동되기 때문에 병목현상으로 성능저하가 발생할 수 있는 가능성이 있다는 단점이 있다. 반가상화는 전가상화의 단점을 해결하기 위해 등장한 개념으로 하드웨어를 부분적으로 가상화하는 방식이다. 세 번째로는 컨테이너 가상화 기술도 있다. 컨테이너 가상화 기술이란 호스트 OS 상에 애플리케이션을 동작시키는 데 필요한 라이브러리와 애플리케이션을 포함하는 컨테이너를 만들어 게스트 OS 없이 개별 서버와 같은 실행 환경을 구축하는 방식을 의미한다.
다음 포스팅에서는 클라우드 컴퓨팅이 IT 리소스를 서비스화하여 사용자에게 탄력적으로 제공하기 위한 기반 기술 중 네트워크 가상화, 스토리지 기술, 클라우드 서비스 무정지 기술을 이어서 살펴보기로 한다.
'컴퓨터과학' 카테고리의 다른 글
클라우드 아키텍처 (1) | 2024.01.25 |
---|---|
클라우드 컴퓨팅 기술 (2) 네트워크 가상화 (0) | 2024.01.25 |
클라우드 컴퓨팅 서비스 (0) | 2024.01.21 |
클라우드 컴퓨팅 개론 (0) | 2024.01.21 |
빅데이터 기업경영 (0) | 2024.01.18 |