8.01.1 Summarize cloud-computing concepts Part 1

Introduction 

Think of cloud computing like a toolbox that grows or shrinks depending on the job you need to do. Instead of carrying every tool with you all the time, the cloud gives you instant access to exactly what you need, when you need it.

In this lesson, you’ll explore how cloud services provide businesses with flexible and scalable solutions to solve everyday IT needs. By mastering these concepts, you’ll be prepared to help others choose the right tools to build faster, more efficient systems and handle challenges with ease, ensuring smoother operations for everyone involved. 

Introduction to Cloud Characteristics 

Cloud characteristics are the key features that set cloud provisioning models apart from traditional on-premises or hosted client/server networks.  The biggest difference between a physical or on-premises/hosted machine lies in where the computing resources are located and managed.

In essence, a physical computer is a tangible device you manage yourself, while a cloud computer is a virtual resource managed by a provider offering greater flexibility and accessibility.

What is Cloud Computing? 

Consumer Perspective 

Cloud computing is like renting a super-powerful computer over the Internet instead of owning one yourself.  Cloud computing provides on-demand resources such as servers, file storage, databases, and applications over a network, usually the Internet.

The consumer doesn’t manage the infrastructure but pays for the services they use. This is called metered utilization, where the customer is billed based on their resource usage, like storage, processing power, bandwidth, or the number of active users. A reporting dashboard allows the consumer to monitor their usage and costs transparently.

Provider Perspective 

From the provider's side, running a cloud service is similar to managing a large-scale datacenter. Virtualization is typically used to ensure that resources are quickly and reliably allocated to clients as needed.

Key Benefits of Cloud Computing 

The cloud offers several major benefits, including: 

  • High Availability (HA) 

    This refers to minimal service downtime. A system with 99.999% availability (known as "Five Nines") only experiences about 5 minutes and 15 seconds of downtime annually. This can result from scheduled maintenance or unexpected outages. 

  • Scalability means the system's cost grows at a manageable rate as more users are added. If a system is scalable, doubling the number of users will only double (or less) the cost to maintain the service. There are two ways to scale: 

    • Horizontal scaling (scaling out): Involves adding more nodes (machines or servers) to your cloud infrastructure to handle increased load or demand allowing businesses to grow and adapt their infrastructure seamlessly. 

    • Vertical scaling (scaling up): Involves increasing the capacity of a single machine or server to handle more load.  This may be accomplished by either adding more or upgrading resources (CPU, RAM, storage...) to existing nodes.

  • Rapid Elasticity 

    A highly elastic system can adjust quickly to changes in demand. If the number of users suddenly doubles or triples, the system can handle the load without losing performance. It also reduces costs when demand is lower by automatically reducing resource usage. 

How Cloud Providers Ensure These Benefits 

To achieve high availability, scalability, and elasticity, cloud providers use two main strategies: 

  • Resource Pooling 

    Resources such as hardware, CPU, and memory are shared among multiple customers. No one customer has dedicated hardware in the cloud provider’s datacenter. 

  • Virtualization allows providers to add or reduce resources like CPU, memory, disk space, or network capacity using software, without physically modifying hardware. This enables faster and more efficient provisioning of resources for customers.

Overview of Cloud Deployment Models 

Cloud deployment models define how cloud resources are made available to users and who can access them. Each deployment model offers different benefits and is suited to different needs.  The choice depends on factors like cost, security, scalability, and other specific business requirements.  Below are the main cloud deployment models and when they're best used. 

1. Public Cloud 

  • Description: Public cloud services are provided over the Internet by third-party Cloud Service Providers (CSPs) to multiple customers, referred to as tenants.  Common providers may be AWS, Microsoft Azure, or Google Cloud.  

  • Accessibility: Available to anyone who wants to use or purchase the services. 

  • Payment Options

    • Subscription or pay-as-you-go models, making it cost-effective for many users. 

    • Some CSPs offer free lower-tier services for basic usage. 

  • Scalability: Highly scalable with virtually unlimited resources. 

  • Risks: Shared resources mean potential concerns about: 

    • Performance (slower during high demand). 

    • Security (data may be vulnerable on shared infrastructure). 

  • Best Used For

    • Businesses that need a cost-effective solution. 

    • Organizations with less stringent security and control needs. 

    • Companies that can handle variable performance based on shared resources. 

    • Business wishing to utilize multicloud strategy: where an organization uses services from multiple CSPs, distributing workloads for redundancy or flexibility.

2. Private Cloud 

  • Description: A private cloud is fully owned and operated by a single organization, providing maximum control over resources and security. 

  • Accessibility: Access is restricted to the organization’s members.  Typically, one business unit manages the cloud infrastructure, while other departments use its services. 

  • Payment OptionsSubscription or Contract.  Higher initial costs due to dedicated infrastructure but can be more cost-effective in the long run for large organizations. 

  • Scalability: Scalable but limited by the organization’s own resources. 

  • Best Used For

    • Organizations that need strict control over security and compliance

    • Industries like banking, healthcare, and where data privacy and regulatory compliance are critical. 

    • Businesses that require customized infrastructure to meet specific operational needs.

