virtualization virtualization (or virtualisation) is the simulation of the software and/or hardware...

49

Upload: cora-potter

Post on 14-Jan-2016

225 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 2: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 3: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 4: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 5: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 6: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 7: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Virtualization

• Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs.

• This simulated environment is called a virtual machine . There are many forms of virtualization, distinguished primarily by computing architecture layer, and virtualized components may include hardware platforms, operating systems (OS), storage devices, network devices or other resources.

Page 8: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• The usual goal of virtualization is to centralize administrative tasks while improving scalability and overall hardware-resource utilization.

• With virtualization, several operating systems can be run in parallel on a single central processing unit (CPU). This parallelism tends to reduce overhead costs and differs from multitasking, which involves running several programs on the same OS.

• Using virtualization, an enterprise can better manage updates and rapid changes to the operating system and applications without disrupting the user.

• "Ultimately, virtualization dramatically improves the efficiency and availability of resources and applications in an organization. Instead of relying on the old model of “one server, one application” that leads to under utilized resource, virtual resources are dynamically applied to meet business needs without any excess fat

Page 9: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• A virtual machine (VM), typically has two components : the host and the guest.

• The host is the virtual machine host server; the underlying hardware that provides computing resources, such as processing power, memory, disk and network I/O, and so on.

• The guest is a completely separate and independent instance of an operating system and application software. Guests are the virtual workloads that reside on a host virtual machine and share in that server's computing resources.

• Virtualization platforms such as VMware vSphere, Microsoft Hyper-V and Citrix Systems' XenServer install a layer of abstraction between the host and guest. This is the virtual machine monitor (VMM), or

Page 10: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 11: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 12: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

In computing, paravirtualization is a virtualization technique that presents a software interface to virtual machines that is similar but not identical to that of the underlying hardware. A successful paravirtualized platform may allow the virtual machine monitor (VMM) to be simpler and/or reduce the overall performance degradation of machine-execution.

Page 13: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 14: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 15: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 16: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 17: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 18: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 19: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 20: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 21: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

PaaS generally offers some support to help the creation of user interfaces, and isnormally based on HTML or JavaScript. Because PaaS is expected to be used by many users simultaneously, it is designed with that sort of use in mind, and generally provides automatic facilities for concurrency management, scalability, failover, and security.PaaS also supports web development interfaces such as Simple Object Access Protocol (SOAP) which allow the construction of multiple web services, sometimes called mashups.

Page 22: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• PaaS services include application design, development, testing, deployment, and hosting. Other services include team collaboration, web service integration, database integration, security, scalability, storage, state management, and versioning.

• A downfall to PaaS is a lack of interoperability and portability among providers. That is, if you create an application with one cloud provider and decide to move to another provider, you may not be able to do so—or you’ll have to pay a high price. Also, if the provider goes out of business, your applications and your data will be lost.

Page 23: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Google AppEngine, an example of Platform as a Service, offers a scalable environment for developing and hosting Web applications, which should be written in specific programming languages such as Python or Java, and usethe services’ own proprietary structured object data store. Building blocks include an in-memory object cache (memcache), mail service, instant messagingservice (XMPP), an image manipulation service, and integration with Google Accounts authentication service.

Page 24: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Armbrust propose definitions for public cloud as a “cloud made available in a pay-as-you-go manner to the general public” and private cloud as “internal data center of a business or other organization, not made available to the general public.”

In most cases, establishing a private cloud means restructuring an existing infrastructure by adding virtualization and cloud-like interfaces. This allows users to interact with the local data center while experiencing the same advantages of public clouds, most notably self-service interface, privileged access to virtual servers, and per-usage metering and billing.

A community cloud is “shared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations) .”

A hybrid cloud takes shape when a private cloud is supplemented with computing capacity from public clouds . The approach of temporarily renting capacity to handle spikes in load is known as “cloud-bursting” .

Page 25: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 26: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Hardware as a Service

• Hardware as a Service (HaaS) is the next form of service available in cloud computing.

• Where SaaS and PaaS are providing applications to customers, HaaS doesn’t. It simply offers the hardware so that your organization can put whatever they want onto it.

Page 27: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 28: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• HaaS allows you to “rent” such resources as• • Server space• • Network equipment• • Memory• • CPU cycles• • Storage space• Additionally, the infrastructure can be dynamically scaled

up or down, based on the application resource needs.• Further, multiple tenants can be on the equipment at the

same time.• Resources are typically billed based on a utility computing

basis, so providers charge by how many resources are consumed

Page 29: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

HaaS involves several pieces:• Service level agreements : This is an agreement between the

provider and client, guaranteeing a certain level of performance from the system.

• Computer hardware : These are the components whose resources will be rented out. Service providers often have this set up as a grid for easier scalability.

• Network: This includes hardware for firewalls, routers, load balancing, and so on.

• Internet connectivity: This allows clients to access the hardware from their own organizations.

• Platform virtualization environment: This allows the clients to run the virtual machines they want.

• Utility computing billing: Typically set up to bill customers based on how many system resources they use.

