Windows

How do I... Install Virtual Server in Windows 2008 Server Core?

In a previous How do I... blog post, Steven Warren wrote about installing Windows 2008 server core. Now he tackles the installation and configuration of Virtual Server 2005 to into an instance of Windows 2008 Server Core. The entire install has to be done via command line. Follow along as Steven takes explores this subset of Windows Server 2008.

In a previous How do I... blog post, I wrote about installing Windows 2008 server core. I am really fascinated with this server core piece and I decided that it would be very cool to write about configuring Virtual Server 2005 to work in server core. The entire install has to be done via command line. It seems my fingers are hurting more than my wrist since I have not had to use a mouse in several hours.

This blog post is also available as a TechRepublic gallery and TechRepublic download.

Configuration

This tutorial begins after you load the Windows Server 2008 Server Core installation.

Our first step is to rename the computer to something useful after the initial installation. You can use the following command: (Figure A)
NETDOM renamecomputer %computername% /newname:vshost

Figure A

Rename Server
After renaming your computer (Figure B), you are required to restart the computer (Figure C) with the following command:
shutdown /r

Figure B

Renamed

Figure C

Restarted
You can now configure networking (Figure D) by typing the following command:
netsh interface ipv4 show interfaces

Figure D

Configure networking

This will tell us what Index to configure networking on. You can configure a static address by typing the following command:

netsh interface ipv4 set address name="2" source=static address=192.168.1.75 mask=255.255.255.0 gateway=192.168.1.1
Your next step is to configure DNS (Figure E) by typing the following command:
netsh interface ipv4 add dnsserver name="2" address=192.168.1.110 index=1

Figure E

Configure DNS
Figures F and G are the commands necessary to give all machines, such as those running Windows XP, access to run Windows Server Core from a remote desktop.

Figure F

Access from remote access

Figure G

Give all machines access
Let's now join Windows Server Core to the domain (Figure H) by typing the following command:
Netdom join %computername% /domain:watchtower /userd:Administrator /password:Password01

Figure H

Join domain

Next, reboot the computer by typing the following command:

shutdown /r
Windows Server Core requires you to activate the server. You can activate by typing (Figure I) the following command:
slmgr.vbs -ato

Figure I

Activate server

Configure Virtual Server 2005 R2

Let's now install Microsoft Virtual Server 2005 R2 Enterprise Edition (Figure J). Please download the setup files and either burn them to a CD-ROM or copy them to a flash memory drive.

Note: You can also copy files over the network as well.

Figure J

Install Virtual Server 2005
Accept the License Agreement (Figure K) and choose a Custom Installation (Figure L).

Figure K

License Agreement

Figure L

Custom Installation
On the Custom Setup window, as shown in Figure M, it is VERY important to deselect Virtual Server Web Application. You MUST do this to get virtual server working properly in Windows Server Core.

Figure M

Deselect Virtual Server Web Application
Figures N and O complete the installation of Virtual Server. Restart the computer with the following command to continue:
shutdown /r

Figure N

Firewall

Figure O

Setup complete
Let's move on and enable the following ports on your firewall as shown in Figure P.

Figure P

Enable ports

You must also enable a firewall exception for VMRC:

netsh fi add all "c:program filesMicrosoft Virtual Servervssrvc.exe" "Virtual Server" ENABLE.
Now you must run the following script (Listing A) (source from Virtual PC Guy):

Listing A

set vs = wscript.createobject("VirtualServer.Application")

vs.VMRCEnabled = True

vs.VMRCAdminportNumber = 5900

vs.VMRCIdleconnectionTimeOutEnabled= false

vs.VMRCXResolution = 800

vs.VMRCYResolution = 600

Copy this script into notepad and save it as Script1.vbs. Copy it to a flash key and on the Windows Server Core browse to the file and execute it by typing the following command:

cscript script1.vbs.
Let's move on to the next script (source from Virtual PC Guy) and run (Listing B) the following:

Listing B

Dim ace

set objVs = wscript.CreateObject("VirtualServer.Application")

Set objSecurity = WScript.CreateObject("VirtualServer.VMSecurity")

set objSecurity = ObjVs.Security

Set ace = objSecurity.AddEntry("wdsDomain admins",vmAccessRights_Allowed)

ace.WriteAccess = True

ace.ReadAccess = True

ace.ExecuteAccess = True

ace.DeleteAccess = True

ace.ReadPermissions = True

