퍼블릭 및 프라이빗 클라우드 장점 불구, 까다로운 조건 많아
복잡성 해결, 자동화, 추상화, 인프라 리엔지니어링, 보안과 제어 등
[애플경제 김홍기 기자] 복잡한 ICT환경에서 하이브리드 클라우드는 클라우드 기능의 효율성을 극대화하기 위한 방안으로 인식되고 있다. 하이브리드 클라우드는 퍼블릭 클라우드와 프라이빗 클라우드를 병행하는 것으로 날로 이를 도입하는 기업들이 확산되고 있다. 그러나 하이브리드 클라우드를 도입 내지 선택하기 위해선 반드시 사전에 고려해야 하거나, 도입 후 실행해야 할 조건들이 많다는게 전문가들의 견해다.
‘플렉스라(Flexera) 스테이드 오브 더 크라우드’의 보고서에 따르면 조사 대상 기업이나 조직의 82%가 하이브리드 클라우드를 선택하고 있는 것으로 나타났다. 알려져있듯이, 하이브리드 클라우드는 퍼블릭 클라우드의 대용량과 다양한 서비스를 활용하면서도, 민감하고 중요한 데이터나 프로세싱을 보호, 통제할 수 있다는게 장점이다.
이런 진단을 바탕으로 하이브리드 클라우드의 조건을 분석, 보도한 ‘IT프로포탈’은 “특정 기업이나 조직에 하이브리드 클라우드가 적합한지를 판단하기 위해선, 과연 해당 기업이나 조직에 그로 인해 어떤 이익을 줄 것인지, 반대로 어떤 부담이나 위험을 안겨줄 것인지를 분석해야 한다.”면서 “이를 위해선 먼저 기존의 퍼블릭 및 프라이빗 클라우드로 인해 발생했던 이익이나 부담을 판단하고, 그 둘을 결합한 하이브리드 클라우드가 갖는 이익과 단점을 동시에 감안해야 할 것”이라고 해 관심을 끌고 있다.
▲퍼블릭 클라우드=퍼블릭클라우드는 가상화 소프트웨어를 사용하여 방대한 수의 서버를 추상화하고, 소프트웨어 로드 밸런서, 데이터베이스, 메시징 등과 같은 기타 API 기반 서비스를 제공한다. 이에 비해 멀티 클라우드(하이브리드 클라우드와 달리)는 퍼블릭 클라우드 서비스를 조합한 것이다. 플랫폼으로서 퍼블릭 클라우드는 매우 크고 탄력적인 용량이다. 즉 사용량에 따른 비용 지불 모델, 플랫폼 유지보수 및 업그레이드의 아웃소싱 등 다양한 서비스를 자랑한다.
실제로 현존하는 가장 큰 퍼블릭 클라우드인 AWS에서 사용하는 일반적인 데이터 센터에는 5만에서 8만 대의 물리적 서버가 있다. 아마존은 현재 그만한 규모의 데이터 센터를 81개나 가지고 있다. 제공되는 스토리지는 천문학적인 규모이며, 대부분의 기업의 입장에선 사실상 무한 확장이 가능한 수준이다. 그래서 많은 기업들이 대부분은 퍼블릭 클라우드와 프라이빗 클라우드를 모두 활용하고 있다.
보안과 개인 정보 보호 차원에서 보면, 퍼블릭 클라우드는 특별한 합의가 이루어지지 않는 한, 비용 절감을 위해 ‘분리(Shared) IT 인프라’를 사용한다. 이는 그러나 중요한 워크로드가 알려지지 않았거나, 잠재적으로 위험한 워크로드와 동일한 물리적 메모리에서 실행되기 때문에 보안 문제로 이어질 수도 있다. 마찬가지로 클라우드 스토리지는 공유 하드웨어에 저장되는 경우가 가장 많다.
통제의 측면에서 보면, IT 인프라의 아웃소싱은 운영상의 조건이 일반적이고 까다롭지 않은 경우엔 효율적일 수 있다. 그러나 퍼블릭 클라우드는 운영에 대한 제어나 가시성을 제한하는 공급업체의 판단에 맡기는 방식이다. 간단한 ‘CRUD 웹’ 응용 프로그램을 실행하는 경우엔 그다지 문제가 되지 않는다. 하지만, 네트워크 아키텍처가 복잡하고 까다로운 고객이라면 매우 중요한 리스크가 발생할 수도 있다.
외부 공격에 대한 취약성 측면에서도 퍼블릭 클라우드는 문제가 있다. 우선 이는 불특정 다수의 대중에게 노출되어 있다는게 문제다. 이에 비해 기존의 현장 환경에서 실행되는 애플리케이션은 한층 제한적인 공공 액세스 정책을 활용할 수 있다. 그러나 AWS, 애저(Azure), GCP 등은 해커나 각종 사이버 위협에 매우 취약하다고 할 수 있다.
▲프라이빗 클라우드=프라이빗 클라우드는 프라이빗 데이터 센터나 랩에서 실행되는 클라우드 소프트웨어에 의해 추상화된 서버 및 스토리지다. 프라이빗 클라우드를 사용하면 인프라를 유지 보수 및 업그레이드해야 하는 부담과 함께, 제어 권한을 유지하면서도 가상화를 통해 사용자에게 어느 정도의 유연성을 제공할 수 있다.
대표적인 공급업체로는 ‘VMware’와 ‘Openstack’이 있다. 프라이빗 클라우드는 사내에서 애플리케이션을 실행하는 것과 마찬가지로 편리하다. 특히 보안과 제어 기능은 한층 뛰어나다. 정체 모를 위협과 공유되는 인프라가 없으며, 액세스를 임의로 엄격하게 제어할 수 있으며 워크로드, 업그레이드 및 운영 정책의 우선 순위를 비즈니스에서 완벽하게 정의할 수 있다.
규모의 측면에서 보면 프라이빗 인프라는 비휘발성 리소스 사용 프로필을 사용하여 실행되는 애플리케이션이 장점이다. 이를 충당하기에 충분한 자원을 계획하고 구입할 수도 있다. 그러나 스파이크가 큰 워크로드는 문제가 될 수 있다. 이로 인해 고객의 대기 시간이 길어지거나 운영 중단이 발생할 수 있다. 대부분의 시간을 유휴 상태로 있는 희귀 이벤트에 대해 개인 리소스를 확장하는 것은 매우 비효율적이다.
프라이빗 클라우드 인프라의 소유나 운영은 서비스 수요에 관계없이 고정 비용이 많이 든다. IT를 퍼블릭 클라우드로 오프로드하는 주요 요인 중 하나는 ‘사용량에 대한 비용만 지불하는’ 모델이기 때문이다. 이런 경우 IT 인프라는 사용량에 따라 비용을 탄력적으로 조정할 수 있고, 잘 숙지된 서비스 수준에 대한 계약에 따라 업그레이드되거나, 패치된다.
유연성 측면에서 보면 프라이빗 클라우드는 컴퓨팅 리소스에 대한 자본 투자가 많이 들 수 밖에 없다. 그러므로 실현되지 않은 미래의 수요를 정확하게 추정하고 계획에 반영하려는 노력을 많이 기울이는 편이다. 그러나 미래 예측은 흔히 잘 들어맞지 않을 수도 있다. 이에 비한다면 퍼블릭 클라우드는 끊임없이 변화하는 요구에 대응하려는 비즈니스 과정에 적합한 다양한 기술과 플랫폼을 제공한다는 점이 비교된다.
▲하이브리드 클라우드=하이브리드 클라우드 접근 방식은 퍼블릭 클라우드와 프라이빗 클라우드의 이점을 결합하여 각각의 이점을 활용하려고 한다. 더 높은 수준의 보안이나 운영 제어가 필요한 애플리케이션은 프라이빗 클라우드에서 운영되는 반면, 더 높은 수준의 확장이 필요한 애플리케이션은 퍼블릭 클라우드에서 실행된다. 하이브리드 클라우드 애플리케이션도 이런 두 가지 유형의 클라우드의 조건을 모두 충족시킬 수 있다.
그렇다면 하이브리드 클라우드 접근 방식이 이런 이점이 있다면, 이를 무조건 도입하는 것이 과연 좋은 것인가. 이에 대해선 전문가들의 견해가 다양하게 엇갈린다.
우선 ‘복잡성’의 문제다. 모든 다중 클라우드 전략은 단일한 경우보다 더 복잡하기 마련이다. 그러므로 퍼블릭 및 프라이빗 클라우드 플랫폼에 대한 이해가 선행되어야 한다. 하이브리드 애플리케이션에는 사내 서비스와 클라우드 인프라 및 서비스 간의 정교한 조정이 필요할 수 있다. 응용 프로그램 오류를 진단하는 것은 더 복잡하다. 애플리케이션 구성 및 관리도 더 복잡해질 수 있다.
또 클라우드를 위해 기존의 단일 애플리케이션을 재구성하는 것은 상당한 ‘리엔지니어링’ 비용이 들 수 있다. 하이브리드 환경을 완벽하게 활용하기 위해서는 멀티 클라우드를 구축하거나, 업데이트하며 확장 및 복구할 수 있는 가능성이 모두 고려되어야 한다.
현실적으로 하이브리드 클라우드는 가장 단순한 애플리케이션을 제외한 모든 애플리케이션에 대해 정교한 자동화와 조율이 필요하다. 예를 들어 AWS Cloudformation이나, Azure ARM, Google GDM, Openstack HEAT와 같은 정교한 오케스트레이터가 있는 주요 클라우드 플랫폼이 그런 경우다. 또 복잡한 하이브리드 클라우드를 제어하려면 사용하려는 퍼블릭 클라우드와 프라이빗 클라우드를 아우르는 자동화 과정이 필요하다.
또 하이브리드 클라우드를 위해선 다양한 클라우드 플랫폼과 서비스 API, 네트워킹 하드웨어를 기반으로 높은 수준의 추상화를 생성할 수 있어야 한다. ‘IT 프로포탈’은 특히 “운영자에게서 절차적 세부 사항을 추상화하는 선언적 접근법을 사용하여 운영자가 어떻게 수행되어야 하는가에 초점을 맞출 수 있도록 해야 한다”면서 “바람직하기론, 선언적 어휘가 확장 가능해야 하며, 팀에게 의미 있는 추상화를 만들 수 있어야 한다”고 강조했다.
다만 이 경우 이미 보유하고 있는 자동화 템플릿과 통합을 지원하여 바퀴를 재창조할 필요는 없다. 이러한 접근 방식을 통해 기존 리소스를 활용하는 것 외에도 각 플랫폼의 ‘동종 최고의’ 툴도 사용할 수 있다. ‘코드로서의 인프라’ 패턴을 사용할 수 있도록 CI/CD 프로세스에도 참여할 수 있어야 한다. IT프로포탈은 또 “공급업체 사일로에 갇히는 것을 방지하기 위해 상호 작용하는 기본 클라우드 프로바이더를 다룰 때 독립적이어야 하며, 이를 위해 오픈 소스가 바람직하다”고 권장했다.
