Fundamentals of Cloud Computing

Cloud Computing

Overview of Cloud Computing

  • Cloud computing (CC) is defined as a method for delivering business and IT services.

  • It enables businesses and users to acquire IT resources as needed, when they need them.

  • CC operates as on-demand IT service provisioning and utilization.

  • It utilizes network resources, primarily internet resources, to provide on-demand data processing and storage.

Characteristics of Cloud Computing

  • No-Need-to-Know: Users do not need to understand the underlying details of the infrastructure.

  • Flexibility and Elasticity: Systems can scale up and down in response to resource demands.

  • Pay as You Go: Users pay for the resources they use, similar to a utility model.

  • Always On: Accessible from anywhere, at any time via network-based services.

Analogy to Electric Power Services

  • Residential Service Analogy:

    • Users access electricity through a cable, powering homes and devices such as heating and air conditioning.

    • Electricity consumption is billed based on a rate applied to usage.

    • Power is supplied in real-time according to demand; increased demand is met instantly, and reduced demand leads to decreased power supply.

    • Comparison to CC: Similar to electric utilities, CC offers a pay-per-use service expanding IT capabilities in real-time over the internet.

Capacity in Cloud Computing

  • Real Demand vs. Elastic Capacity:

    • Represents how the cloud can dynamically adjust to actual usage versus available infrastructure.

Utility Paradigm in Cloud Computing

  • An example of processing tasks:

    • A job that requires 10,000 hours of processing can be run in different configurations:

    • 1 instance for 10,000 hours

    • 100 instances for 100 hours

    • 1,000 instances for 10 hours

    • 10,000 instances for 1 hour

    • All of these configurations cost the same despite varying resource utilization times.

Advantages of Cloud Computing

  • Lower Costs: Users can run applications via the web rather than on expensive local computers, resulting in lower hardware costs (less memory, less storage needed).

  • Increased Flexibility:

    • Self-Service and Pay-per-Use Model: Pricing is based on actual resource usage.

    • Multitenancy: Single software instance serves multiple users (tenants), providing shared access with specific privileges.

    • Elastic Capacity: Systems can dynamically adapt to workload changes by provisioning or de-provisioning resources autonomously.

  • Improved Performance:

    • Faster boot-up times owing to fewer processes in memory.

    • Instant software updates ensure that users always have the latest version.

    • Enhanced data reliability as cloud storage is separate from local hardware issues.

    • Device independence enables software function across various devices without dependency on local hardware.

Disadvantages of Cloud Computing

  • Constant Internet Connection Requirement: A reliable and high-speed internet connection is critical for performance, which can pose issues if connections are low-speed or inconsistent.

  • Limited Features in Comparison to Desktop Versions: Cloud applications may lack the functionalities found in traditional desktop software.

Types of Cloud Services

  • SaaS (Software as a Service):

    • Centrally hosted software managed for end customers, often on a multitenant architecture (one version serves multiple customers).

    • Examples include Microsoft Office 365, Dropbox, and WordPress.

    • Allows for monthly or annual subscriptions with the advantage of always having the latest version.

    • Eliminates installation hassles and reduces costs.

  • PaaS (Platform as a Service):

    • Provides an environment for developers to deploy applications without managing underlying infrastructure.

    • Frees developers from hardware considerations, allowing focus on software development.

    • Examples include Google App Engine and Heroku.

  • IaaS (Infrastructure as a Service):

    • Users can create virtual machines and manage their infrastructure on a vendor’s platform without controlling hardware.

    • Allows for a “lift and shift” model for migrating services.

    • Examples include Amazon Web Services (AWS) and Microsoft Azure.

Summary of Cloud Services

SaaS
  • Delivery: Web-based software delivery, no IT staff required on the client's side.

  • Advantages: Reduces installation time/costs, central management, keeps users updated.

  • Disadvantages: Vendor lock-in, limited customization and control.

  • Examples: Google Workspace, Salesforce, Cisco WebEx.

PaaS
  • Delivery: Provides a platform for software creation, supports rapid development.

  • Advantages: Simplified and scalable development, integrated web services, supports multiple developers.

  • Examples: Windows Azure, AWS Elastic Beanstalk.

IaaS
  • Delivery: Virtualized IT resources accessed through a dashboard.

  • Advantages: Maximum flexibility and scaling; costs vary based on consumption.

  • Examples: DigitalOcean, Linode, Amazon Web Services.

Cloud Deployment Models

  • Public Cloud: Resources built and maintained by third-party providers, accessible to the public.

  • Private Cloud: Resources used exclusively by one organization, can be on-premises or hosted.

  • Hybrid Cloud: Combines private and public clouds for seamless service operation across data infrastructures.

  • Multi-Cloud: Use of multiple cloud computing services across various environments, ensuring redundancy and flexibility.

Financial Aspects of Cloud Computing

  • Cloud Computing as a Service Revenue ($B) represents a growing industry with substantial opportunities across different service models (IaaS, PaaS, SaaS).

  • Growth Trends: Data indicates a steady increase in cloud revenue from 2014 to 2020, demonstrating the demand for cloud services.

Conclusion - Importance of Cloud Computing

  • Businesses are increasingly relying on cloud computing for its resource availability, ease of maintenance, and automated systems.

  • On-demand services and pay-as-you-go pricing make cloud computing an attractive choice for businesses seeking agility and cost savings.

Questions

  • The session concludes with an invitation for queries regarding cloud computing concepts, models, and applications.