1 Unit IV: Virtualization and Cloud
2 Cloud Computing Virtualization Virtualization Grid Computing Utility2. Utility Computing : 3. Virtualization :
3 What is VirtualizationVirtualization is one of the hardware reducing, cost saving and energy saving technology that is rapidly transforming the IT landscape and fundamentally changing the way that people compute. With VMware virtualization solutions you can reduce IT costs while increasing the efficiency, utilization and flexibility of their existing computer hardware. With Virtualization it is possible to run multiple operating systems and multiple applications on the same SERVER at the same time, increasing the utilization and flexibility of hardware.
4 History Virtualization's roots go back to the 1960s and IBM, where programmer Jim Rymarczyk was deeply involved in the first mainframe virtualization effort. In the late 1990s VMware step in and begin to apply its own virtualization model. These included low x86-platform server utilization, where perhaps 10-15% of server capacity was used, and rising costs associated with electrical power use, cooling and a fast-growing server and storage footprint.
5 In 1999, VMware introduced virtualization to x86 systemsBy 2008, a significant percentage of companies had begun to virtualize a small portion of their not-business-critical applications, and they began carrying out Windows Server backup on their new virtual machines.
6 Requirement of VirtualizationBuild your virtual environment Configure your virtual environment Secure your virtual environment Populate your virtual environment Monitor your virtual environment Maintain your virtual environment Back up your virtual environment Troubleshoot your virtual environment Educate and document
7 Underestimating the amount of RAM needed in virtual hosts Avoid virtualization implementation pitfalls while following your plan based on the steps above can prevent problems during virtualization implementation, there are specific pitfalls for you to avoid. Let's explore some of these dangers below: Underestimating the amount of RAM needed in virtual hosts Underestimating the amount of storage needed in your shared storage Virtualizing faster than the rate of training and documentation Overprovisioning Lack of testing
8 Virtualization Station System RequirementsProcessor that supports Intel VT-X Minimum 2 GB Memory Minimum 550 MB Hard disk space
9 Before VirtualizationSingle OS image per machine Software and hardware tightly coupled Running multiple applications on same machine often creates conflict Inflexible and costly infrastructure
10 After Virtualization Hardware-independence of operating system and applications Virtual machines can be provisioned to any system Can manage OS and application as a single unit by encapsulating them into virtual Machines
11 Hello ^^ Good Bye~~ Software Developing Software as a ServiceApplication Monitoring Server Management Network Management Security Management Data Management Too many CO2 Software as a Service Platform as a Service Infra as a Service Data as a Service IT as a Service Green IT SasS = Sales Force.com, Google Dods PasS = Citrix Xen, VMware vSphare, MS Hyper-V IasS = Google AppEngine DaaS = Google
12 Hosted Architecture
13 Bare Metal & HypervisorA bare metal environment is a computer system or network in which a virtual machine is installed directly on hardware rather than within the host operating system (OS). The term "bare metal" refers to a hard disk, the usual medium on which a computer's OS is installed. A hypervisor, also called a virtual machine manager, is a program that allows multiple operating systems to share a single hardware host. Each operating system appears to have the host's processor, memory, and other resources all to itself.
14 Bare-Metal (Hypervisor) Architecture
15 A virtual infrastructure offers the systematic ability to control a complex system consisting of several x86-based servers into several different execution environment Consolidation Operate different OS and applications on one single server Support existing applications on a new hardware Replace the old hardware in the data center Utilize your Existing Servers Realize instantly new projects with virtual infrastructure Postpone new physical hardware purchase
16 Reduce Energy Costs and Go Green with VMware VirtualizationReduce the energy demands of your datacenter by dynamic management of computer capacity across a pool of servers. VMware infrastructure delivers the resources your infrastructure needs and enables you to: -Reduce energy costs by 80%. -Power down servers without affecting applications or users. -Green your datacenter while decreasing costs and improving service levels.
17 Key features of the VMware server virtualization.Partitioning .Different OS can run on one physical machine .System resources can be divided between virtual machines Isolation Fault and security isolation on a hardware level Extended resource control for constant performance Encapsulation Complete status of a virtual machine can be stored in a file Move and copy of a virtual machine is as easy as it is with files
18 Servers Consolidation110 Servers without VMware software 12 Servers, 1 rack with VMware software
19 VMware VMotion The VMotion technology allows the live migration of virtual machines from one physical server to another and needs therefore no downtime for maintenance activities. Move running applications to other servers without disruption. Zero downtime for hardware maintenance. Automates moving virtual machines to other hosts and automates re-balancing after maintenance complete
20 Unplanned Downtime: Server Failure - VMware HASimple, Cost effective high availability for all servers Automatic restart of virtual machines in case of server failure No need for dedicated stand-by hardware None of the cost and complexity of clustering X Resource Pool
21 Benefits of VMware VirtualizationEasier Manageability File, Server, OS, Data manage Fault Isolation Efficient use of Resources Portability Problem-Free Testing Reduced Costs The Ability to Separate Applications
22 What is Hypervisor? A Hypervisor also known as Virtual Machine Monitor (VMM) can be a piece of software, firmware or hardware that gives an impression to the guest machines(virtual machines) as if they were operating on a physical hardware. It allows multiple operating system to share a single host and its hardware. The hypervisor manages requests by virtual machines to access to the hardware resources (RAM, CPU, NIC etc) acting as an independent machine. Now the Hypervisor is mainly divided into two types namely Type 1. Native/Bare Metal Hypervisor Type 2. Hosted Hypervisor
23 Type 1 Hypervisor This is also known as Bare Metal or Embedded or Native Hypervisor. It works directly on the hardware of the host and can monitor operating systems that run above the hypervisor. It is completely independent from the Operating System. The hypervisor is small as its main task is sharing and managing hardware resources between different operating systems. A major advantage is that any problems in one virtual machine or guest operating system do not affect the other guest operating systems running on the hypervisor.
24 Examples: VMware ESXi Server Microsoft Hyper-V Citrix/Xen Server
25 Type 2 Hypervisor This is also known as Hosted Hypervisor.In this case, the hypervisor is installed on an operating system and then supports other operating systems above it. It is completely dependent on host Operating System for its operations While having a base operating system allows better specification of policies, any problems in the base operating system affects the entire system as well even if the hypervisor running above the base OS is secure.
26 Examples: VMware Workstation Microsoft Virtual PC Oracle Virtual Box
27 Techniques for efficient virtualization1. Guest Operating System Virtualization
28 Shared Kernel Virtualization
29 Kernel Level Virtualization
30 Hypervisor VirtualizationParavirtualization Full Virtualization Hardware Virtualization
31 Paravitualization: Xen Server
32 Full Virtualization
33 Hardware virtualization
34 Microkernels A microkernel is a piece of software or even code that contains the near-minimum amount of functions and features required to implement an operating system. It provides the minimal number of mechanisms, just enough to run the most basic functions of a system, in order to maximize the implementation flexibility so it allows for other parts of the OS to be implemented efficiently since it does not impose a lot of policies.
35
36 Memory VirtualizationMemory Virtualization, like server and storage virtualization, offers the benefits of consolidation and compelling cost savings. Memory is required in every digital machine; switches, routers, appliances and servers. Each contains physical memory alongside the logic that manipulates the 1’s and 0’s. Memory is closely coupled with compute logic, and when performance gains are needed enterprises typically add more memory, which can be very expensive. For the first time, Memory Virtualization introduces a way to decouple memory from the processor, AND, from the server to provide a shared, distributed or networked function. This is not more addressable memory but virtualized memory shared between multiple machines.
37 Memory Virtualization can be immediately applied across IT infrastructures.Extending memory beyond a physical server’s capacity. Implementing shared memory for clustered or grid computing environments. Enabling Cloud Computing and Real-Time Infrastructure (RTI) in the enterprise data center.
38 I/O virtualization addresses various problems related to performance bottlenecks. Virtual I/O machines that consists of Quality of service (QoS) controls can assign I/O bandwidth to a particular virtual device thereby allowing critical applications to deliver better performance. Some of the major advantages of I/O Virtualization are listed below: Flexibility: Since I/O virtualization involves abstracting the upper layer protocols from the underlying physical connections, it offers greater flexibility, utilization and faster provisioning in comparison with normal NIC and HBA cards. cost minimization: I/O virtualization methodology involves using fewer cables, cards and switch ports without compromising on network I/O performance. Increased density: I/O virtualization increases the practical density of I/O by allowing more connections to exist in a given space. Minimizing cables: The I/O virtualization helps to reduce the multiple cables needed to connect servers to storage and network.
39 Virtual Appliances A virtual appliance (VA) is a virtual machine (VM) image file consisting of a pre-configured operating system (OS) environment and a single application. The purpose of a virtual appliance is to simplify delivery and operation of an application. To this end, only necessary operating system components are included. 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, Xen HVM, KVM).
40 Simplified deployment: A software appliance encapsulates an application's dependencies in a pre-integrated, self-contained unit. This can dramatically simplify software deployment by freeing users from having to worry about resolving potentially complex OS compatibility issues, library dependencies or undesirable interactions with other applications. Improved isolation: virtual appliances are typically used to run applications in isolation from one another. If the security of a virtual appliance is compromised, or if the virtual appliance crashes, other isolated virtual appliances will not be affected.
41 VIRTUAL MACHINES ON MULTICORE CPUSThe combination of virtual machines and multicore CPUs creates a whole new world in which the number of CPUs available can be set by the software. If there are, say, four cores, and each can run, for example, up to eight virtual machines, a single (desktop) CPU can be configured as a 32-node multicomputer if need be, but it can also have fewer CPUs, depending on the software. Never before has it been possible for an application designer to first choose how many CPUs he wants and then write the software accordingly.
42 Moreover, virtual machines can share memoryMoreover, virtual machines can share memory. A typical example where this is useful is a single server hosting multiple instances of the same operating systems. All that has to be done is map physical pages into the address spaces of multiple virtual machines. Memory sharing is already available in deduplication solutions. Deduplication does exactly what you think it does: avoids storing the same data twice.
43 If virtual machines can share memory, a single computer becomes a virtual multiprocessor. Since all the cores in a multicore chip share the same RAM, a single quad-core chip could easily be configured as a 32-node multiprocessor or a 32-node multicomputer, as needed. The combination of multicore, virtual machines, hypervisor, and microkernels is going to radically change the way people think about computer systems. Current software cannot deal with the idea of the programmer determining how many CPUs are needed, whether they should be a multicomputer or a multiprocessor, and how minimal kernels of one kind or another fit into the picture.
44 What is Cloud ComputingCloud computing means on demand delivery of IT resources via the internet with pay-as-you-go pricing. It provides a solution of IT infrastructure in low cost. Why Cloud Computing? Actually, Small as well as some large IT companies follows the traditional methods to provide the IT infrastructure. That means for any IT company, we need a Server Room that is the basic need of IT companies. In that server room, there should be a database server, mail server, networking, firewalls, routers, modem, switches, QPS (Query Per Second means how much queries or load will be handled by the server) , configurable system, high net speed and the maintenance engineers. To establish such IT infrastructure, we need to spend lots of money. To overcome all these problems and to reduce the IT infrastructure cost, Cloud Computing comes into existence.
45
46 Characteristics of Cloud Computing1) Agility The cloud works in the distributed computing environment. It shares resources among users and works very fast. 2) High availability and reliability Availability of servers is high and more reliable, because chances of infrastructure failure are minimal. 3) High Scalability Means "on-demand" provisioning of resources on a large scale, without having engineers for peak loads. 4) Multi-Sharing With the help of cloud computing, multiple users and applications can work more efficiently with cost reductions by sharing common infrastructure.
47 5) Device and Location IndependenceCloud computing enables the users to access systems using a web browser regardless of their location or what device they use e.g. PC, mobile phone etc. As infrastructure is off-site (typically provided by a third-party) and accessed via the Internet, users can connect from anywhere. 6) Maintenance Maintenance of cloud computing applications is easier, since they do not need to be installed on each user's computer and can be accessed from different places. So, it reduces the cost also. 7) Low Cost By using cloud computing, the cost will be reduced because to take the services of cloud computing, IT company need not to set its own infrastructure and pay-as-per usage of resources. 8) Services in pay-per-use mode Application Programming Interfaces (APIs) are provided to the users so that they can access services on the cloud by using these APIs and pay the charges as per the usage of services.
48 Disadvantages of Cloud Computing1) Require a constant Internet Connection Cloud computing is impossible without Internet connection. To access any applications and documents you need a constant Internet connection. 2) Require High Speed Internet connection Similarly, a low-speed Internet connection makes cloud computing painful at best and often impossible. Web based apps often require a lot of bandwidth to download, as need to download large documents. 3) Stored Data Might Not Be Secure With cloud computing, all your data is stored in the cloud. That's all well and good, but how secure is the cloud? Can't unauthorized users gain access to your confidential data?
49 History of Cloud ComputingBefore emerging the cloud computing, there was Client/Server computing which is basically a centralized storage in which all the software applications, all the data and all the controls are resided on the server side. If a single user wants to access specific data or run a program, he/she need to connect to the server and then gain appropriate access, and then he/she can do his/her business. Then after, distributed computing came into picture, where all the computers are networked together and share their resources when needed. On the basis of above computing, there was emerged of cloud computing concepts that later implemented. At around in 1961, John MacCharty suggested in a speech at MIT that computing can be sold like a utility, just like a water or electricity. It was a brilliant idea, but like all brilliant ideas, it was ahead if its time, as for the next few decades, despite interest in the model, the technology simply was not ready for it.
50 But of course time has passed and the technology caught that idea and after few years we mentioned that: In 1999, Salesforce.com started delivering of applications to users using a simple website. The applications were delivered to enterprises over the Internet, and this way the dream of computing sold as utility were true. In 2002, Amazon started Amazon Web Services, providing services like storage, computation and even human intelligence. However, only starting with the launch of the Elastic Compute Cloud in 2006 a truly commercial service open to everybody existed. In 2009, Google Apps also started to provide cloud computing enterprise applications. Of course, all the big players are present in the cloud computing evolution, some were earlier, some were later. In 2009, Microsoft launched Windows Azure, and companies like Oracle and HP have all joined the game. This proves that today, cloud computing has become mainstream.
51 How does cloud computing workAssume that you are an executive at a very big corporation. Your particular responsibilities include to make sure that all of your employees have the right hardware and software they need to do their jobs. To buy computers for everyone is not enough. You also have to purchase software as well as software licenses and then provide these software's to your employees as they require. Whenever you hire a new employee, you need to buy more software or make sure your current software license allows another user. It is so stressful that you have to spend lots of money. But, there may be an alternative for executives like you. So, instead of installing a suite of software for each computer, you just need to load one application. That application will allow the employees to log-in into a Web-based service which hosts all the programs for the user that is required for his/her job. Remote servers owned by another company and that will run everything from to word processing to complex data analysis programs. It is called cloud computing, and it could change the entire computer industry. In a cloud computing system, there is a significant workload shift. Local computers have no longer to do all the heavy lifting when it comes to run applications. But cloud computing can handle that much heavy load easily and automatically. Hardware and software demands on the user's side decrease. The only thing the user's computer requires to be able to run is the cloud computing interface software of the system, which can be as simple as a Web browser and the cloud's network takes care of the rest.
52 Types: 1. Public Cloud Public cloud allows the accessibility of systems and services easily to general public. Eg: Amazon, IBM, Microsoft, Google, Rackspace etc.
53 Advantages of Public Cloud Model1) Low Cost Public cloud is having low cost as compared to private or hybrid cloud, because it shares same resources with large number of consumer. 2) Reliable Public cloud provides large number of resources from different locations, if any of the resource fail, public cloud can employ another one. 3) Flexible It is very easy to integrate public cloud with private cloud and hence it gives flexible approach to consumers. 4) Location Independent It ensures the independency of location, because public cloud services are delivered through Internet. 5) High Scalability Cloud resources are available as per the demand from the pool of resources that means they can be scaled up or down according to the requirement.
54 Disadvantages of Public Cloud Model1) Low security In public cloud model, data is present off-site and resources are shared publicly. Hence it does not ensure the high level security. 2) Less customizable It is less customizable than private cloud.
55 Private Cloud The Private cloud allows the accessibility of systems and services within the organization. Private cloud is operated only within a particular organization. But it will be managed internally or by third party.
56 Advantages of Private Cloud Model1) High security and privacy Private cloud resources are shared from distinct pool of resources and hence highly secured. 2) More Control Private clouds have more control on its resources and hardware than public cloud because it is accessed only within the boundary of an organization. Disadvantages of Private Cloud Model 1) Restriction Private cloud is only accessible locally and it is very difficult to deploy globally. 2) More Cost cloud is having more cost than public clouds. 3) Inflexible price In order to fulfill demands, purchasing new hardware is very costly. 4) Less Scalability Private clouds are scaled only within capacity of internal hosted resources.
57 Hybrid Cloud The Hybrid cloud is the mixture of public and private cloud. Non-critical activities are performed by public cloud while critical activities are performed by private cloud.
58 Advantages of Hybrid Cloud Model1) Scalable It provides both the features of public and private cloud scalability. 2) Flexible and secure It provides secure resources because of private cloud and scalable resources because of public cloud. 3) Cost effective It is having less cost as compared to private cloud. Disadvantages of Hybrid Cloud Model 1) Networking issues Networking becomes complex because of private and public cloud. 2) Security Compliance It is necessary to ensure that cloud services are compliant with the security policies of an organization.
59 Software as a Service | SaaSSaaS is a software distribution model in which applications are hosted by a cloud service provider and made available to customers over internet. SaaS is also known as "On-Demand Software". In SaaS, software and associated data are centrally hosted on the cloud server. SaaS is accessed by users using a thin client via a web browser. Advantages of SaaS cloud computing layer 1) SaaS is easy to buy SaaS pricing is based on a monthly fee or annual fee, SaaS allows organizations to access business functionality at a low cost which is less than licensed applications. Unlike traditional software which is sold as a licensed based with an up-front cost (and often an optional ongoing support fee), SaaS providers generally pricing the applications using a subscription fee, most commonly a monthly or annually fee. 2) Less hardware required for SaaS The software is hosted remotely, so organizations don't need to invest in additional hardware.
60 3) Low Maintenance required for SaaSSoftware as a service removes the necessity of installation, set-up, and often daily unkeep and maintenance for organizations. Initial set-up cost for SaaS is typically less than the enterprise software. SaaS vendors actually pricing their applications based on some usage parameters, such as number of users using the application. So SaaS does easy to monitor and automatic updates. 4) No special software or hardware versions required All users will have the same version of software and typically access it through the web browser. SaaS reduces IT support costs by outsourcing hardware and software maintenance and support to the IaaS provider. Disadvantages of SaaS cloud computing layer 1) Security Actually data is stored in cloud, so security may be an issue for some users. However, cloud computing is not more secure than in-house deployment. Learn more cloud security. 2) Latency issue Because the data and application are stored in cloud at a variable distance from the end user, so there is a possibility that there may be more latency while interacting with the application than a local deployment. So, SaaS model is not suitable for applications whose demand response times are in milliseconds. 3) Total Dependency on Internet Without internet connection, most SaaS applications are not usable. 4) Switching between SaaS vendors is difficult Switching SaaS vendors involves the difficult and slow task of transferring the very large data files over the Internet and then converting and importing them into another SaaS also.
61 Infrastructure as a Service | IaaSIaaS is one of the layers of cloud computing platform wherein the customer organization outsources its IT infrastructure such as servers, networking, processing, storage, virtual machines and other resources. Customers access these resources over internet i.e. cloud computing platform, on a pay-per-use model. Iaas, earlier called Hardware as a Service (HaaS), is a cloud computing platform based model. In traditional hosting services, IT infrastructure was rented out for a specific periods of time, with pre-determined hardware configuration. The client paid for the configuration and time, regardless of the actual use. With the help of IaaS cloud computing platform layer, clients can dynamically scale the configuration to meet changing requires, and are billed only for the services actually used. IaaS cloud computing platform layer eliminates the need for every organization to maintain the IT infrastructure. IaaS is offered in three models: public, private, and hybrid cloud. Private cloud implies that the infrastructure resides at the customer-premise. In case of public cloud, it is located at the cloud computing platform vendor's data center; and hybrid cloud is a combination of two with customer choosing the best of both worlds.
62 Advantages of IaaS cloud computing layer 1) You can dynamically choose a CPU, memory and storage configuration as per your needs. 2) You easily access the vast computing power available on IaaS cloud platform. 3) You can eliminate the need of investment in rarely used IT hardware. 4) IT infra will be handled by the IaaS cloud computing platform vendors. Disadvantages of IaaS cloud computing layer 1) There is a risk of IaaS cloud computing platform vendor by gaining the access to the organizations data. But it can be avoided by opting for private cloud. 2) IaaS cloud computing platform model is dependent on internet availability. 3) It is also dependent on the availability of virtualization services. 4) IaaS cloud computing platform can limit the user privacy and customization options.
63 Some pinpoint about IaaS cloud computing layerIaaS cloud computing platform cannot replace traditional hosting method but it provides more than that and each resources which are used are predictable as per the usage. IaaS cloud computing platform may not eliminate the need for an in-house IT department. It will be needed to monitor or control the IaaS setup. IT salary expenditure might not reduce significantly, but other IT expenses can be reduced. Breakdowns at the IaaS cloud computing platform vendor's end can bring your business to at the halt stage. Assess the IaaS cloud computing platform vendor's stability and finances. Make sure that SLAs (i.e. Service Level Agreement) provide backups for data, hardware, network and application failures. Image portability and third-party support is a plus point. The IaaS cloud computing platform vendor can get access to your sensitive data. So, engage with the credible companies or organizations. Study their security policies and precautions.
64 Top vendors who are providing IaaS cloud computing platformIaaS Vendor Iaas Solution Details Amazon Web Services Elastic, Elastic Compute Cloud (EC2) MapReduce, Route 53, Virtual Private Cloud, etc. The cloud computing platform pioneer, Amazon offers auto scaling, cloud monitoring, and load balancing features as part of its portfolio. Netmagic Solutions Netmagic IaaS Cloud Netmagic runs from data centers in Mumbai, Chennai, and Bangalore, and a virtual data center in the United States. Plans are underway to extend services to West Asia. Rackspace Cloud servers, cloud files, cloud sites, etc. The cloud computing platform vendor focuses primarily on enterprise-level hosting services. Reliance Communications Reliance Internet Data Center RIDC supports both traditional hosting and cloud services, with data centers in Mumbai, Bangalore, Hyderabad, and Chennai. The cloud services offered by RIDC include IaaS and SaaS. Sify Technologies Sify IaaS Sify's cloud computing platform is powered by HP's converged infrastructure. The vendor offers all three types of cloud services: IaaS, PaaS, and SaaS. Tata Communications InstaCompute InstaCompute is Tata Communications' IaaS offering. InstaCompute data centers are located in Hyderabad and Singapore, with operations in both countries.
65 Platform as a Service | PaaSPaaS cloud computing platform is a developer programming platform which is created for the programmer to develop, test, run and manage the applications. A developer is able to write the application as well as deploy it directly into this layer easily. PaaS extend and abstract the IaaS layer by removing the hassle of managing the individual virtual machine. In PaaS cloud computing platform, back end scalability is handled by the cloud service provider and the end user does not have to worry about to manage the infrastructure. All the infrastructure to run the applications will be over the internet. Advantages of PaaS cloud computing layer 1) Simplified Development Developers can focus on development and innovation without worrying about the infrastructure. 2) Lower risk No requirements of up-front investment in hardware and software. Developers only need a PC and an internet connection to start building applications. 3) Prebuilt business functionality Some PaaS vendors also provide already defined business functionality so that users can avoid building everything from very scratch and hence can directly start the projects only. 4) Instant community PaaS vendors frequently provides online communities where developer can get the ideas, share experiences and seek advice from others. 5) Scalability Applications deployed can scale from one to thousands of users without any changes to the applications.
66 Disadvantages of PaaS cloud computing layer1) Vendor lock-in One have to write the applications according to the platform provided by PaaS vendor so migration of an application to another PaaS vendor would be a problem. 2) Data Privacy Corporate data, whether it can be critical or not, will be private so if it is not located within the walls of the company there can be a risk in terms of privacy of data. 3) Integration with the rest of the systems applications It may happen that some applications are local and some are in cloud. So there will be chances of increased complexity when we want to use data which in the cloud with the local data. Top vendors who are providing PaaS cloud computing platform Google Apps Engine (GAE) SalesFroce.com Windows Azure AppFog Openshift Cloud Foundary from VMware