Page 30: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Applications

• Storage• Somewhat similar to HaaS, one of the uses for cloud computing is

simply storage. The benefits are in line with the general benefits of cloud computing—if you lease storage space from a vendor, you are not responsible to buy equipment, pay to run it, and pay to cool it.

• Database• Databases are repositories for information with links within the

information that help make the data searchable.• Distributed databases, like Amazon’s SimpleDB, spread

information among physically dispersed hardware. But to the client, the information seems to be located in one place.

Page 31: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• The advantages of such a database include the following:• • Improved availability :If there is a fault in one database

system, it will only affect one fragment of the information, not the entire database.

• • Improved performance :Data is located near the site with the greatest demand and the database systems are parallelized, which allows the load to be balanced among the servers.

• • Price: It is less expensive to create a network of smaller computers with the power of one large one.

• • Flexibility: Systems can be changed and modified without harm to the entire database.

Page 32: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• Naturally there are disadvantages, including• • Complexity: Database administrators have extra

work to do to maintain the system.• • Labor costs: With that added complexity comes

the need for more workers on the payroll.• • Security: Database fragments must be secured

and so must the sites housing the fragments.• • Integrity: It may be difficult to maintain the

integrity of the database if it is too complex or changes too quickly.

• • Standards: There are currently no standards to convert a centralized database into a cloud solution.

Page 33: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• Database ServicesAnother “as a service” offering that is becoming prevalent in the

world of cloud computing is Database as a Service (DaaS). The idea behind DaaS is to avoid the complexity and cost of running your own database.

Page 34: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• DaaS offers these benefits:• • Ease of use: There are no servers to provision and no

redundant systems to worry about. You don’t have to worry about buying, installing, and maintaining hardware for the database.

• • Power: The database isn’t housed locally, but that doesn’t mean that it is not functional and effective. Depending on your vendor, you can get custom data

• validation to ensure accurate information. You can create and manage the database with ease.

• • Integration The database can be integrated with your other services to provide more value and power. For instance, you can tie it in with calendars, email, and people to make your work more powerful.

Page 35: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

DESIRED FEATURES OF A CLOUD

• Self-Service• Consumers of cloud computing services

expect on-demand, nearly instant access to resources. To support this expectation, clouds must allow self-service access so that customers can request, customize, pay, and use services without intervention of human operators

Page 36: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• Per-Usage Metering and Billing• Cloud computing eliminates up-front commitment by users,

allowing them to request and use only the necessary amount. Services must be priced on a shortterm basis (e.g., by the hour), allowing users to release (and not pay for) resources as soon as they are not needed [5].

• For these reasons, clouds must implement features to allow efficient trading of service such as pricing, accounting, and billing [2]. \

• Metering should be done accordingly for different types of service (e.g., storage, processing, and bandwidth) and usage promptly reported, thus providing greater transparency [6].

Page 37: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• Elasticity• Cloud computing gives the illusion of infinite

computing resources available on demand [5]. Therefore users expect clouds to rapidly provide resources in any quantity at any time. In particular, it is expected that the additional resources can be (a) provisioned, possibly automatically, when an application load

• increases and (b) released when load decreases (scale up and down) [6].

Page 38: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• Customization• In a multi-tenant cloud a great disparity between user

needs is often the case. • Thus, resources rented from the cloud must be highly

customizable. In the case of infrastructure services, customization means allowing users to deploy

• specialized virtual appliances and to be given privileged (root) access to the virtual servers. Other service classes (PaaS and SaaS) offer less flexibility and are not suitable for general-purpose computing [5], but still are expected to provide a certain level of customization.

Page 39: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

CHALLENGES AND RISKS

• Security, Privacy, and Trust• Data Lock-In and Standardization• Availability, Fault-Tolerance, and Disaster

Recovery• Resource Management and Energy-Efficiency

Page 40: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

CLOUD INFRASTRUCTURE MANAGEMENT

• A key challenge IaaS providers face when building a cloud infrastructure is managing physical and virtual resources, namely servers, storage, and networks, in a holistic fashion

• The orchestration of resources must be performed in a way to rapidly and dynamically provision resources to applications.

• The software toolkit responsible for this orchestration is called a virtual infrastructure manager (VIM)

• This type of software resembles a traditional• operating system—but instead of dealing with a single

computer, it aggregates resources from multiple computers, presenting a uniform view to user and applications.

Page 41: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

• Virtually all VIMs we investigated present a set of basic features related to managing the life cycle of VMs, including networking groups of VMs together and setting up virtual disks for VMs. These basic features pretty much define whether a tool can be used in practical cloud deployments or not.

• On the other hand, only a handful of software present advanced features (e.g., high availability) which allow them to be used in large-scale production clouds.

Page 42: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Features

Page 43: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 44: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 45: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 46: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 47: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated
Page 48: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated

Popular VI managers

• Apache VCL.• AppLogic

Page 49: Virtualization Virtualization (or virtualisation) is the simulation of the software and/or hardware upon which other software runs. This simulated