3. Community Cloud 

  • Description: A community cloud is a shared infrastructure for a specific community of users or several organizations, pooling resources for common concerns like security, compliance or standardization

  • Accessibility: Access is restricted to the community members or specific organizations. 

  • Payment Options: Costs are shared among the participating organizations, making it more affordable. 

  • Scalability: Scalable within limits of the shared infrastructure.  

  • Best Used For

    • Industries with shared compliance or regulatory requirements, such as research organizations, universities, Government, or healthcare institutions

    • Situations where multiple organizations can benefit from common security standards.

4. Hybrid Cloud 

  • Description: A hybrid cloud combines public, private, or community cloud elements to provide flexibility in managing resources, cost and allowing data and applications to be shared between them. 

  • Best Used For

    • Businesses with variable workloads that need to scale resources quickly and cost-effectively. 

    • Organizations that need to keep sensitive data on-premises for regulatory compliance but want to use the public cloud for less sensitive operations. 

    • Companies with seasonal demand spikes, like retailers during holiday seasons. 

Examples

  • A company might run routine operations on a private cloud but switch to a public cloud during high-demand periods (e.g., holidays or promotional events). 

  • Sensitive data or critical applications might be stored in on-premises infrastructure, while non-sensitive services run on a public cloud to save costs.

Summary of Best Use Cases 

  • Public Cloud: Best for cost-effective, scalable solutions with less control and security concerns. 

  • Private Cloud: Ideal for organizations requiring high control, security, and regulatory compliance. 

  • Community Cloud: Suitable for industries with shared compliance and regulatory needs. 

  • Hybrid Cloud: Perfect for businesses needing flexibility between cost-saving public cloud and secure private or on-premises solutions.

Overview of Common Cloud Service Models 

Cloud service models are categorized based on the level of complexity and preconfiguration they offer. The most common models include Infrastructure as a Service (IaaS), Software as a Service (SaaS), Platform as a Service (PaaS), and Desktop as a Service (DaaS).

1. Infrastructure as a Service (IaaS) 

  • Definition: IaaS allows businesses to provision IT resources like servers, load balancers, and storage quickly, without purchasing hardware. These resources are accessed through the service provider’s datacenter. 

  • Key Features

    • No need to buy physical infrastructure components. 

    • Resources such as servers, networks, and storage are available on demand.

Examples

  • Amazon Elastic Compute Cloud (EC2): Provides virtual servers for scalable computing. 

  • Microsoft Azure Virtual Machines: Offers virtualized computing environments. 

  • OpenStack: An open-source cloud platform for building and managing IaaS clouds.

  • Best Used For

    • Organizations needing scalable, flexible IT infrastructure. 

    • Businesses that want to avoid the capital expense of buying physical hardware. 

    • Companies with rapidly changing or unpredictable resource needs.

2. Software as a Service (SaaS) 

  • Definition: SaaS provides software applications over the internet on a pay-as-you-go basis, removing the need for businesses to install or maintain the software locally. 

  • Key Features

    • Software is hosted on the supplier’s servers. 

    • No need to purchase software licenses for each user. 

    • Developers can provision, test, and deploy applications quickly in the cloud. 

Examples

  • Microsoft 365: Cloud-based office productivity suite. 

  • Salesforce: A customer relationship management (CRM) platform. 

  • Google Workspace: A suite of productivity and collaboration tools.

Best Used For

  • Businesses looking to lower upfront software costs. 

  • Organizations that want to eliminate the need for ongoing software maintenance. 

  • Teams needing easy access to applications from any location with an internet connection.

3. Platform as a Service (PaaS) 

  • Definition: PaaS provides a platform that includes infrastructure like servers and storage but also offers a ready-to-use environment for developers to build, test, and deploy applications. 

  • Key Features

    • Includes infrastructure (like IaaS) but with added tools for app development. 

    • The provider ensures the availability and maintenance of the platform. 

    • Developers are responsible for creating and securing their own applications on the platform. 

Examples

  • Oracle Database: Cloud-based platform for database management. 

  • Microsoft Azure SQL Database: A cloud database service. 

  • Google App Engine: A platform for developing and hosting web apps. 

Best Used For

  • Businesses needing an environment for custom application development. 

  • Developers looking for easy deployment without managing underlying infrastructure. 

  • Organizations that want to focus on building apps while the platform is managed by the provider.

Key Differences and Responsibilities 

  • IaaS: You manage everything except the physical infrastructure, which the provider owns. 

  • SaaS: The provider manages both the infrastructure and the software; you just use the software. 

  • PaaS: The provider manages the infrastructure and platform, but you are responsible for creating and maintaining the applications. 

Summary 

Cloud computing is an exciting and dynamic field that offers numerous benefits, from the flexibility of on-demand resources to the high availability and scalability that businesses need to thrive. By understanding key concepts like metered utilization, virtualization, and cloud deployment models (public, private, hybrid, and community), you're gaining valuable knowledge that will help you navigate and make the most of cloud services. Each model has its strengths, allowing businesses to choose solutions that best fit their security, cost, and operational needs. Keep exploring in the next lesson, and soon you'll feel confident in your ability to harness the full potential of cloud computing!