With the proliferation of Virtualisation, infrastructure-as-code is becoming a reality.
With the help of deployment tools such as Chef and Puppet, whole environments of virtual servers can be spun up and configured in a matter of minutes.
Provisioning: Manage the installation and configuration of a host OS. Cobbler and Crowbar manage baseline install on physical hardware.
System Configuration: Chef and Puppet are system configuration tools. Among other things, they can install and configure the OS and packages.
Virtualisation: Creating and Managing virtual infrastructure.