Chapter 1 Flashcards
Chapter 1 provides an overview of cloud computing, its origins, evolution, characteristics, benefits, risks, and underlying technologies (7 cards)
Origin and history of Cloud Computing
Idea traced back to utility computing concept proposed by John McCarthy in 1961.
General public leveraged forms of Internet-based utilities since the mid-1990s (search engines, email, social media). These validated core concepts of modern cloud computing.
Salesforce.com pioneered remotely provisioned services for enterprises in the late 1990s.
Amazon.com launched Amazon Web Services (AWS) in 2002, offering remotely provisioned storage, computing resources, and business functionality.
The term “cloud computing” emerged in the commercial arena in 2006, with services like Amazon’s Elastic Compute Cloud (EC2) allowing leasing computing capacity.
The networking industry used the term “Network Cloud” or “Cloud” in the early 1990s to refer to an abstraction layer for data delivery over networks, considered an early adopter of utility computing concepts
Definition of Cloud Computing
A style of computing where scalable and elastic IT-enabled capabilities are delivered as a service over the Internet.
A model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources.
Separates the delivery of computing services from the underlying technology.
A way to share infrastructure using pools of resources.
Distributes computing and data across many computers, making capabilities highly scalable and allowing easy access over the network from various devices
Characteristics of Cloud Computing
On-Demand Self-Service: Users can provision and manage resources without human intervention from the provider. Allows quick scaling up or down.
Broad Network Access: Accessible over the internet from a wide range of devices (laptops, smartphones, tablets).
Resource Pooling: Providers pool computing resources (storage, processing, network) using multi-tenant models to serve multiple customers. Resources dynamically assigned, customers usually don’t know exact location.
Rapid Elasticity: Resources can be quickly and elastically provisioned or released to scale rapidly in and out as demand fluctuates.
Measured Service (Pay-as-you-go): Users are billed based on their actual usage of resources. Reduces upfront costs, allows better financial planning.
Multitenancy: Services designed to serve multiple customers (tenants) on shared infrastructure. Data and applications are logically isolated. Performance and security of one tenant don’t affect others.
Virtualization: Technology underpinning services, allows providers to abstract, isolate, and allocate physical resources (VMs, virtual instances).
Reliability and Redundancy: Often includes built-in redundancy, fault tolerance, and backup systems for high availability. Providers distribute data centers geographically.
Security: Providers implement measures like encryption, access management, firewalls. Security is a shared responsibility between provider and customer
Goals and benefits of Cloud Computing
Driving motivation: Provide IT resources as services for remote use.
Increased Scalability.
Increased Availability.
Increased Reliability.
Manipulate and configure applications online without installing software.
Offers online development/deployment tools and programming runtime environment (via PaaS).
Platform independent access over the network.
Offers on-demand self-service (resources used without provider interaction).
Highly cost-effective due to optimum utilization; just needs Internet connection
Risks and challenges of Cloud Computing
Security and Privacy: Biggest concern, managing sensitive data handed to third party.
Insecure or incomplete data deletion: Data may not be fully deleted due to extra copies or destruction issues with shared disks.
Interoperability: Developing web services to incorporate services from different platforms is complex.
Factors to consider before deploying: Cost, Security, Scalability/Flexibility, Reliability/Availability, Compliance/Legal, Vendor Lock-In
Cloud enabling technologies
Fundamental components supporting cloud computing.
Broadband Network & Internet Architecture: High-speed networks and internet backbone for remote access.
Data Center Technology: Centralized IT resources (servers, storage, network) for optimized energy, utilization, management. Virtualization layer abstracts and manages resources.
Virtualization Technology: Core pillar, abstracts hardware, storage, network resources for flexibility and utilization. Allows managing distributed resources as a unified system.
Web Technology: Used for user interaction and service management (URL, HTTP, HTML/XML). Common three-tier architecture.
Multi-Tenant Technology: Allows single application instance to serve multiple tenants with data isolation and configuration. Key attributes: Usage Isolation, Data Security, Scalability/Upgrades, Metered Usage, Data Tier Isolation.
Service Technology: Underpins “as-a-service” model, standard mechanisms for interaction (Web services, WSDL, XML Schema, SOAP, UDDI)
Basic concepts and terminologies
Cloud: A distinct IT environment designed for remotely provisioning scalable, measured IT resources. Has a finite boundary. Typically privately owned and metered access. Not necessarily Web-based, but commonly uses Internet protocols.
IT Resource: A physical or virtual IT-related artifact (software like a virtual server or hardware like a physical server).
On-premise: IT resource hosted in a conventional IT enterprise within an organizational boundary that is not cloud-based.
Cloud consumer: The party that uses cloud-based IT resources.
Cloud Provider: The party that provides cloud-based IT resources.
Scaling: Ability of an IT resource to handle increased or decreased usage demands.
Horizontal Scaling: Allocating or releasing identical IT resources. Adding resources = scaling out. Releasing resources = scaling in. Common in cloud environments. Less downtime.
Vertical Scaling: Replacing an existing IT resource with one with higher capacity (scaling up) or lower capacity (scaling down). Less common in cloud environments due to downtime required.
Cloud Service: Any IT resource that is made remotely accessible via a cloud. Can be a simple Web-based program or a remote access point for administrative tools/environments.
Cloud Service Consumer: A temporary runtime role assumed by a software program when accessing a cloud service. Can be software programs, services, workstations, laptops, mobile devices.