DOC PREVIEW
DMC ITSY 2430 - The Developer’s Guide to Virtual Machines

This preview shows page 1-2-20-21 out of 21 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

The Developer’s Guide to Virtual Machinesan Developer eBookIn a world of multiple operating systems, each with various versions, no developer has the luxury of building appli-cations for only one target configuration. Every developer needs to ensure that his or her applications will functioncorrectly on all the OS configurations used by today's heterogeneous IT environments. Because dedicating physi-cal test systems for each target environment is out of most development teams' budgets, virtual machines (VMs) arethe right solution at the right time. Virtualization solutions enable you to run multiple VMs on one physical computer. Each VM behaves as an isolated physi-cal PC or server with its own configuration – a very useful testing and development environment that's much cheaperthan the real thing. Java developers know the benefits of the VM concept well. The promise of enabling developers to"write once, run anywhere" was a key factor in the broad adoption of Java, which itself runs on the Java Virtual Machine. As the market for virtualization grows, the ways in which developers use virtualization itself are expanding. The tradition-al development and testing uses of virtual machines as local disposable sandboxes and solutions for application isola-tion are broadening. Sharing development tasks across large teams in disparate locations appears to be the next step.Proper Virtual Machine Uses in Development and TestingVirtual machines can cut time and money from the software development and testing process, but they aren't thebest choice in every scenario. When should you use virtual machines for developing and testing software, and whenshould you use a more traditional setup with physical machines?Software development typically involves developing and testing for different target environments, but dedicating aphysical computer to each environment can be expensive. Not only do you have to consider the initial purchasecost, but physical computers also take up space, use power, and require maintenance. Virtual machines can reducethis cost by providing a way to run multiple development and test environments on one physical computer.Another problem with dedicating a physical computer to each environment is that setting up your target environ-ments can be quite time-consuming. In this situation, virtual machines can save you time. If you need to duplicate aparticular environment, you can create a library of virtual hard disks that are pre-loaded with specific sets of soft-ware. You and other members of your develop-ment and test team can clone the disks thatyou need and quickly replicate a particularenvironment in a virtual machine. This type of setup can save lots of timewhen you need to start over with a cleaninstallation, or duplicate the same environ-ment in several virtual machinesThis type of setup can save lots of time whenyou need to start over with a clean installa-tion, or duplicate the same environment inseveral virtual machines (See Figure 1).The figure shows Microsoft's Virtual Serverwith three virtual machines running the samebuild of BizTalk Server on three differentoperating systems. You could click one of1The Developer's Guide to Virtual MachinesThe Developer’s Guide to Virtual Machines, an Internet.com Developer eBook. Copyright 2006, Jupitermedia Corp.Figure 1the thumbnails to access the virtual machine or use a RemoteDesktop connection. (Note that licensing for software runningin virtual machines is pretty much the same as in physicalmachines, so make sure you have the proper licenses for allof your running software.) You can also attach virtual machines to physical networks justas if they were physical, or you can create a virtual networkfor testing different scenarios, while isolating virtual machinenetwork traffic to the host computer. This is useful for patch-ing virtual machines, providing general network access tothem, and validating different network scenarios that might berelevant in your software testing. Development and TestingUses for Virtual MachinesThe following sections describe the different ways that youcan use virtual machines for development and testing. Create a Library of Virtual Hard DisksAs previously mentioned, you can create a library of virtualhard disk (.vhd) files that you and your colleagues can use to"instantly" recreate a particular environment. Using Microsoft'sVirtual Server and Virtual PC, you can do this by creating avirtual machine, installing the requisite software on it, and thencloning the .vhd file. You can attach the .vhd file to a new vir-tual machine, boot it up, and voila: your environment is run-ning on the new virtual machine.If you want to run more than one virtual machine with thesame .vhd on the same network, you must sysprep the virtualmachine to prevent network conflicts.Create a Standardized IDEWith your IDE deployed in a virtual machine, you can quicklyset up a development environment that meets your compa-ny's standards and even share it with colleagues in your .vhdlibrary. If you work at home, you can install a virtual machineon your personal computer with the corporate "standard"environment so you can connect to the corporate network. You can also sandbox the virtual machine, isolating it fromyour personal computer, to satisfy corporate security require-ments. We'll go into sandboxing in more detail later.2The Developer's Guide to Virtual MachinesThe Developer’s Guide to Virtual Machines, an Internet.com Developer eBook. Copyright 2006, Jupitermedia Corp.According to Rich Lechner, VP of Virtualization technol-ogy for IBM, “Anywhere from 40 to 50 percent of theclients out there either have implemented or plan toimplement virtualization over the next one to twoyears. We are seeing very broad-based adoption.Certainly much broader than, in my experience, theearly days of Java and Linux."The trend has not been lost on chipmakers such asIntel and AMD, who are tweaking the underlying sili-con of the x86 platform to enable VM software makersto optimize their products. Let's examine exactly how virtualization works.An operating system running on a physical computercontrols the computer's hardware, including memory,CPU, network adapters, hard disks, and peripherals.Because only one operating system can control thehardware at any given time, you usually can't runmore than one operating system on the same comput-er at the same time. Virtual machine technology uses an agent to allocatephysical hardware


View Full Document

DMC ITSY 2430 - The Developer’s Guide to Virtual Machines

Documents in this Course
Load more
Download The Developer’s Guide to Virtual Machines
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view The Developer’s Guide to Virtual Machines and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view The Developer’s Guide to Virtual Machines 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?