With how many hits my 2008 R2 walkthrough got, I figured it was about time I do one for 2003 R2.
Remember to setup vCenter for Guest Customizations by placing the sysprep files for all the various versions of Windows in the proper locations, refer to this VMware KB Article for locations and instructions:Â VMware KB:1005593
Give your feedback, if you don’t agree with something let me know!
Things you may need to keep out of your templates: (research your particular product)
- Anti-Virus Agents
- Systems Management Clients (LANDesk, Altiris, SMS, SCCM, etc.)
This is how I put together Windows Server 2003 R2 VMware Templates:
Build a VM with these specs:
Disk – C:\ | 30Gb (Thin Provisioned) |
CPUs | 1 vCPU |
Memory | 1024 MB |
Network Adapter 1 | VMNET 3 |
Then follow this procedure:
Task | Notes/Reasoning |
Mount Windows 2003 R2 ISO | How else are you going to install? (anyone still using RIS out there?) |
Boot to CD Drive | … |
Format drive as NTFS | Why would you want to go with FAT32? |
Reboot when prompted | Required reboot to start the actual install |
Set Regional & Languages Options as you see fit | I can’t answer these questions for you |
Set your licensing options | Most folks go with Per Device Licensing, you can always choose Per Server and change to Per Device (only allowed to do once) read this technet article for more info |
Name Computer Win2k3-R2-E-Template | This is just personal preference, when you deploy the VM your guest customization will rename it to whatever you want anyway |
Set Description: “VMware Template†| Let AD know this is a VM |
Set Administrator password | … |
Set Time & Time Zone | Time is important |
When install is complete, login | … |
Mount Disc 2 when asked and let it run through it’s process | … |
Install VMware Tools | Fix that laggy mouse and gain the additional benefits |
Set Hardware Acceleration to Full | This will also go further in fixing that mouse lag |
Install SNMP Services (SNMP Service, SNMP WMI Provider) | Most people have some kind of network monitoring that will take advantage of the additional info SNMP will provide |
Configure SNMP: Contact: Help Desk Location: VMware Services: Physical, Applications, End-to-end |
This is SysContact, SysLocation and SysServices (as defined by RFC1213)- these are picked up by alot of network monitoring tools, letting them know it’s virtual without having to nmap or otherwise find the NICs mac and see it’s VMware is nice |
Disable Windows Firewall | You can turn it back on and punch your holes later |
Enable Remote Desktop | So server admins can remote in later when this suckers deployed |
Install Windows Update | So we can obtain all those patches…. |
Configure IE:
|
These are what I like, home pages slow down IE loading, when I’m just going to navigate elsewhere, Google > Bing, Kill Bing, Remove accelerators–because we aren’t mapping or blogging from our servers…, and advanced settings, ensure temp files are cleared when you exit IE, and turn off those friendly HTTP errors |
Adjust visual effects for performance | Save some CPU, removes the unnoticable fancy stuff, window shadows, cursor shadows, etc. |
Lower Boot Menu timeout to 5 seconds | In case something else ends up in the boot menu, don’t want reboots to take longer then they have to…oh and this won’t survive sysprep anyway… |
Modify Folder Options to:
|
This is all self explanatory no? |
Set Control Panel to Large Icons | Not even sure if this survives sysprep |
Set Windows Update to Never check for updates | This won’t survive sysprep but is required so you can check for updates |
Windows Update -> Check for updates | Uncheck IE Updates/Anti-Malware from IE8 Setup |
Apply Updates | |
Restart (required for Windows Updates) | |
Log in | |
Windows Update -> Check for updates | Select just the TS Client upgrade (must be done seperate) |
Windows Update -> Check for updates | |
Apply Updates | |
Windows Update -> Check for updates | |
Apply Updates | |
No more updates required to apply–Did not apply:
|
I don’t put any of these updates into images (.NET 4.0 can present problems, you can always install it if required on a per machine basis, but not hose up the works on every other VM that likely won’t need it. |
Configure IE ESC to be disabled for Administrators | Admins are going to do this anyway… |
Install BGInfo to C:\BGInfo Create Shortcut with switches in C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup |
BGInfo is your friend! -Â click here for more info on BGInfo |
Delete desktop.ini file on desktop | House keeping before defrag |
Empty C:\Documents and Settings\Administrator\Local Settings\Temp | House keeping before defrag |
Disable Hibernation via powercfg.exe -h off (deletes hiberfile.sys) | Our servers aren’t going to hibernate |
Disable Screensaver | Save those CPU Cycles |
Disable Paging | Don’t be afraid, this is to defrag as much as possible |
Restart (required for disabling paging) | |
Defrag C:\ | Optimize everything |
Renable Paging | self explanatory… |
Change sound profile to no sounds | Save every ounce of CPU |
Create temp user and add to local administrators group | This is the beginning of the h4x! |
Log out | because your going to login with the temp account |
Log in as temp user | mkay… |
Copy Administrator Profile to Default Profile | Now you see why we made that temp account, some people use sysprep to do this–I just do it like this though |
Log out | |
Log in as admin user | mkay… |
Delete temp user | |
Restart | required to delete locked temp user profile bits |
Log in as Administrator | |
Delete temp user profile | |
Test IE and verify settings | An update may have botched your IE settings, so double check! |
Disable Indexing on C:\ | This is really a performance thing, and is augmented further by virtualization, imagine your VMs sitting idle indexing the C:\ drive, awesome use of CPU cycles! |
Disable all visual effects | Again save those CPU cycles! |
Disable the pre-logon screensaver via regkey: set HKEY_USERS\.DEFAULT\Control Panel\Desktop\ScreenSaveActive: 0 | Another thing to save CPU cycles! |
Shutdown | Bye guys |
Detach ISO | Ya… |
Convert to Template | Mkay… |
Build your Guest Customization Specification with these RUNONCE commands
reg add “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update†/v AUOptions /t REG_DWORD /d 1 / | Disable automatic updates (does not survive sysprep) |
bootcfg /timeout 5 | Set bootmenu timeout to 5 seconds (does not survive sysprep) |
powercfg.exe -h off | Turn off Hibernation (does not survive sysprep) |