One of the tricky parts of Satellite 6.0 is that there’s not so much information about it yet.
Last day I was facing this issue:
# tail /var/log/foreman/production.log Processing by UnattendedController#provision as */* Parameters: {"token"=>"2cef5164-592e-4a2b-b476-b5b48dc519e9"} Found pxe.fite.cat.lab Remove puppet certificate for pxe.fite.cat.lab Adding autosign entry for pxe.fite.cat.lab unable to find provision template for [pxe.fite.cat.lab] running [RedHat 6.5] Rendered text template (0.0ms) Completed 404 Not Found in 1440ms (Views: 0.5ms | ActiveRecord: 4.2ms)
And once I was deploying a new server via PXE I could see a 404 request in Apache:
# tail /var/log/httpd/foreman_access.log 10.1.1.110 - - [24/Sep/2014:21:40:53 +0000] "GET /unattended/provision?token=2cef5164-592e-4a2b-b476-b5b48dc519e9 HTTP/1.1" 404 77 "-" "anaconda/13.21.215"
And from server side I could only see that PXE was fine as it was booting but dracut was just timing out due to this 404.
So after some debugging I’ve noticed that I didn’t have any provision template for my OS, but Satellite 6.0 wasn’t complaining about it, so here’s a snippet that could help you out setting PXE/Provision template to a OS:
PXEID=$(hammer --csv template list | grep 'Kickstart default PXELinux' | awk -F, {'print $1'}) SATID=$(hammer --csv template list | grep 'Satellite Kickstart Default' | awk -F, {'print $1'}) for i in $(hammer --csv os list | awk -F, {'print $1'} | grep -vi '^ID') do hammer template add-operatingsystem --id="${PXEID}" --operatingsystem-id="${i}" hammer os set-default-template --id="${i}" --config-template-id="${PXEID}" hammer os add-config-template --id="${i}" --config-template-id="${SATID}" hammer os set-default-template --id="${i}" --config-template-id="${SATID}" done