소프트웨어, 저장 공간, 컴퓨터 작업의 아웃소싱의 한 종류이고, 이것을 통해 사용자는 인터넷 연결이 가능한 어떠한 기기에서도 애플리케이션과 파일에 접근이 가능하다. 클라우드 컴퓨팅을 이용하면, 라이센스를 구입하지 않고 소프트웨어나 서비스 환경을 구축할 수 있고, 클라우드 컴퓨팅 사업자에 의해 애플리케이션과 보안의 업데이트가 이루어짐으로 이용자는 그 부분에 대해 신경 쓰지 않아도 된다. 또한 빌리는 컴퓨터의 용량은 비즈니스에서 필요할 때마다, 줄이거나 늘릴 수 있다. 실시간으로 위치에 상관없이 협업도 가능해진다.
클라우드 컴퓨팅이 생겨나고 난 후, 달라진 회사의 모습
Large servers - 회사들이 서버를 직접 가지고 있을 필요가 없어짐
Dedicated in-house IT support - 클라우드 컴퓨팅 사업자가 관리함으로 사내 IT 전담 직원이 많이는 필요없어짐
Data storage devices - 직원들이 일일이 데이터들을 백업할 필요가 없어짐
Limited geographic access - 지역과 시간에 업무가 구애받지 않는다.
Outdated off-the-shelf software - 로컬 환경을 구축하면 소프트웨어의 라이센스를 새 버전이 나올 때마다 구입해야 한다. 그리고 구입한 소프트웨어를 사내의 모든 기기에 설치해야 한다. 이러한 과정은 클라우드 컴퓨팅에서 필요 없다.
Information loss - 로컬에 저장된 데이터는 유실될 위험이 크지만, 클라우드에 저장된 데이터는 멀티 세이프가드가 있어 비교적 안전하다.
Duplicate versions of documents - 하나의 파일을 클라우드 환경에서 한 번에 수정함으로, 최신 버전을 만들어서 따로 이메일로 공유하는 과정을 거치지 않아도 된다.
클라우드 컴퓨팅이 왜 더 좋은가?
Accessible from anywhere - 데이터와 애플리케이션이 하나의 디바이스에 묶이지 않고, 어디에서 언제나 멀리 떨어진 팀끼리도 협업이 가능해진다.
Flexible and scalable - 클라우드 컴퓨팅 애플리케이션은 사용자의 요구 변화에 따라 전력, 스토리지, 대역폭을 쉽게 늘릴 수 있다.
Cost-effective - 월 구독료만 내면 되고, 어떠한 하드웨어를 구입하거나 혹은 전기세를 낼 필요가 없다.
Hassle-free updates - 웹 기반 소프트웨어는 지속적으로 업데이트되며, 공급업체는 유지 관리, 백업 및 문제 해결을 처리함.
Fast - 서비스는 최고의 효율과 성능을 위해 지속적으로 업데이트되는 데이터 보안 센터의 글로벌 네트워크망으로 전송된다.
Secure - 보안 프로토콜과 인프라는 새로운 위협을 해결하기 위해 지속적으로 분석 및 업데이트를 한다.
클라우드 컴퓨팅의 종류
어떤 클라우드 서비스 모델을 제공하는가 따른 구분
IaaS(Infrastructure as a service)
- 네트워크 보안과 저장공간 등 제공
- 사내의 개발자들이 필요한 개발환경을 스스로 구축하고, 클라우드에서 회사의 서비스를 테스트하거나 배포함
- pay-as-you-go access
PaaS(Platform as a service)
- 백엔드적인 것은 클라우드 컴퓨팅 업체가 전담하고(infrastructure), 애플리케이션을 만들 수 있는 개발환경(cloud-based environment)을 개발자에게 제공
- 애플리케이션을 테스트, 개발, 배포할 수 있는 도구 제공
- 개발 및 테스트에 큰 처리 능력이 필요한 경우 사용
(로컬 환경에서 많은 고객이 쓰면 어떻게 될지 모르기 때문에 실험 불가)
- 자사에서 운영 중인 애플리케이션의 최대 부하를 분산 처리할 때 사용
서버리스 컴퓨팅
- PaaS와 중첩된 서버리스 컴퓨팅은 필요한 서버와 인프라를 지속해서 관리하는 데 시간을 소비하지 않고 앱 기능을 빌드하는 데 추점을 맞춤. 확장성이 높으며, 이벤트를 기반으로 하여 특정 함수 또는 트리거가 발생하는 경우에만 리소스를 사용
(인프라 프로비저닝 및 관리와 관련된 작업이 개발자에게 보이지 않는다는 사실에서 붙여진 이름 - 서버리스)
SaaS(Software as a service)
- 사용자에게 완벽한 기능의 제품을 제공
(software/application 제공)
(ex.Microsoft Office 365 products, Google Apps, QuickBooks, Dropbox, Zendesk, and Slack)
- 사용자는 제품을 설치할 필요가 없음
- 사용자는 구독을 하고 web 또는 API를 통해 접근
On-premise
- 회사 내에 자체적으로 데이터 센터를 보유
- 시스템 구축, 운용까지 직접 수행하는 형태
클라우드 이용 모델에 따른 구분
프라이빗 클라우드
- 단일 비즈니스 또는 조직에서 독점적으로 사용되는 클라우드 컴퓨팅 리소스
- 회사 내에 배치할 수도 있고(on-premise private cloud), 클라우드 서비스 공급자에게 비용을 지급하고 호스트 하기도 함(hosted private cloud)
- on-premise private cloud - 자사 전용 클라우드 환경 구축, 운용 + 자체적인 보안정책으로 강력한 보완 환경 + 모든 비용 부담
- hosted private cloud - 클라우드 사업자가 기업 사용자별로 클라우드 환경 제공 + 청구되는 비용 지불
- 서비스와 인프라가 개인/기업 네트워크에서 유지 관리됨
- 퍼블릭 클라우드에 비해 규모의 경제를 잃음
커뮤니티 클라우드
- 공통의 목적을 가진 기업/조직들이 클라우드 시스템을 형성하여 데이터 센터에서 공동 운영하는 형태
퍼블릭 클라우드 (ex. AWS, Microsoft, Google)
- 인터넷을 통해 서버 및 스토리지 같은 컴퓨팅 리소스를 제공하는 클라우드 서비스 공급자가 소유하고 운영
- 모든 하드웨어, 소프트웨어 및 기타 지원 인프라를 클라우드 공급자가 소유하고 관리
- 네트워크를 통해 기업, 개인에게 서비스 제공
- 기업, 개인 방화벽 외부에 구축됨
하이브리드 클라우드
- 퍼블릭 클라우드와 프라이빗 클라우드, 커뮤니티 클라우드 간에 데이터와 애플리케이션을 공유할 수 있는 기술로 함께 바인딩됨
- 프라이빗 클라우드가 잃은 규모의 경제를 보존할 수 있는 방법
클라우드 컴퓨팅의 이점
비용 - 하드웨어, 소프트웨어 구입 및 데이터 센터 설치 및 운영 지출 절감
속도 - 주문형 셀프서비스로 제공됨으로, 많은 양의 컴퓨팅 리소스도 쉽고 빠르게 제공받을 수 있다. 기업에 많은 유연성 제공, 용량 계획 부담을 덜 수 있음.
뛰어난 확장성 - 필요한 때에 적절한 지리적 위치에서 대략적인 컴퓨팅 성능, 스토리지, 대역폭 등 적절한 양의 IT 리소스를 제공
생산성 - 클라우드 컴퓨팅을 사용하면, 개발환경 구축 및 관리에 들어가는 작업이 불필요해져 비즈니스 목표에 집중할 수 있음
성능 - 데이터 센터는 최신의 컴퓨팅 하드웨어로 정기적 업그레이드를 하고, 이것은 애플리케이션의 네트워크 대기 시간 단축으로 이어짐
안정성 - 클라우드의 여러 곳에 데이터를 백업시켜 놓을 수 있으므로, 데이터 복구가 쉽고 비용이 덜 들어감
보안 - 클라우드 공급자가 광범위한 정책 집합, 기술 및 컨트롤을 제공하여 앱 및 인프라를 잠재적인 위협으로부터 보호