본문 바로가기
정보통신기술

클라우드 추상화(Abstraction)와 가상화(Virtualization) 기술

by SpringZephyr 2023. 5. 2.
반응형

개요

전 세계 수많은 사용자들이 아마존, 구글, 마이크로소프트, 오라클 등에서 제공하는 클라우드 서비스를 사용 중에 있습니다. 우리나라의 경우에도 네이버, KT, 카카오 등을 포함하여 다양한 클라우드 서비스가 있습니다. 삼성과 LG와 같은 가전제품을 위한 클라우드 서비스도 있습니다. 이렇게 다양한 클라우드 서비스가 일상에서 도입되어 활용되고 있으면서도 우리는 컴퓨터, 스마트폰, 태블릿에서 쉽게 서비스에 접근하여 사용하는데 불편함을 그다지 느끼지 않습니다. 가장 큰 이유는 우리는 눈앞에 있는 애플리케이션 하나만 바라보지 그 내부에 존재하는 수많은 엔지니어들의 노고는 보이지 않기 때문이죠. 그것은 바로 클라우드에서 추상화와 가상화 기술이 기본으로 반영되어 있기 때문입니다. 여기서는 클라우드 서비스 기술 중에서 추상화와 가상화에 대해서 알아봅니다.

추상화란

추상화(Abstraction)는 컴퓨터 운용게 관련된 자원, 절차 등 제반사항을 단순화하여 사람들이 쉽게 인지하고 활용할 수 있도록 모델링한 것을 의미합니다. 대상이 되는 서비스를 계층화하고, 각 모델에 대한 명세(Specification)를 구체화하여 제공하는 것입니다. 따라서 모델의 내부적인 동작은 내부적으로 처리하고, 이를 활용하는 외부에는 인터페이스 명세만을 제공하게 됩니다.

클라우드 서비스의 경우에는 사용자의 경우에는 서비스 기능에 대한 이해만으로 활용가능하도록 합니다. 예를 들어, 개발자의 경우 자신이 개발하는 서비스의 내부적인 기능 구현은 외부에 공개하지 않고 인터페이스 정보만을 외부에 공개하여 다른 사람들이 자신의 서비스를 활용할 수 있게 합니다. 동시에 다른 개발자의 서비스를 활용할 경우 서비스의 명세만을 참조하여 본인의 개발에 활용하게 됩니다. 일상의 예를 들자면, 우리는 자판기 내부에서 어떻게 동작하는지 알지 못합니다. 다만 결재수단과 원하는 음료/다과를 선택하기만 하면 원하는 것이 나오게 됩니다. 즉, 추상화는 개발한 서비스를 활용하는데 필요한 정보를 보고 활용할 수 있게 하는 것입니다.

가상화란

가상화(Virtualization)는 컴퓨터 자원(CPU, 스토리지, 네트워크 등)의 실제 구조나 하드웨어 특성에 영향을 받지 않고 활용가능한 운용환경을 제공하는 서비스 입니다. 클라우드 서비스를 관리하는 인프라로부터 필요로 하는 자원을 동적으로 할당받아 활용하면서도 내부적인 자원의 구성에 대해서는 인지할 필요가 없습니다.

가상화는 단일한 물리적 하드웨어 시스템에서 여러 시뮬레이션 환경이나 전용 리소스를 생성할 수 있으며, 여러 물리적 하드웨어 시스템을 하나의 시뮬레이션 환경이나 전용 리소르를 생성할 수 있습니다. 이렇게 가상화된 자원을 사용하는 사용자는 물리적 구성이나 특성에 대해서는 인지할 필요 없이 사용할 수 있게 됩니다. 예를 들어, 시스템 개발자가 하나의 가상머신(Virtual Machine)을 할당받아 원하는 서비스를 개발한다고 할 경우, 그 가상머신이 실제 물리적으로 어느 서버에 설치되어 동작하는지 알지 못하고 알 필요 또한 없습니다. 가상머신이 실제로 설치되고 서비스를 제공하는 것은 CSP에서 담당하는 것입니다.

이때 가상화를 통해 활용하는 가상머신(VM)이 사용자가 원하는 능력을 발휘하지 못하거나, 과부하가 발생하는 경우에는 가상머신에 추가적인 물리적 자원을 할당하게 되는데 여기에는 수평적 확장(Scale out) 방식과 수직적 확장(Scale up) 방식이 있습니다. 먼저, 수평적 확장 방식이란 동일한 자원을 추가적으로 제공하는 방식입니다. 예를 들어, 저장공간이 부족하다면 동일한 저장장치를 추가로 할당할 수 있습니다. 즉, 하나로 운용되던 것을 2개 이상을 할당하게 되는 것입니다. 다음으로 수직적 확장 방식이란 더 능력이 뛰어난 자원으로 대체하는 방식입니다. 예를 들어, 1.2 GHz 처리 능력을 가진 CPU로 로 처리하니 느려지는 현상이 발생한다면 VM의 CPU를 2.4 GHz 같은 더 나은 자원으로 대체하여 적용하는 것입니다. 이와 같이 가상화는 물리적 자원과 분리되어 운용이 가능하여 동적인 확장과 축소가 가능하여 효율적인 자원운용이 가능합니다.

요약

클라우드 서비스는 사용자에게 필요한 서비스 명세를 보여주며 요청한 서비스 자원을 제공하게 되나, 추상화 및 가상화 기술을 적용하여 내부적인 동작원리나 물리적 장치의 특성은 인지하지 않고 사용하게 합니다. 이렇게 내부적인 운용의 특성을 알지 못하는 특성을 표현하기 위하여 클라우드 서비스는 흔히 구름(Cloud) 모양으로 표현하게 됩니다. < 끝 >

 

반응형

댓글