Title: Virtual Machines for Testing and Development
1Virtual Machines for Testing and Development
- What is a virtual machine (VM)
- Networked VMs
- Deploying applications
2What is a Virtual Machine
- A Virtual Machine is a tricked OS that thinks
it owns the hardware. - Supported OSs include XP, 2003 Server Family,
2000 Family, Linux, OS2, OS9 - VMs live inside a host OS, but are not aware of
Host OSs existence. - Host OS commonly selected is XP.
- Can run under 2000
3Networked VMs
- Multiple VMs can run on a single Host OS
- VMs can be networked together in their own (non
routable) class c network space - An entire Microsoft domain can exist virtually,
networked virtually, with out interfering with
physical network
42003 Server with Exchange
2003 Domain Controller DNS/DHCP Server
2003 Server with SQL 2000 And IIS
Virtual Hub
2003 Server with Internet Security
Acceleration Server (Tri-Homed)
XP Professional (test client)
Loop-back for virtual domain network access
by Host OS only 192.168.1.1
XP Professional
Allow intermittent connection via 3rd Virtual
ISA NIC to physical Network so development
network can get patches. Optional.
Physical Network
5Requirements For Using Virtual Machines
- MSDN Universal Subscription provides licenses to
all development tools and servers platforms.
(https//microsoft.na.subservices.com/msdn/contact
.asp) - VPC (Virtual PC, included with MSDN subscription)
- 2 gig of memory
- VMs memory is non-swappable
- VMs memory is unavailable to host
- Each server platform uses gt200meg RAM
- Leave enough RAM for host development tools
- 20 gig of hard drive space
6Limitations of VPC
- Virtual Machines can only run on console
- Virtual Machines can only use one processor
- Virtual Machines cannot share a Quorum, therefore
clustering is not supported - VPC is only for Test and Development
- For Production
- VmWare (available now)
- Virtual Server 2005 (beta)
7Virtual PC Console
- Launch VPC
- Briefly show each of the VM
8Launch VM and Copy Some Files
- Launch the Domain Controller
- Demonstrate how easy it is to copy files between
machines - No file Shares
- No FTP
9Mounting Media and VM Window Icons
- Mount CD/DVD ISO files
- Mount Physical CD/DVD
- Explain VM window Icons
10Testing Application Deployment with our Virtual
Domain
- Validate our Enterprise deployment and
installation of our application - Test to make sure installation target machines
are not adversely affected by our deployment - Did DLL deployment damage target?
- Did we corrupt any registry entries
- Did we adversely affect any functionality on the
installation target - If we did damage our Virtual machine, no problem.
Just copy source safe-d virtual hard drive file
over the damaged hard drive file. Fix the
problem and retest
11VPN into Virtual Domain
- Why do we need a VPN?
- Our host development tools require access to
virtual resources like SQL server - Additionally, we can do file shares in a way
that our development tools expect - VPN is invisible to physical network since we are
using a loopback adaptor as the NIC - We can publish content to IIS both inside and
outside of the VPN. But most content requires
access to SQL resources, some content may need
access to Exchange. Access to these servers is
important during debugging. - The host machine can maintain connection with
outside network while we are debugging through
VPN connection.
12Deploy the Adventure Works Report Services
Example onto the Virtual Domains web server
- Use Visual Studio .net and build the application
- Deploy the application with Visual Studio .net to
the web server
13Create Simple Domain Login Script For Users
- Use virtual domain to create a login script for
users - Login script will map a drive (we will need in
next example)
14Develop and Deploy Exchange Organizational Forms
to the Domain
- An e-form is a form that can be sent to other
users, via email but an e-form can contain
graphical controls, and programming code. - Exchange Organizational e-forms have domain
visibility. - The virtual domain allows developers to code,
deploy and test organizational e-forms.