Chapter 2: Cloud Basics Chapter 3: Cloud Architecture
Service provider s job is supplying abstraction layer Users and developers are isolated from complexity of IT technology: Virtualization Service-oriented architectures (SOA) Web services
Pool physical resources to manage them as a whole Provide an abstract logical view & dynamically generate as required Includes servers, data stores, networks, and software
Effective & efficient use of expensive resources to delay/avoid new capacity Can automate resource management by creating & configuring automatically Different application classes are consolidated on smaller physical resources Energy consumption cost savings (lifetime energy costs >> original purchase price) Every square meter of data center space is scarce and expensive Improved emergency response by moving to another resource pool (meet SLA)
Service requests are satisfied just-in-time without delay Bottlenecks are eliminated/reduced by reconfiguring resources automatically Services are highly available day or night without stop It is possible to hot-migrate technology upgrades to up-to-date systems Isolated from others and from physical resources Can purchase IT capabilities from self-serve portal (customer emancipation)
Operation of the abstraction layer itself requires resources (including human) Virtual systems need to be sold, supported, operated and managed Physical infrastructure must be purchased, operated, managed and maintained However: In view of savings and quality perceived by consumer, it pays off in nearly all cases Operation & management of resources by sophisticated tools make total balance positive
Operating system: solves security & confidentiality issues Platform: a hypervisor runs/manages any operating system/application Storage: dynamically scalable, separates data store from file system Network: load balancing using Web objects with virtual IP addresses (VLAN) Application: easier administration, automatic updates, all users compatible, and globally available
Cloud computing consists of virtualised IT infrastructures, platforms, networks, operating systems, and applications that are implemented as Services and made available for consumption in Service-Oriented Architectures (SOA) When services are public they are offered on the internet primarily through Web Services and RESTful services
SOA is a style of software architecture that defines how services are offered and used Services are offered through standardized Web protocols and interfaces They are consumed by customers, applications and other services Typical properties of SOA: Distributed components, i.e. the services Heterogeneous service consumers and providers are interoperable Services are loosely coupled and are bound at run-time
Many ways to implement Common approaches are above all Web Services based on WSDL and SOAP as well as RESTful services Consumers need to know URL, URI or IP address as well as interface requirements Public services theoretically can be located anywhere on earth where an Internet connection is available Internet entails problems like slow response times, low data rates, and unreliable connections Hence, some enterprises implement private services can be over Internet or local network
Web Architecture Working Group of W3C defines Web Services as: A Web Service is a software application identified by a URI, whose interface and binding are capable of being defined, described and discovered by XML artifacts, and supports direct interactions with other software applications using XML based messages via internet-based protocols. SOAP/WSDL-based web services have programmatic interfaces, whereas REST describes a style of software architecture built on top of HTTP.
Cloud Architecture is defined from two points of view Organizational point of view: Makes a distinction based on the extent to which the users and providers organizational units are separated from each other; corresponding to the deployment model Technological point of view: Focuses more on the functional features; corresponding to the service models (EaaS)
Public cloud (a.k.a., external cloud ) comprises all cloud offerings where providers and potential consumers do not belong to the same organizational unit Providers make their cloud accessible to public, typically with self-service Web portal Consumers use portal to specify their desired scope of services Hence, no overall framework agreement is necessary Contractual obligations are entered within the scope of the performance specifications Services are billed on the basis of the resources actually used during the period
Private cloud (a.k.a., internal cloud or IntraCloud ) comprises all cloud offerings where providers and consumers belong to the same organizational unit Main reason why a private cloud would be preferred over a public cloud is typically security In a private cloud, control over data remains with users or their organizations In USA, the government can take control or view any data it deems as a security risk Private cloud allows organizations to protect sensitive information like design plans or manufacturing data, and comply with regulatory measures such as keeping personal health or financial records private
Hybrid cloud is a scenario where services from the public cloud and from the private cloud are brought together Useful when certain functionalities or load peaks are transferred to the public cloud when organizational resources are stretched beyond capacity Normal operation relies solely on the organization s private resources. Security considerations mentioned for private clouds forces an organization to exercise great care to ensure only non-critical functions or data are transferred
The technical landscape of existing cloud services is as diverse and as heterogeneous as the cloud architecture mentioned earlier A useful tool to allow us to categorize and compare available cloud services is a cloud computing map based on a conceptual architecture This map will help prospective cloud service consumers identify an optimum solution from the available complementary technologies for their particular use-case. The map is a stack or layer conceptual model consisting of several layers arranged according to their degree of abstraction. The higher and more abstract layers may consume services of lower and more concrete layers to deliver their own services.
Gives users an abstracted view of the hardware: computers, mass storage systems, networks, etc. Enables users to allocate a subset of resources for their own use It is further divided into the physical and virtual sub-layers discussed earlier Examples: Amazon, Zumodrive, Dropbox.
Usually not targeted at end-users These are programming environments (PE) and execution environments (EE) where proprietary software written in a specific programming language can be executed. Examples: Django Framework or Sun Caroline.
Software applications that directly address the end user belong here. Frees consumers from the need to install software locally and thus p[rovide the required resources themselves. Examples: Google Maps and Microsoft Windows Live.
Shows that cloud services are not restricted to IT services Humans have certain capabilities that outperform computers. Example: translation
There are a large number of other services partly derived from these other services in the cloud s Everything as a Service (EaaS) model such as: High Performance Computing as a Service (HPCaaS) designed to minimize latency between connected resources and to optimize the data throughput such as SharkNet. Landscape as a Service (LaaS) is targeted at companies that aim at outsourcing their entire data center including hardware, software, maintenance, and deployment.