Here are some common existing deployment methods for virtual machines:
- Manual installation from ISO - Booting a virtual machine from an installation ISO and manually installing an operating system through the graphical user interface. Good for one-off deployments but not scalable.
- Scripted installation - Using scripts to automate the installation process. Better than manual but still requires customizing for each new virtual machine.
- Templates - Creating a "golden image" template virtual machine with a pre-installed and configured operating system. New virtual machines can be quickly deployed by cloning the template. Allows consistent deployments but still requires customizing each template.
- Configuration management - Using configuration management tools like Puppet, Chef, Ansible to declar