UI 디자이너가 알아야할 기초상식, VDI와 클라우드 기반 가상화
VDI란 데스크탑 (PC)환경을 가상화. 웹 / 네트워크 상에 모두 옮겨버린다는 이야기다. 단순히 봤을땐 이게 무슨소리인가 싶지만. VDI는 개개인의 사용성이나 경험향상에는 별다른 영향을 주지 않는다. 그러나 그러한 개인들을 위한 관리자의 노동력과 인원수와 직접적인 연관이 된다. 예를 들어 100명의 사원이 PC를 사용해 일하고있는 회사가 있다고 해보자. 각각의 사람들이 PC를 통해 일을 한다면, 누군가는 PC를 사서, 기본적인 OS를 세팅하고, 필요한 프로그램들을 깔아놔야한다. 또한 중간중간 문제가 생겼을 경우 데이터를 복구하거나, 재설치를 하거나, 심지어는 만들어진 데이터를 보관 / 저장하는 부분에서도 여러 노동력이 필요해진다.
이런 '문제들'로인해 업무가 정지되거나, 실질적인 업무시간이 줄어드는 것을 1년 단위로 본다면. 1인당 수십시간이 넘는다. 이런 시간들을 100명으로 놓고 본다면. 1년에 수천~수만 시간의 노동력이 낭비되고있다는 이야기다. 그런데 만약 개인 PC에 하드 디스크가 필요없이, 모든 PC환경의 OS, 소프트웨어, 개인화 파일들을 네트워크로 관리할 수 있다면 어떨까? 그런 데이터를 순식간에 몇분만에 받아서 세팅 / 복구할 수 있다면? 이것이 바로 VDI. 데스크탑 환경의 가상화의 대표적 사례다.
VDI를 이해하려면 간단히 클라우드 시스템을 생각하면 이해가 쉽다. 내 실제 데이터는 하드 디스크에 저장되는게 아니라, 데이터센터의 클라우드 내에 저장되고. 필요하다면 언제라도 받아올 수 있다. 기존에도 웹하드나, 클라우드 서비스를 쓰는 사람들은 많은데. 여기에서 항상 문제가되는건 속도였다. 속도가 느리기 떄문에, 내가 올려둔 파일들을 받아오는데 수십분의 시간이 걸리고. 심지어는 내가 수정한 내용이 실제 서버에 반영되는 데에도 너무 오랜 시간이 걸렸다. 그러나 이제는 5G기술 기반으로 이런 속도의 차이가 거의 사라지다시피한 시대가 온다. 몇GB나 되는 파일들을 순식간에 주고받을 수 있고. 이제는 단순히 개인파일 뿐만 아니라 OS나 업무용 소프트웨어들도 이런 수순을 밟게된다. 그만큼 네트워크 속도가 빨라지고있기 때문이다.
크롬북이라는 구글의 노트북이 있다. 사실 노트북의 디자인이나, 하드웨어 스펙만으로는 별다른 장점이 없는 제품이다. 그래서 판매량도 그리 좋지 않지만, 다른 시선으로 보면 이 노트북에는 다른 제품들과는 차별화되는 지점이 있다. 그건 바로 OS가 존재하지 않는다는 점이다. Free DOS OS만 깔려있고, 윈도우는 깔면되는거 아니냐 - 라는 식으로 생각할 수도 있지만. 그정도 수준이 아니라 - 이 크롬북에는 네트워크만 연결되면, 웹에서 OS 시스템을 불러와 시스템을 동작한다. 심지어 일반 인터넷 속도 기준으로도, 그런 구축이 순식간에 일어난다. 게다가 기본적으로 구글은 PPT나 엑셀, 워드 등의 프로그램을 web기반으로 만들어 서비스하고있기 때문에. 기본적인 업무용 서비스들은 모두 추가적인 설치 없이 바로바로 사용할 수 있다. 아직까지 다른 프로그램들이 웹 기반으로 만들어져있기보다, PC 하드드라이브 상에 설치되어 사용된다는 점을 생각한다면. 아직 초기단계의 영역이라고도 볼 수 있다. 하지만 이러한 방향은 VDI를 넘어서서 소프트웨어 클라우드화의 수순을 차분히 밟아나가고있다고 볼 수 있다.
요즘 유행하고있는 개인용 지능형 CCTV와같은 경우. 물리적인 CCTV는 별다른 기능을 갖고있지 않은 저렴한 제품이 대부분이다. 그러나 지능형 분석을 통해 침입자 탐지, 사물인식, 영역침범 체크 등의 고도의 연산이 필요한 기능을 웹 기반으로 지원하고있다. 또한 이런 특정 상황이 발생한 경우에, 해당 내용을 사용자의 휴대기기에서도 바로 확인할 수 있다. 실제로 CCTV의 시각분석과같은 고도의 계산은 고가의 CPU나 GPU (그래픽카드)가 필요한 경우가 대부분인데. 어떻게 일반 사무용 컴퓨터나, 웹 기반으로 이런 내용들을 확인할 수 있을까?
그 내용을 파고들어가보면, 그 안에는 또다시 클라우드가 있다. 실제 고도의 연산처리는 클라우드에 올라가서 진행되고있고. 해당 결과만을 사용자에게 보내주는 방식이다. 실시간 영상을 서버로 보내는 네트워크망만 있다면, 그걸 분석해서 결과여부를 내어 사용자에게 보내주는건 별로 어려운 개념이 아니다. 마찬가지로 고도의연산이나, 복잡한 기능은 클라우드 서비스를 통해 외부에서 진행하고. 사용자는 웹 기반의 가벼운 접속 및 조작만 하도록 지원하는 서비스들이 많아지고있다.
소프트웨어를 만드는 수많은 기업들이 '프로그램 판매' 형태가 아니라, 점차 '구독형 서비스'를 늘려나가고있다는 점에 주목해보면 여기에서도 소프트웨어 가상화의 절차를 밟고있는 시대의 흐름을 볼 수 있다. 개별 프로그램을 무겁게 하나하나 다운받아서 설치하면 - 클라이언트 위조나 변조, 크래킹 등의 위험성이 발생하기 쉽다. 그런 프로그램들의 원본 데이터들은 클라우드 기반에 놓여있고, 프로그램의 결과값만 사용자들에게 보내줄 수 있다면 어떨까?
PC 나 개인의 하드웨어 상에 많은 데이터를 담고있는 소프트웨어는 대부분 사용을 위해 인증절차를 걸치게되지만. 인증에 사용되는 토큰을 위/ 변조하여 뚫어 사용하는것이 일반적인 해커나 크래커의 수법이었다. 그러나 모든 핵심 데이터가 클라우드 환경에 올라간다면 이런 위/ 변조의 가능성이 기하급수적으로 줄어들게된다. 중요 데이터를 실시간으로 확인하고, 서버 기준에서 사용자가 토큰을 갖고있는지 아닌지를 판별하기 때문에. 사용자에 대한 관리가 매우 편리해진다. 또한 지속적인 유지보수를 명목으로 다달히 사용료를 받을 수도 있으니. 실제 제품을 개별 판매하는것보다도, 장기적인 수익은 오히려 늘어나게된다.
물론 아직까지, 고도의 연산작업이 필요한 서비스들의 경우. 이런 클라우드화가 불가능하기 때문에. 일단 1차적인 방법으로 '구독형 서비스'를 제공하고있다. 그러나 시대적으로 클라우드화를 피할수는 없기에 다음 단계는 소프트웨어 경량화이고, 마지막 단계가 클라우드 기반의 소프트웨어 가상화의 단계가 이어질 것이라 보면 된다.
6. 네트워크 장비도 최소화할수 있다고? - 네트워크 가상화
게임회사나, 은행처럼 거대한 네트워크 트래픽이 발생하는 곳에서는 다양한 이유로 자체 서버를 구축해 사용하는 경우가 많다. 특히나 데이터 자체의 안전 및 보안을 위해 더욱더 자체적인 서버의 규모나 크기가 거대한 곳이 많은데. 이런 경우 모든 서버구축용 하드웨어들을 내부인원이 관리하고, 유지보수를 직접 해야한다는 단점이 있다. 서버다운이나, 에러 등의 문제가 발생했을 경우 - 해당 기업의 서비스를 사용하는 이들의 신뢰도나 주가가 큰 영향을 받을 수 밖에 없다. 그렇기에 이런 서버관리 인력들은 항상 5분대기조와같이 밤을 새거나, 문제를 그떄그때 해결하는 방식으로 달라붙어야하는 '악조건'에서 근무를 할 수 밖에 없다. 만약 이런 네트워크 장비들을 클라우드 상에 올릴 수 있다면 어떨까?
아마존 웹 서비스 (AWS)는 자사 서비스 운영을 위해 규모가 엄청나게 거대한 데이터 센터를 운영하고있다. 그렇다보니 여기에서 남아도는 하드웨어의 내부 용량을 다른 이들에게 돈을 받고 빌려주는 사업을 하게됐다. 실제로 트래픽 유입량이 일정치않은 게임사에서는 AWS를 이용해 일정량의 네트워크 자원을 구매해 사용하고있다. 또한 자동으로 자사 트래픽을 늘리거나, 줄이는 로드밸런싱이란 기술을 사용하고있다. 여기에 가상화된 공간 내에 올리고 내려받는 '속도'만 충분하다면. 굳이 물리적인 서버를 자사 내에 갖고있어야할 필요가 없어지게된다. 심지어 네트워크 상에서 가상의 공간을 나누고, 중요 소프트웨어나 가상 OS를 올려놓는 것도 가능하기 때문이다. 결국 물리적인 서버는 최소화되고, 데이터센터에 대한 유지관리는 AWS와 같은 거대 데이터센터가 책임지게되는 구조가 되는 것이다.
-
가상화가 가져오는 흐름은. 모든 소프트웨어와, PC OS의 가상화는 물론이고. 물리 기기의 스펙이 별로 크게 않아도 문제가 없는 환경을 만들어낸다. 결국 거대 클라우드 서비스를 제공할 수 있는 데이터 센터의 건립이 필수가 되고, 5G와같은 초고속 인터넷망에 대한 수요가 계속해서 높아질 수 밖에 없다. 개별 하드웨어에 들어갈 수 있는 용량이 적어져야하다보니, 모든 프로그램들은 경량화되어가는 추세를 가질 것이다. 또한 기존 / 신규 프로그램은 웹 상에 클라우드화되기 위해 웹 언어를 기반으로 만들어질 것이고, 자연스럽게 하드웨어를 위한 언어보다 웹 언어 기반의 개발능력이 요구될 것이다. 디자인 역시도 웹 기반의 서비스들에 대한, 웹언어를 이해하고있는 사람들을 필요로할 수 밖에 없다.
이 내용은 UI 디자인 연구소 - 단톡방에 올려진 자료를 정리하여 만들어진 컨텐츠입니다.
저희 단톡방은 잡담이 불가능한 방입니다. 단톡방에 들어오시려는 분은 - 이용안내문을 꼭 확인해주세요!
단톡방 이용안내
https://brunch.co.kr/@clay1987/113