-
Notifications
You must be signed in to change notification settings - Fork 165
Common problems and solutions
This results from using an older version of Ruby to run the razor-client. It is recommended to use 1.9.3 for the client, though later versions should work too. The ticket tracking the fix for this is here.
This occurs when trying to build the Windows 2008R2 winpe image with an older version of Powershell. To fix this issue, install the Windows Management Framework version 4.0.
On VMWare, the "starting wpeinit to detect and boot network hardware" message may appear in a frozen state for long periods of time. This can be resolved by going to "Add => New", then 'More options', 'Create a custom virtual machine', then select the image type under Microsoft Windows and continue through the rest of the steps. After that, reboot the machine.
This occurs for a number of reasons related to booting. Most often, either the URL for razor-server is incorrect or the server returned an invalid response. Check the URL displayed in the console just prior to this error message to see what is being returned by visiting it in a browser.
The URL returned in the /api
endpoints is actually generated at runtime based on the hostname you contact. This comes up from the Ruby Rack code, rather than anything we directly control. Generally speaking this tries to resolve your hostname correctly -- and the most common cause of trouble is an entry in /etc/hosts
that leads to resolving your server as "localhost" rather than the expected FQDN. Check there first.
By default, the Redhat task does not allow multiple network cards. If this capability is needed, run this command, which will modify the kickstart template to add the two devices:
sed -i '/network.*/i\network --bootproto=dhcp --device=eth0\nnetwork --bootproto=dhcp --device=eth1' /opt/puppet/share/razor-server/tasks/redhat.task/kickstart.erb
Other tasks may have similar workarounds available.
Using Mac Disk Utility to extract Windows ISO files will result in missing file, for example the SPWIZENG.DLL will not be created when extracting Windows 2012R2 ISO image file, the SPWIZENG.DLL file is needed for window setup.
There are many reasons to cause the failure 'Exec Format error' in iPXE boot with Razor, using Mac Disk Utility to extract Windows ISO image is one of them.
VirtualBox "Could not select: Exec format error ( http://ipxe.org/2e008001)" on version 4.3.26
This may be fixed by installing the VirtualBox Extension Pack for 4.3.26 from the official VirtualBox page.
VirtualBox ipxe, even with the extension, seems to need manual intervention - warm reboots don't respond properly to the DHCP info so you have to power off/on during the installation. The reported error code for this issue is 0x040ee119. To get around this, boot from a ipxe floppy device and this will go through the installation without intervention at the various reboots (Caveat - Centos6.6 minimal install worked so far with razor's Centos task).
Build the ipxe.dsk floppy image:
git clone git://git.ipxe.org/ipxe.git
cd ipxe/src
make bin/ipxe.dsk
On your virtualbox add the floppy by going to settings->storage->right click in the storage tree box->add floppy controller->add disk->choose disk->your ipxe.dsk. (You need a separate copy of the ipxe.dsk file for each machine if booting more than 1 at once).
Check that your PostgreSQL database was created with the UTF-8
encoding, which we depend on in order to manage text strings correctly. Newer versions default to this, but older versions may default to a locale-specific encoding that will cause failures.
After getting Postgresql and Razor Server installed, there may be an issue starting the razor-server service with systemd:
JBAS014775: New missing/unsatisfied dependencies:
service jboss.binding.http (missing) dependents: [service jboss.web.connector.http]
To address the issue, change the line <socket-binding name='http' port='${http.port:8080}'/>
to <socket-binding name='http' port='8080'/>
in /var/lib/razor-torquebox/configuration/standalone.xml
. This has not been encountered on any other systems.
If the URL for the Razor server does not contain a period (e.g. http://razor:8150/svc), the domain will be guessed from the preseed file's provided hostname. This is an unfortunate feature in how the preseed file is fetched from the kernel arguments. See the Debian documentation for more information.
Installing Razor Server with the rpm package provided by yum.puppetlabs.com will fail due to missing the dependency libarchive-devel
. This can be fixed by enabling the EPEL repo on el5, which provides the libarchive package. More information available at https://fedoraproject.org/wiki/EPEL
If you are using an older version of Postgresql, you will see an error similar to ERROR -- razor.sequel: Java::OrgPostgresqlUtil::PSQLException: ERROR: syntax error at or near "DEFERRABLE"
. More information available at https://groups.google.com/forum/#!topic/puppet-razor/Cxcz56GXUbk