Many times I’m asked: How should I deploy this app: Add it to the base image, during the OS Deployment (as application) or after (sw deployment via computer collections/user)
This is a trick question and my answer is always couple of questions:
1- Size of the application2- How often it changes?3- who uses it?4- How often you rebuild your base image?
Anyway…as you now have an idea, let’s get the office application but let’s ask the following questions:
1- Which deployment method will use less bandwidth?2- Which deployment method will be faster?
To answer your questions, I created 2 base images, 1 with office and another without office. The size of the base image with office is 4.03GB (4,226,404KB) and without office is 2.82GB (2,966,625KB)
Now, time of the tests:1- Deploy OS (Windows 8) via TS and Deploy Office via Software Distribution Result: 27 minutes, 29 seconds and used 3.93GB
2- Deploy OS (Windows 8) and Office via TS (Office is deployed as application and not part of the base image) Result: 24 minutes, 30 seconds and used 3.93GB
3- Deploy OS (Windows 8) and Office via TS (Office is part of the base image). Result: 27 minutes, 01 seconds and used 4.36GB
As you can see, method 2 seems to be the fastest and used less bandwidth and the method 3 is using a lot more network badwidth
Now, let’s imagine couple of applications:1- Office: Office is a large application and, often, you deploy it to all computers (except servers). The application doesn’t change often (and you can use software updates to deploy any update). For service packs, it is released once every few months. In my opinion it is a good example of application that you could add to the base image2- Flash: Small application, change almost every week, everyone uses. It is not a good example, this is because every time you deploy the software, you need to update it. And updating flash is not only adding couple of registry changes/file changes, it is a complete new set of files (well, flash has only couple of files anyway)3- Line of business app: App that is deployed to a few people only, maybe changes maybe not. This is an app that I normally do not put on the base, except if you want to manage couple of base images4- Anti-virus: I normally against putting the AV into the base image, this is because it changes a lot and I prefer have no anti-virus instead of having an anti-virus that does not do anything…but this is my opinion
My recommendations:1- Put in the base image only applications that doesn’t change or change only couple of times per year2- Put only large applications. Applications with less than 100MB I do not see the point (my opinion)3- Do not add AV to the base image (my opinion)4- Update your base image couple of times per year to add the latest updates to it and same time when performing the OS Deployment…
But why would I add any software on my base image if it is slower and use more data and I’ll need to recreate the base image couple of times a year?!?!?!?!
Before I answer that, you need be aware that there is no network issue on my lab and there is no user intervention, it means, everything works as expected.
As I only used 1 application, imagine that you need add more applications…you may have many reboots, it is more data, etc…
Now, answer your question: You need to test in your environment with your applications to discover which method will be faster and use less bandwidth and only after this you’ll be able to perform the right choice.
it would be nice to have it as well..maybe in the future...
Nice article Raphael, very insightful, and reflects real world usage ...
I would say also try to get some time savings from offlining language packs and OS software updates using MDT 2012, but, the offline software updates feature is currently ugly and busted :<