I need a free imaging solution for Windows 7. I want to deploy Windows 7 images today.
What tools can I use to create and deploy Windows 7 images?
What pitfalls should I watch out for, and how can I steer clear?
The simple answer : Use MDT 2012 Update 1, WAIK and WDS (John and Josh are Both right.)
MDT is free and it will build, capture, and deploy Windows 7 images. More than that though, it will update the systems at deploy time, name the systems, inject drivers, join to the domain, add local admin groups, you name it, MDT can do it.
Use WDS for PXE boot and multicasting if you have Server 2008 or above. Don't try to build and capture with WDS alone. WDS by itself is not a deployment solution. AIK by itself is not a deployment solution.
The beauty of MDT is that it uses task sequences to automate everything dynamically. Use it build your images, and then use it to deploy those same images. Build a share for both, one for builds, and one deploys.
Use a VM to build your reference, and you can build a "hardware independent" image that'll run on everything, laptops, desktops, Dell, HP, Lenovo, whatever. MDT can do the drivers later at deploy time. When combined w/ WDS, it's the only deployment solution you'll ever want to use again. As far as pitfalls are concerned, you should make sure you build a good image that has only the basic core applications, almost everything else can come later.
The MDT Deployment Workbench. Note that Win7 & WinPE drivers are segregated.
Download and Install:
Overview of what to do in the MDT workbench:
Optional Steps for WDS Integration: (For PXE Booting & Multicast)
Take Control of Drivers
Again, to ensure a reference image can run on both Laptops and Desktops, and across vendors, build it in a Virtual Environment. This way your reference image is truly hardware independent. Don't worry about drivers in your reference build, MDT can be configured to inject drivers dynamically into the image file at deploy time.
Look into a Driver Injection model known as "total control". The idea is simple, by segregating the drivers used in the workbench, you can ensure that only the right drivers are injected to the right systems. This is achieved by first creating a strictly organized set of folders within the workbench. At the very top of this we have the root folder Out of box Drivers. Inside this folder we have a folder for each OS we will be supporting. Next we sort in yet another pair of folders by Architecture, x86 vs. x64.
In the case of this example, we have two folders in the root of out of box drivers in the workbench, One for Windows 7, and another for Windows PE. Within both of these folders we will have a folder named after the Manufacturer as it would appear in WMI or system information. Then, finally within those folders we want to have folders named as the Model info, again exactly as it appears within system information.
For example, one would find the 64 bit Win7 drivers for the HP 8300 in: Windows 7\x64\Hewlett-Packard\HP Compaq Elite 8300 SFF. This may seem like overkill at first, but it pays off in dividends when we set the driver group variable in the customsettings.ini file.
DriverGroup Settings in MDT
Learning MDT is highly rewarding, even though it takes some time, but it really pays off. Once you really understand the system, you can have one baseline image, and apply all the apps and drivers dynamically on the fly. A well tuned MDT lite touch can install the OS, name the PC, inject drivers, join to the domain, install all needed apps, activate office, and reboot in less than an hour with almost no interaction required from the tech who is running the deployments.
Deployment Soup Video
Deploying Windows A - Z
Learning to use MDT litetouch
I'd recommend Microsoft's own WDS right now. There is a great technet article which outlines the changes in deployment for Windows 7. Although it talks a bit about the beta release, the information is applicable to a retail install.
You can use a tool called Free Open Ghost (FOG for short) to deploy images across a network. Visit http://www.fogproject.org/ for more information. I have seen it successfully deployed in a school before, you will have plenty of reading to do of course before you are ready to start working with it. It's worth mentioning that it's Linux based, which could be a pro or con for you.