I have a cluster of computers and I am using one of them as a [kickstart](https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/ch-kickstart2.html) server. 
I configured DHCP/TFTP/FTP on it and it worked fine. When you boot any box in the cluster and choose to boot from network, it will reach out to that kickstart server, lease an IP, install OS..etc. However, using one box dedicated for kickstart is such a waste of resource and I am wondering is it possible to use some level of virtualization to achieve that, so you end up with a image that is a fully functional ks server and can be running on any box with the virtuallization tool set up? 

I have used VirtualBox, Vagrant and Docker before but I am not sure will these tools be powerful enought to do it? Can anyone give some directional guidance or resource to help me get started.