1.01k likes | 1.03k Views
Discover the fundamental concepts of cloud computing, including its features, types, and the benefits it offers. Learn about the different service models, deployment models, and key considerations for adopting cloud computing.
E N D
Cloud Computing • Cloud computing refers to applications and services that run on a distributed network using virtualized resources and accessed by common Internet protocols and networking standards. • It is distinguished by the notion that resources are virtual and limitless and that details of the physical systems on which software runs are abstracted from the user.
Abstraction: • Cloud computing abstracts the details of system implementation from users and developers. • Applications run on physical systems that aren't specified, • data is stored in locations that are unknown, • administration of systems is outsourced to others, and access by users is ubiquitous.
Virtualization: • Cloud computing virtualizes systems by pooling and sharing resources. • Systems and storage can be provisioned as needed from a centralized infrastructure, • costs are assessed on a metered basis, • multi-tenancy is enabled, • and resources are scalable with agility.
Cloud Types • Deployment Model: • Refers to location and management of the cloud’s infrastructure • Service Model • Consists of particular types of services that can be accessed on cloud computing platform • Some widely used model • NIST Model • The Cloud Cube Model
National Institute of Standard and Technology (NIST Definition of Cloud Computing)
The Cloud Cube Model • Physical location of the data: Internal (I) / External (E) determines your organization's boundaries. • Ownership: Proprietary (P) / Open (O) is a measure of not only the technology ownership, but of interoperability, ease of data transfer, and degree of vendor application lock-in. • Security boundary: Perimeterised (Per) / De-perimiterised (D-p) is a measure of whether the operation is inside or outside the security boundary or network firewall. • Sourcing: Insourced or Outsourced means whether the service is provided by the customer or the service provider.
Public Cloud • Hosted , operated and managed by a third party system owned by organization selling cloud services • Private Cloud • The private cloud infrastructure is operated for the exclusive use of an organization. The cloud may be managed by that organization or a third party. Private clouds may be either on- or off-premises. • Hybrid Cloud • A hybrid cloud combines multiple clouds (private, community of public) where those clouds retain their unique identities, but are bound together as a unit. • Community Cloud • A community cloud is one where the cloud has been organized to serve a common function or purpose. • It may be for one organization or for several organizations, but they share common concerns such as their mission, policies, security, regulatory compliance needs, and so on
Infrastructure as a Service(IaaS) • Deliver Infrastructure on Demand in the form of virtual Hardware, Storage and Networking. Virtual Hardware is utilised to provide compute on demand in the form of virtual machine instances • Eg.Amazon EC2, S3, Eucalyptus, GoGrid, Rightspace Cloud • Platform as a Service (PaaS) • Deliver scalable and elastic runtime environments on demand that host the execution of applications. • Backed by core middleware platform for creating abstract environment to deploy and execute application • Software as a service (SaaS) • Provide application and services on demand egoffice automation, Photo Editing software, facebook., Twitter accessible through browser on demand
Benefits of Cloud Computing • Lower Computational Costs • Improved Performance • Reduced Software Costs • Instant Software updates • Unlimited storage capacity • Increased Data Reliability • Universal Document Access • Latest version availability • Easier Group Collaboration/ Sharing • Device Independence
Disadvantages of Cloud Computing • Requires constant Internet Connection • Does not work well with low speed connection • Stored data might not be Secured • Stored data can be lost • Features might be limited
Lecture # 16-17 VIRTUALIZATION & CLOUD COMPUTING CSE 423 • Introduction to Cloud Computing
Cloud Computing in a nutshell • Analogy to electricity use • Technologies such as cluster, grid, and now cloud computing, have all aimed at allowing access to large amounts of computing power in a fully virtualized manner, by aggregating resources and offering a single system view • Utility computing describes a business model for on-demand delivery of computing power; consumers pay providers based on usage. • It denotes a model on which a computing infrastructure is viewed as a “cloud,” from which businesses and individuals access applications from anywhere in the world on demand
Cloud Computing in a nutshell • BUYYA • “Cloud is a parallel and distributed computing system consisting of a collection of inter-connected and virtualized computers that are dynamically provisioned and presented as one or more unified computing resources based on service-level agreements (SLA) established through negotiation between the service provider and consumers.” • NIST • a pay-per-use model for enabling available, convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”
Cloud Computing in a nutshell • While there are countless other definitions, there seems to be common characteristics between the most notable ones listed above, which a cloud should have: ( (i) pay-per-use (no ongoing commitment, utility prices); (ii) elastic capacity and the illusion of infinite resources; (iii) self-service interface (iv) resources that are abstracted or virtualised.
Roots of Cloud Computing (i) Mainframe to cloud (ii) SOA, Web Services, Web 2.0 and Mashups (iii) Grid Computing (iv) Utility Computing (v)Hardware Virtualization (vi)Virtual Appliance and OVF (vii) Autonomic Computing
From Mainframe to cloud • Currently experiencing a switch in the IT world, from in-house generated computing power into utility-supplied computing resources delivered over the Internet as Web services • Computing delivered as a utility can be defined as “on demand delivery of infrastructure, applications, and business processes in a security-rich, shared, scalability based computer environment over the Internet for a fee” • Advantage to both consumer and providers • Earlier provided timeshared mainframes , declined due to advent of fast and inexpensive microprocessors
SOA, Web Services, Web 2.0 and Mashups • Web services can glue together applications running on different messaging product platforms, enabling information from one application to be made available to others, and enabling internal applications to be made available over the Internet. • The purpose of a SOA is to address requirements of loosely coupled, standards-based, and protocol-independent distributed computing • Services such user authentication, e-mail, payroll management, and calendars are examples of building blocks that can be reused and combined in a business solution in case a single, ready-made system does not provide all those features
Grid Computing • Grid computing is the collection of computer resources from multiple locations to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files. • A key aspect of the grid vision realization has been building standard Web services-based protocols that allow distributed resources to be “discovered, accessed, allocated, monitored, accounted for, and billed for.. • Issues: • QOS, Avaibility of resource with diverse software configuration • Soln: virtualisation
Utility Computing • Utility computing is a service provisioning model in which a service provider makes computing resources and infrastructure management available to the customer as needed, and charges them for specific usage rather than a flat rate. • In utility computing environments, users assign a “utility” value to their jobs, where utility is a fixed or time-varying valuation that captures various QoS constraints (deadline, importance, satisfaction). • The service providers then attempt to maximize their own utility, where said utility may directly correlate with their profit.
Hardware Virtualisation • Hardware virtualization allows running multiple operating systems and software stacks on a single physical platform • 3 basic capabilities related to management of workload: isolation, Consolidation and Migration
A number of VMM platforms exist that are the basis of many utility or cloud computing environments. • VMWare ESXi : • pioneer in virtualisation, bare metal hypervisor, • provides advanced virtualization techniques of processor, memory, and I/O. Especially, through memory ballooning and page sharing, it can overcommit memory, • Xen: • open-source project • It has pioneered the para-virtualization concept, on which the guest operating system, by means of a specialized kernel, can interact with the hypervisor, thus significantly improving performance
KVM: • kernel-based virtual machine (KVM) is a Linux virtualization subsystem • Is has been part of the mainline Linux kernel since version 2.6.20, thus being natively supported by several distributions. • In addition, activities such as memory management and scheduling are carried out by existing kernel • KVM leverages hardware-assisted virtualization, which improves performance and allows it to support unmodified guest operating systems
Virtual Appliance and OVF(open virtual format) • An application combined with the environment needed to run it (operating system, libraries, compilers, databases, application containers, and so forth) is referred to as a “virtual appliance.” • A virtual appliance is a pre-integrated, self contained system that is made by combining a software application (e.g., server software) with just enough operating system for it to run optimally on industry standard hardware or a virtual machine e.g., VMWare, VirtualBox • In a multitude of hypervisors, where each one supports a different VM image format and the formats are incompatible with one another, a great deal of interoperability issues arises. • For instance, Amazon has its Amazon machine image (AMI) format, made popular on the Amazon EC2 public cloud. Other formats are used by Citrix XenServer, several Linux distributions that ship with KVM, Microsoft Hyper-V, and VMware ESX
Autonomic Computing • The increasing complexity of computing systems has motivated research on autonomic computing, which seeks to improve systems by decreasing human involvement in their operation • Autonomic, or self-managing, systems rely on monitoring probes and gauges (sensors), on an adaptation engine (autonomic manager) for computing optimizations based on monitoring data, and on effectors to carry out changes on the system.
Migration • When and how to migrate one’s application into a cloud ? • What part or component of the IT application to migrate into a cloud and what not to migrate into a cloud ? • What kind of customers really benefit from migrating their IT into the cloud ?
The Seven-Step Model of Migration into a Cloud Step 1 • Cloud migration assessments comprise assessments to understand the issues involved in the specific case of migration at the application level or the code, the design, the architecture, or usage levels. • These assessments are about the cost of migration as well as about the ROI that can be achieved in the case of production version. Step 2 • isolating all systemic and environmental dependencies of the enterprise application components within the captive data center Step 3 • generating the mapping constructs between what shall possibly remain in the local captive data center and what goes onto the cloud.
The Seven-Step Model of Migration into a Cloud Step 4 • substantial part of the enterprise application needs to be rearchitected, redesigned, and reimplemented on the cloud Step 5 • We leverage the intrinsic features of the cloud computing service to augment our enterprise application in its own small ways. Step 6 • we validate and test the new form of the enterprise application with an extensive test suite that comprises testing the components of the enterprise application on the cloud as well Step 7 • Test results could be positive or mixed. • In the latter case, we iterate and optimize as appropriate. After several such optimizing iterations, the migration is deemed successful
Lecture # 22 VIRTUALIZATION & CLOUD COMPUTING CSE 423 • The Law of Cloudonomics • Specifying SLA, Defining Licensing Models
Cloud Computing • Cloud computing is particularly valuable because it shifts capital expenditures into operating expenditures. • It also shifts risk away from an organization and onto the cloud provider. • Cloud computing presents new opportunities to users and developers because it is based on the paradigm of a shared multitenant utility. • A cloud is an infrastructure that can be partitioned and provisioned, and resources are pooled and virtualized. If the cloud is available to the public on a pay-as-you-go basis, then the cloud is a public cloud, and the service is described as a utility
These are the unique characteristics of an ideal cloud computing model: • Scalability: You have access to unlimited computer resources as needed. • Elasticity: You have the ability to right-size resources as required. • Low barrier to entry: You can gain access to systems for a small investment. • Utility: A pay-as-you-go model matches resources to need on an ongoing basis. .
Companies become cloud computing providers for several reasons: • Profit: The economies of scale can make this a profitable business. • Optimization: The infrastructure already exists and isn't fully utilized. - This is the case for Amazon Web Services. • Strategic: A cloud computing platform extends the company's products and defends their franchise. - This is the case for Microsoft's Windows Azure Platform. • Extension: A branded cloud computing platform can extend customer relationships by offering additional service options. This is the case with various IBM cloud services.
• Presence: Establish a presence in a market before a large competitor can emerge. - Google App Engine allows a developer to scale an application immediately. For Google, its office applications can be rolled out quickly and to large audiences. • Platform: A cloud computing provider can become a hub master at the center of many ISV's (Independent Software Vendor) offerings. - The customer relationship management provider SalesForce.com has a development platform called Force.com that is a PaaS offering.
The law of cloudonomics 1. Utility services cost less even though they cost more. Utilities charge a premium for their services, but customers save money by not paying for services that they aren't using. 2. On-demand trumps forecasting. The ability to provision and tear down resources (de-provision) captures revenue and lowers costs. 3. The peak of the sum is never greater than the sum of the peaks. A cloud can deploy less capacity because the peaks of individual tenants in a shared system are averaged over time by the group of tenants. .
The law of cloudonomics 4. Aggregate demand is smoother than individual. Multi-tenancy also tends to average the variability intrinsic in individual demand. With a more predictable demand and less variation, clouds can run at higher utilization rates than captive systems. This allows cloud systems to operate at higher efficiencies and lower costs. 5. Average unit costs are reduced by distributing fixed costs over more units of output. Cloud vendors have a size that allows them to purchase resources at significantly reduced prices. 6. Superiority in numbers is the most important factor in the result of a combat (Clausewitz). Weinman argues that a large cloud's size has the ability to repel botnets and DDoS attacks better than smaller systems do.
The law of cloudonomics 7. Space-time is a continuum (Einstein/Minkowski). The ability of a task to be accomplished in the cloud using parallel processing allows real-time business to respond quicker to business conditions and accelerates decision making providing a measurable advantage. 8. Dispersion is the inverse square of latency. Cutting latency in half requires four times the number of nodes in a system. 9. Don't put all your eggs in one basket. Large cloud providers with geographically dispersed sites worldwide therefore achieve reliability rates that are hard for private systems to achieve.
The law of cloudonomics 10. An object at rest tends to stay at rest (Newton). Private datacenters tend to be located in places where the company or unit was founded or acquired. Cloud providers can site their datacenters in what are called “greenfield sites.” A greenfield siteis one that is environmentally friendly: locations that are on a network backbone, have cheap access to power and cooling, where land is inexpensive, and the environmental impact is low.
Laws of Behavioral Cloudonomics • 1. People are risk averse and loss averse. • 2. People have a flat-rate bias. • 3. People have the need to control their environment and remain autonomous. • 4. People fear change. • 5. People value what they own more than what they are given. • 6. People favor the status quo and invest accordingly.
7. People discount future risk and favor instant gratification. • 8. People favor things that are free. • 9. People have the need for status. • 10. People are incapacitated by choice.
Measuring cloud computing costs • The cost of a cloud computing deployment is roughly estimated to be CostCLOUD=Σ(UnitCostCLOUD X(Revenue–CostCLOUD)) • where the unit cost is usually defined as the cost of a machine instance per hour.
To compare your cost benefit with a private cloud, you will have to compare the value that you determined in the previous equation with the same calculation: • CostDATACENTER = Σ(Unit CostDATACENTER x (Revenue –(CostDATACENTER /Utilization))
The CostDATACENTER consists of the summation of the cost of each of the individual systems with all the associated resources, as follows: • CostDATACENTER = 1nΣ(UnitCostDATACENTER x (Revenue –(CostDATACENTER/Utilization))SYSTEMn where the sum includes terms for System 1, System 2, System 3, and so on.