Cloud computing has become a standard way of doing business, perfectly suited for all types and sizes of companies. The cloud is no longer a future concept or a special computing model only appropriate for tech-savvy companies. Perhaps, many companies today are using the cloud without realizing It.
For instance, when a company subscribes to online services such as Dropbox, Box, Gmail, Office 365, or SalesForce, it simply means that it is already “in the cloud” unknowingly.
In the early days, customers were attracted by the lower costs and reduced complexity of cloud computing. Few customers, especially with sensitive data, were willing to take the risk of moving critical applications and data into the cloud. But, the cloud has come a long way in the last ten years.
Today, over 80% of enterprise customers use at least one cloud-based service, and adoption is rapidly growing in both percentage of penetration and the number of cloud workloads in use.
Unlike traditional computing, the cloud has numerous advantages, and the top benefits are as follows:
- Data access can be anytime, anywhere, and anyhow through omnichannel access.
- There is no need to purchase powerful and expensive equipment to use cloud computing since all the processing is not at the local computer but in the cloud.
- The “pay as you go” operational expenditure (OpEx) model is based on-demand/utility computing.
- Reduced capital expenditure (CapEx) on hardware and software licenses.
- Offers agile design, development, and rollout tools and services at low cost.
- Better and reliable load balancing.
Cloud offers several cloud computing service models and sub-models as well as four deployment models. Based on the control and sharing of physical or virtual resources, the following four deployment models are the primary models on which the cloud service models are based.
- Public cloud: It is the most common deployment model that allows systems and services to be potentially accessible to any customer. It can be owned, managed, and operated by an individual, business, academic, or government organization. Public cloud has very broad boundaries, and it exists on the premises of the cloud service provider. Examples include Amazon AWS, Google G Suite and Microsoft Azure, and Office 365.
- Private cloud: It allows systems and services to be accessible exclusively within an organization. It offers increased security because of its private nature. Private cloud seeks to set a narrowly controlled boundary around the private cloud based on limiting the customers to a single organization. It is less common but popular with very large organizations that want more control over the cloud infrastructure.
- Community cloud: It allows systems and services to be accessible and shared by a group of organizations, which have a shared set of mission, goal, policy, and information security requirements. Community cloud is most popular in government or law enforcement scenarios where there is a need to share data and resources across similar agencies and a requirement to isolate the environment from public access.
- Hybrid cloud: It is a mixture of public and private clouds in which the critical activities are performed using the private cloud, while the non-critical activities are performed using the public cloud. Hybrid cloud is becoming more popular as organizations look to leverage existing data center resources wrapped as private cloud services set up to interact with public cloud services such as a SaaS email service or an IaaS virtual machine.
Cloud mainly has three most common cloud service models: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS).
1. Infrastructure as a Service (IaaS)
IaaS provides access to processing, storage, networks, and other fundamental computing resources such as virtual machines, virtual storage, virtual local area network (VLANs), load balancers, IP addresses, and software bundles, where the consumer can deploy and run operating systems, arbitrary software, and applications. The consumer does not manage/control the underlying cloud infrastructure, but has control over the operating systems, deployed applications, and storage with possibly limited control of select networking components (e.g., host firewalls).
Characteristics of IaaS
- Resources are available as a service
- Services are highly scalable
- Dynamic and flexible. On-demand availability of resources.
- GUI and API-based access
- Automated administrative tasks
- Virtual machines with pre-installed software and operating systems such as Windows, Linux, and Solaris.
Key benefits of IaaS
- Full control of the resources through administrative access to virtual machines.
- Flexible and efficient renting of computer hardware.
- Portability, interoperability with legacy applications.
- Allows storing copies of particular data in different locations.
- Resources can be easily scaled up and down.
- Provides a virtual data center to store data and create platforms for app development, testing, and deployment.
2. Platform as a Service (PaaS)
PaaS, used by developers, provides an integrated development and runtime platform for creating, deploying, and managing custom applications in the cloud. It provides the capability to deploy consumer-created or acquired applications, created using programming languages and tools, onto the cloud infrastructure. The platform provides elasticity, efficiency, and automated workload management based on the standardization and automation of a common set of topologies and software components. A PaaS environment dynamically adjusts workload and infrastructure characteristics to meet existing business priorities and SLAs.
Characteristics of PaaS
- It provides built-in security, scalability, and web service interfaces.
- It is accessible to various users via the same development application.
- Offers browser-based development environment, allowing the developer to create the database and edit the application code via Application Programming Interface or point-and-click tools.
- Provides built-in tools for defining workflow and approval processes and defining business rules.
- Integrates with web services and databases.
- Provides web services interfaces, allowing to connect the applications outside the platform.
- Support multiple languages and frameworks.
- Provides an ability to “Auto-scale.”
Key benefits of PaaS
- Provides a ready-deployed software stack that caters to the development and deployment of custom applications in a cloud computing environment.
- Eliminates developers’ need to work at the image-level, enabling developers to completely focus on application development.
- Helps reduce software design steps and enable faster time-to-market using predefined workload patterns.
- Lower administrative overhead because the administration is the responsibility of the cloud provider.
- Lower total cost of ownership since the consumer need not purchase expensive hardware, servers, power, and data storage.
- Very easy to automatically scale up or down based on application resource demands.
- It provides more current system software since it is the cloud provider’s responsibility to maintain software versions and patch installations.
3. Software as a Service (SaaS)
SaaS is the cloud computing equivalent of buying a packaged application. It involves acquiring a complete application or business service that typically requires minimal configuration before it is ready for use. It allows businesses to benefit from the “pay-as-you-go” (consumption-based model for software), eliminating many of the high start-up costs for initial licensing and software installation delivered in a traditional model. The applications are accessible from various client devices through a thin client interface such as a web browser.
Characteristics of SaaS
- SaaS makes the software available over the Internet.
- The services are purchased on the pay-as-per-use basis
- Software is maintained by the vendor rather than where it is running.
- The license to the software is subscription-based or usage-based. And it is billed on a recurring basis.
- SaaS applications are cost-effective since they do not require any maintenance on the end-user side.
- They are available on demand.
- They are automatically upgraded and updated.
- They can be scaled up or down on demand.
- SaaS offers a shared data model. Therefore, multiple users can share a single instance of infrastructure.
- All users are running the same version of the software.
Key benefits of SaaS
- Highly scalable
- Provide customers complete freedom and flexibility to choose what is best for their company.
- Deployment requires a little or no client-side software installation, resulting in no requirement for complex software packages and little or no configuration risk.
- Efficient use of software licenses
- Centralized management and data
- Platform responsibilities managed by the provider
- Multitenant solutions that allow multiple users to share a single instance of resources in virtual isolation.
- Provides web software and apps to complete business tasks.
- Provides software as a service to the end-users.
In addition to these cloud service models, numerous sub-models are being offered by cloud service providers. They are as follows:
- Communications as a Service (CaaS): This model includes real-time communications, interaction, and collaboration services and can be delivered as PaaS or SaaS. Microsoft’s Skype for Business is an example of this type of service.
- Compute as a Service (CompaaS): It deals with the provisioning and the use of processing resources needed to deploy and run the software. This service is delivered as IaaS and is actually the original cloud service model. In the early days of Amazon’s EC2 offering, customers could buy raw compute power or server capacity and be billed using a consumption-based model.
- Data Storage as a Service (DSaaS): It is a data management strategy that uses IaaS, PaaS, or SaaS to deliver data storage, integration, processing, and/or analytics services via a network connection. The most common examples of DSaaS are virtual data storage offerings such as Dropbox, Box, Google Drive, and Microsoft OneDrive. In each case, customers can connect to the cloud service and use the cloud to store files.
- Network as a Service (NaaS): It offers a network as a utility. It uses virtualized network infrastructure to provide safe and secure network services to consumers. It is delivered as IaaS, PaaS or SaaS, and can address network enhancement, security, and bandwidth challenges. A common example of NaaS is a virtual private network (VPN) service.
- Identity-as-a-Service (IDaaS): It offers management of identity (information) as a digital entity. IDaaS enables companies to remember and manage the different usernames and password combinations for accessing multiple servers. It comes in handy when an employee leaves the company, and the company needs to ensure that each of the user’s accounts has been disabled. Several identity services have been deployed to validate services, such as validating websites, transactions, transaction participants, clients, etc.