ace.ChangePermissions = True

ObjVs.Security = objSecurity

Copy this script into notepad and save it as Script2.vbs. Copy it to a flash key and on the Windows Server Core browse to the file and execute by typing the following command:

cscript script2.vbs.

Note: If you want to copy data over to your Windows Server Core, you can create a share by typing the following:

net share virtualshare=c: /GRANT: Everyone,FULL.

We are in the homestretch now. Our next step is to take another server or workstation on the domain and install the Microsoft Virtual Machine Remote Control Client Plus (VMRC) tool. This tool requires the .NET framework as well and allows you to administer Virtual Server without IIS installed.

Next, type the NETBIOS name of your Windows Server Core or the IP address. You can now create virtual machines (Figure Q) on a hardened kernel of Windows (Figure R).

Figure Q

Virtual machines

Figure R

Hardened kernel

It works

I hope you enjoyed this tutorial as much as I enjoyed writing it. Virtual Server on Windows Server 2008 Core is performing great -- I have 20 virtual machines currently running simultaneously for all of my TechRepublic labs. Stay tuned for a tutorial on running virtual machines in XENEnterprise.

12 comments
traivsh
traivsh

I cannot get this to work. I realize that it is a few years old so am wondering if it needs an update. I am fairly new at this and so am not sure what I am doing wrong. Everything works fine until I run the 2 scripts and they both get an error "Script1.vbs WScript.CreateObject: Could not locate automation class named "VirtualServer.Application". I then cannot connect using VMCRplus it gives an access denied error. I am not able to find anywhere else that has such good instructions any help would be appreciated.

angela.atwood
angela.atwood

Thank you for the information. Very clear and easy to follow. InfinitelyVirtual.com VPS & Virtual Server Hosting

bi.zulkarnain
bi.zulkarnain

This is a very nice article! It describes completely step-by-step on How to installing Virtual Server in Windows 2008 Server Core.... Thank you for this sharing knowledge. Regards, Bobby Zulkarnain, MCSE, MCITP, MCT www.zulkarnain.com blog: http://wss-id.org/blogs/bobby

xfactordx
xfactordx

Is there a way to get this to work without a domain?

support
support

Install as normal and then change (iis)application pipeline mode to classic. You may need to change startup from true to false. bEncircled

remco
remco

Great article, I have a problem with the VMRCplus to connect to the server; I get this erro: Source object cannot be converted to the destination type since it does not support all the required interfaces. The client an server are in the same workgroup. Do you have any idea?

Rob.Bosch
Rob.Bosch

Call me a n00b but why would you want to use Virtual server 2005 when the 2008 Hypervisor is available? Personally I am more than interested in performance of the Hypervisor. We are currently investigating for virtualization of several servers that need new hardware. I'm especially interested in how the hypervisor performs compared to ESX server.

HypnoToad72
HypnoToad72

The benefits, in theory, are terrific. The drawbacks, given previous experience running 32-bit environments within a 64-bit OS/HW architecture, are fairly noteworthy too.

north2007
north2007

I see the great trend to use Virtual servers on top of Win2008 core.

Jeremy Lowery
Jeremy Lowery

In order to use HyperVisor in Server 2008, you have to have hardware with "embedded virtualization support". If you have older servers that don't have this, the best you can achieve...er...scratch that (since what's "best" is subjective...rather, the "lowest level" virtualization you can acheive is server software virtualization, which is, essentially, just like running VirtualPC vm's on your workstation except that it's on a server. HOWEVER...doing this on Server Core is a brilliant option for those of us who need/want to get a little more mileage out of last year's server purchases. Server Core's resource footprint is much smaller than a full install even though it is still a server capable of DNS, DHCP, IIS, etc. making it as close as a "real" OS can get to a lightweight, purpose built hypervisor. So what has been represented here is a fantastic hybrid approach that "cocktails" the benefits of this year's innovations with the limitations of last year's hardware which hits the spot and leaves this admin feelin right as rain! =)

jgaskell
jgaskell

I am currently running a few virtual servers on VMware Server running on Ubuntu 6.10. I will certainly do some testing of this option now.

R. A. Caluste
R. A. Caluste

If I have a new hardware, would it be better to install 64-bit windows 2008 server with hyper-v role? ie, win2k8 server with hyper-v doing one or two roles (AD DS, DNS) and multiple vms each with specific roles (mail, sql, iis, etc)?