If using bare metal (or virtual machines), then Ansible is ideal. I use Ansible on my homelab to install and set up everything.