What is cloud computing?
Cloud computing in its simplest form can be defined as an ability that allows users to access computing resources (think storage , servers ) and/or applications – anything ranging from ERP applications, email, accounting software (Tax preparation) - from anywhere on the internet.
Key characteristics of cloud computing architecture are
-Virtualization of infrastructure and services
-Elasticity (increase or decrease of computing resources on demand)
-Availability and reliability.
-Flexibility and Agility
-Pay as you grow (aka pay for what you use)
What are various Cloud Service Models?
Cloud Service providers offer services from complete infrastructures services to specialized business processes.
Across all cloud service models the key common characteristic is that users of the cloud service will only be aware of the service and its use. They have no need to understand details or manage the underlying infrastructure, technology, software or implementation of that service.
The Cloud computing abstracts complexity and virtualizes all components involved in the service from the end user/organization.
Business Process as a Service - Business Process as a Service (BPaaS) is when an external party is assigned the responsibility of managing a business process, for instance letting a third party (ex:
Equifax) take care of credit check on customers for you. All we have to do is call the web service using API’s and gets the response back as “good or bad” .The services are available over network and the organization only pays as it uses them and not having to build their own system or services for doing credit checks.
Software as a Service - Software as a Service (SaaS) is the entire application software (ex:
Salesforce.com CRM) hosted by a provider in remote datacenter and made accessible to end users over a WAN. The service can be deployed quickly and users only pay as they go model.
Upfront capital and development expenditure is not incurred and user organizations do not manage and maintain the host application.
Platform as a Service - Platform as a Service (PaaS), provides a development environment where users can deploy, build and test their applications. It includes both hardware and software components needed to create a platform for development. Organization consuming this service model can do so without having to worry about the cost, complexity and time constraints to create such a platform for development and testing.
Infrastructure as a Service - Infrastructure as a Service (IaaS) is the most basic service model that provides hardware such as servers, storage. With IaaS, a consuming organization can run all applications without having to set-up and manage their own in-house data centers. This service model is actually the most matured offering today and a common example will be
Amazon’s Elastic Compute Cloud,( EC2) an IaaS—where organizations can rent servers, storage and run their own applications.
What are various Cloud Computing Deployment Models?
Just as there are various Cloud service models, we can find different types of cloud deployment offerings by providers in the market – Public clouds,
Private clouds and Hybrid (this one is very interesting). Depending on multiple factors such as security requirements, Network access, Reliability, IT Staff
Skills, Cost organization can choose a specific deployment model to suit its requirements.
Private Cloud. – This is a deployment where cloud infrastructure is operated for a single organization. The organization can choose to host it in-house in their own datacenter or lease it at a third party remote location. The key here is it is not a multi-tenant environment and is more of a dedicated model. This model is best suited to allay concerns of security, ownership & control. Public cloud –This deployment model is kind of opposite of private, where all