Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Cloud Computing – UNIT - II VIRTUALIZATION Virtualization • Hiding the reality • The mantra of smart computing is to intelligently hide the reality • • • • • • Binary-> Assembly->High level UI hides the business logic DNS names hide the IP addresses URL hides the web resource API hides functionality JVM hides the intermediate code Before we understand Virtualization • How do you run Multiple Operating Systems on the same box? • Can they interact with each other ? • Can they share each other’s resources such as memory, hard disk, network etc ? • Can you run all of them together (in one shot?) • How easy it is to switch between them ? STEP BY STEP UNDERSTANDING OF VIRTUALIZATION Hard Disk Partitioning WIN 7 UBUNTU RED HAT OS Virtualizes the Hardware Device Drivers CPU Virtualization (x86) Clustering and Failover • Node 1 and Node 2 have same content either through shared or replicated mode. • One node is active and the rest is passive. • Heartbeat keeps track of the presence of the node • Node 1 goes down, no heartbeat • The services are transferred and rendered from Node 2 • This is transparent and hence virtual to the client Java Virtual Machine • Class loader loads the java classes/interfaces • Execution Engine executes the methods contained in the loaded classes • Run time data areas store run time data like stack. • Each class execution is done by means of a java thread. Virtualization Wikipedia Definition Virtualization, in computing, refers to the act of creating a virtual (rather than actual) version of something, including but not limited to a virtual computer hardware platform, operating system (OS), storage device, or computer network resources. Concept Of Virtualization Actual System Simulated Env Simulated Env Simulated Env GUEST Software GUEST Software • Simulated Environment (a Virtual Machine) provides the environment required to run he Guest Software • The Guest Software can be complete OS to specific programs • Simulated Environment can control the guest environment in terms of access and lifetime • The Guest Program thinks that it is running in an actual system not a simulated environment Basic Architecture • Hypervisor allows multiple Guest OSs share the Hardware via Host OS. • Mostly the Hypervisor is run inside the HOST OS • Example : Guest Windows 7 Prof SP1 running on a HOST Ubuntu 13.1 • In some cases, the Hypervisor is inside the Host OS itself Hypervisor (Virtual Machine Monitor) • Directly runs on the hardware of the host • Shares the hardware resources with multiple VMs • Manages CPU, memory and Network interface between different VMs • Runs at ring 0 Virtual Machine • Software implementation of a computing environment • A computing environment is a software process which can host an OS or a program • Computing Environment emulates – A processor architecture – Memory – Secondary Storage TYPES OF VIRTUALIZATION CPU Virtualization • CPU is shared between multiple Guest OSs • Hypervisor does the translations of commands between Guest OSs and the CPU • Guest OS cannot reside on Ring 0 makes the more complex Full Virtualization • Guest OS in Ring 1, Hypervisor in Ring 0 • Hypervisor traps the Guest OS Privileged commands and does the binary translation of the command. • No change in Guest OS required • Reduced performance due to this translation process (Virtualization overhead) Full Virtualization With Reducing Virtualization Overhead • Guest OS runs on Ring 0 (which is an improvement) • Ring -1 introduced which runs the Hypervisor • No binary translation is required as Guest OS can run Privileged instructions directly on the H/W. • For I/O calls, Hypervisor is used. • Improves performance • Needs change in CPU Arch (provided by intel-VT and AMDV) Para Virtualization • A software hypervisor is installed on a Physical server • The guest OS is modified to make Hypervisor calls • These Hypervisor calls (CPU and memory access) are directly send to the hardware • I/O calls are routed through regular Hypervisor • The Hypervisor is not overloaded • Overhead in modifying OS Kernel Network Virtualization To Summarize…. Benefits of Virtualization • • • • • • • Server Consolidation Testing and Development Dynamic Load Balancing Disaster Recovery Pre-loaded VMs for specific needs Virtual Desktops Reduces installation and configuration time of the data center • Improves data center efficiency Virtualization and the Cloud • Cloud computing requires many many servers to carry out varied activities • Creating phyiscal servers is expensive and not scalable • Hence, virtualization is a natural fit • Scalability is a major use case in Cloud computing, it is easy to create/clone VMs and increase capacities • If there are node failures, it is easy to bring up a VM from nowhere • Maintaining a VM is easier than maintaining a physical box. Thank You