클라우드 컴퓨팅의 장점 및 단점
- 11분
클라우드의 이점
클라우드 컴퓨팅의 인기는 개선된 경제성, 간소화된 IT 관리, 확장성, 유연성, 향상된 사용률, 감소된 탄소 발자국을 포함하는 다양한 혜택 때문입니다. 클라우드의 혜택을 개별적으로 살펴보겠습니다.
경제 모델: 조직은 일반적으로 용량 계획이라는 프로세스에서 1~5년 전에 IT 요구 사항을 예측합니다. 조직은 용량 계획을 통해 최대 부하에 필요한 IT 투자를 예측합니다. 그러면 때때로 부하가 예측과 어긋나는 경우 용량이 과도하거나(리소스 사용률이 저조함) 용량 부족으로 서비스 품질이 저하될 수 있습니다. 종량제 경제 모델에서는 조직이 필요한 리소스에 대해서만 비용을 지불합니다. 조직은 더 이상 선행 비용을 지불하거나, 고가의 컴퓨팅 인프라를 구매하는 데 투자하거나, 인프라를 관리하기 위해 반복적으로 비용을 지불할 필요가 없습니다. 이는 스타트업에게 특히 중요합니다. 컴퓨팅 리소스를 임대하기 때문에 제품을 개발하여 출시할 때 선행 비용을 절감하고 출시 기간을 단축할 수 있습니다.
간소화된 IT 관리: 클라우드 서비스 사용자는 IT 리소스를 설정, 운영 및 유지 관리하는 데 시간과 리소스를 할당할 필요가 없습니다. 그러나 클라우드 공급자는 클라이언트를 유치하기 위해 경쟁해야 하므로 서비스를 고가용성으로 관리 및 유지 관리하기 위해 상당한 금액을 리소스에 투자합니다.
확장성: 기존의 사내 컴퓨팅 환경에서 조직은 IT 인프라를 조달, 설정 및 운영하는 데 며칠에서 몇 달까지 걸릴 수 있습니다. 클라우드 서비스 공급자는 몇 시간 또는 몇 분 이내에 클라이언트에게 임대 컴퓨팅 리소스를 프로비전합니다. 클라이언트는 주문형으로 리소스를 확장할 수 있을 뿐만 아니라, 수요가 적은 기간에는 축소하여 비용을 절감할 수 있습니다. 따라서 클라우드는 변화하는 워크로드에 맞게 동적으로 또는 프로그래밍 방식으로 리소스를 프로비전하거나 프로비전 해제할 수 있는 탄력성이라는 중요한 속성을 지원합니다. 탄력성을 지원하기 위해 많은 클라우드 서비스 공급자는 수요 변화에 따라 리소스 프로비전을 동적으로 변경할 수 있는 자동 크기 조정 솔루션을 제공합니다.
유연성: 특정 클라우드 서비스의 경우 공급자는 사용 가능한 모든 운영 체제에서 실행되도록 소프트웨어 플랫폼을 사용자 지정 프로비전된 임대 인프라의 가상화된 이미지로 구성할 수 있는 유연성을 사용자에게 제공합니다. 클라우드를 통해 조직은 특정 개발 플랫폼 및 인프라에 매여 경직된 IT 설계 의사 결정을 보다 유연하고 탄력적인 모듈식 선택으로 전환할 수 있습니다.
사용률 향상: 물리적 리소스가 사용자 간에 공유되기 때문에 클라우드 컴퓨팅에서 리소스 사용률이 크게 향상되었습니다(다중 테넌트). 이제 서버는 가상화를 통해 동일한 시스템 리소스를 공유하는 운영 체제 이미지로 통합됩니다. 따라서 사용률이 향상되어 전반적인 전력 및 냉방 비용 절감으로 이어지고 탄소 발자국이 감소합니다.
신속한 글로벌 배포: 글로벌 데이터 센터가 있는 클라우드 서비스 공급자의 서비스를 채택하면 신생 기업은 전 세계 대상 그룹에 애플리케이션 및 서비스를 신속하게 배포하여 기존 플레이어와 경쟁할 수 있습니다. 이는 서비스가 여러 국가/지역에서 인기를 얻는 바이럴 성장 추세를 보일 수 있는 소셜 미디어 스타트업에 특히 중요합니다.
클라우드 컴퓨팅의 위험
클라우드 서비스를 수용함으로써 사용자와 조직은 다양한 이점을 활용할 수 있습니다. 그러나 이러한 서비스를 사용하면 다음과 같은 위험도 수반됩니다.
공급업체 잠금: 주요 클라우드 공급업체의 클라우드 컴퓨팅 플랫폼은 대부분 독점입니다. 표준화가 결여되면, 예를 들어 클라이언트가 클라우드 서비스에 등록하고 애플리케이션을 개발하며 데이터를 배포할 때 공급업체 잠금 상황이 발생할 수 있습니다. 표준화가 결여되면 클라이언트가 다른 클라우드 플랫폼으로 원활하게 이동할 수 없습니다. 클라이언트에게는 타사 클라우드 마이그레이션 전문가 또는 애플리케이션을 다른 플랫폼으로 이동하는 추가 서비스가 종종 필요합니다.
보안 위험: 퍼블릭 클라우드를 사용하는 클라우드 컴퓨팅으로 인해 조직의 데이터가 4개의 벽 너머로 배송될 수 있으므로 보안이 주요 위험과 관심사가 됩니다. 특정 분야에서는 사용자 또는 조직이 퍼블릭 클라우드를 사용하는 것이 허용되지 않습니다. 이 경우 사설 클라우드를 구축하거나 요구 사항에 맞게 액세스가 제한되는 리소스를 소유해야 할 수 있습니다. 그러나 보안 요구 사항이 엄격한 특정 시장에는 틈새 솔루션이 있습니다. 예를 들면 데이터 보안 및 무결성에 대한 미국 연방 정부 요구 사항을 충족하는 Amazon GovCloud가 있습니다. GovCloud는 Amazon에서 공용으로 제공하는 다른 클라우드 인프라와 물리적으로 구별되므로 노출을 줄일 수 있습니다. Azure Government는 Azure에서 동일한 역할을 수행합니다.
개인 정보 보호 위험: 클라우드를 사용하면 개인 정보 관련 문제도 많이 발생합니다. 클라우드 서비스 공급자를 관할하는 법률에 따라, 정부는 클라이언트의 명시적 동의 또는 알림 없이 공급자에서 데이터를 검색하고 점유할 수 있습니다. 또한 퍼블릭 클라우드를 사용하는 경우 클라이언트가 데이터 기밀성을 완벽하게 보장받을 수 없습니다. 이 모듈의 뒷부분에서 클라우드 컴퓨팅과 관련된 몇 가지 보안 위험에 대해 설명합니다.
안정성 위험: 클라우드조차도 안정성 문제에 면역이 되지 않습니다. 지난 2012년 12월 Amazon의 버지니아 서버에서 발생한 “연결 문제 및 성능 저하” 때문에 Netflix 사용자는 서비스 중단을 경험했습니다. Amazon EC2의 북부 버지니아 데이터 센터는 2011년 며칠 동안 다운되어 Reddit이나 Foursquare 같은 웹 사이트에 영향을 미쳤습니다. Microsoft Azure 역시 유사한 문제가 발생하여 서유럽에서 서비스가 2시간 반 동안 중단된 적이 있습니다. 퍼블릭 클라우드는 조직에 영향을 미칠 수 있는 잠재적인 안정성 위험을 안고 있습니다. 클라이언트는 장애를 대비하여 설계해야 하고, 가용성 영역과 같은 기능을 사용해야 합니다. 그러면 클라이언트가 장애 조치(failover)를 사용하고 장애 발생 시 전환할 수 있는 중복 인프라를 설정할 수 있습니다. 물론 여기에는 비용이 수반됩니다. 클라우드 사용자는 클라우드 안정성 위험을 완화하기 위한 시도로 이러한 이벤트에 노출될 때 보상할 수 있는 SLA(서비스 수준 계약)에 서명합니다. 클라우드 서비스는 네트워크를 통해 액세스할 수 있기 때문에 연결 중단으로 인해 애플리케이션에 장애가 발생하면 평판 손상 및/또는 매출 손실로 이어질 수 있습니다.
이러한 위험 중 일부는 클라우드 컴퓨팅에만 국한된 것은 아니지만 일반적으로 은행 서비스든 의료 서비스든 서비스 공급자에게는 일반적인 것입니다. 클라우드 서비스 공급자는 이러한 위험의 영향을 신중하게 고려하고 이를 완화하도록 솔루션을 설계해야 합니다. 신뢰성과 명성이 채택률에 직접적인 영향을 미치기 때문입니다. 자체 서비스를 제공하는 클라우드 사용자는 이러한 위험으로부터 자신의 명성도 보호해야 합니다.
클라우드 컴퓨팅의 과제
이점 및 위험과 함께 클라우드 컴퓨팅 채택과 관련된 몇 가지 과제가 있습니다.
애플리케이션 엔지니어링 및 개발: 클라우드는 기본적으로 동적으로 확장 가능한 주문형 인프라를 약속합니다. 그러나 클라우드를 프로그래밍하는 것은 단일 컴퓨터에 대한 코드를 작성하는 것보다 더 복잡합니다. MapReduce, Spark, GraphLab과 같은 새로운 프로그래밍 패러다임을 공급자 API와 결합하여 인프라를 관리하면 개발자가 복잡성을 관리하는 데 도움이 되지만 여전히 학습 곡선이 제기됩니다. 또한 클라우드 경험을 보유한 숙련된 개발자는 여전히 드물고 수요는 높습니다. 마지막으로, 클라우드 프로그래밍 모델 및 API는 지속적으로 진화하고 있으며, 이로 인해 엔지니어링 및 개발 비용이 계속 추가될 수 있습니다.
데이터 이동: 퍼블릭 클라우드를 사용하려면 일반적으로 인터넷을 통해 클라우드에 연결해야 합니다. 이러한 요구 사항 때문에 클라우드에서 데이터를 이동하는 것은 조직의 LAN(Local Area Network)을 사용할 때보다 훨씬 느립니다. 클라우드에서 애플리케이션이 대량 데이터(빅 데이터)를 대상으로 할 수 있지만 데이터 이동이 클라우드 채택에서 제약 요인이 될 수 있습니다. 예를 들어 Amazon 및 Microsoft는 클라이언트가 무료로 대량 데이터 세트를 업로드하거나 하드 디스크를 운송하여 해당 데이터를 클라우드에 로드할 수 있도록 허용합니다.
서비스 품질(QoS): 앞에서 설명한 것처럼 클라우드 인프라는 일반적으로 많은 사용자 간에 공유됩니다. 이 공유는 클라우드 공급자가 클라이언트에 QoS 보증을 제공할 때 어려운 과제를 안겨줍니다. 이러한 과제 때문에 성능에 민감한 특정 애플리케이션이 클라우드로 마이그레이션하지 않을 수 있습니다. 클라우드의 QoS는 클라우드 연구에서 중요한 영역입니다. 예를 들어 특정 가상 머신에 대한 I/O 대역폭 규제는 중요한 애플리케이션에 예측 가능한 성능을 제공할 수 있습니다.