can anyone explain the best practice used to deploy a windows VM? I have read some docs online and i have realized this possible scenarios:
1. Deploy from scratch Using a unattend.xml file i'll create a new windows server VM ready for my customer. The "problem" is that is not personalized with application (such as SQL Server, IIS etc etc)
2. Deploy using a template
I'll install a new windows VM with several application installed, next i'll save the image and i'll use it to create the VM for my customers (cleaning it every time with the windows sysprep command).
3. Deploy a real custom VM
the third solution could be the following: I'll install a new windows VM, install on it a Puppet agent pre-configured to call my puppet master server and save it as a template. When a customer create the VM, he will choose also the application he want installed on it. Once the VM is ready, puppet agent will install the applications requested and next alert the customer that all is ready.
4. Clone a VM
Simple a clone of another VM
Can anoyone tell me if these scenarios are correct?
Do i missed some scenarios?
Is there some documentation that i can read online?
Thank you in advice to all.