Page 1 of 1

boot installer hangs at anaconda GUI (via IPMI)

Posted: 2019/11/06 15:28:07
by foolala
Hello,

I'm attempting to install CentOS 8 on a dedicated server via IPMI using the CentOS-8-x86_64-1905-boot.iso. The server is a OVH INFRA-3:

Code: Select all

AMD Epyc 7371 - 16 c / 32 t - 3.1 GHz / 3.8 GHz
128GB DDR4 ECC 2400MHz
2x960GB SSD NVMe Soft RAID
I am able to boot the installer and it gets to the point where the anaconda GUI is about to load, but then it hangs and just displays a black screen. At this point, monitoring my local network traffic shows that the IPMI interface has stopped uploading data from the attached CentOS-8-x86_64-1905-boot.iso.

I've tried a number of kernel boot options, including various combinations of:

Code: Select all

nomodeset acpi=off nolapic
I have also tried the VNC option, but the installer crashes with a python/xvnc timeout error when attempting to start xvnc.

Code: Select all

inst.vnc inst.vncpassword=foobar ip=dhcp
Any assistance would be greatly appreciated.

P.S. I'm now going to attempt the install with CentOS-8-x86_64-1905-dvd1.iso, but as the image is 7GB+, it may take a lot of time for IPMI to load it.

Re: boot installer hangs at anaconda GUI (via IPMI)

Posted: 2019/11/06 22:58:06
by foolala
Same results with the dvd1.iso.

I tried again with the boot.iso using these kernel boot options:

Code: Select all

nomodeset inst.xdriver=vesa inst.resolution=1024x768 selinux=0 inst.loglevel=debug
This time the screen didn't go black, but I got the infamous "X startup failed, falling back to text mode" error. I was able to ALT + CTRL + F2 into a shell and get networking going and grab some logs:

...redacted...

I couldn't find any clues in any of those.

But now that I can get networking going, perhaps I can start a vnc server manually from the anaconda shell and continue the install remotely. Anyone know how to start anaconda's vnc sever manually?

BTW I am able to get other GUI's to work over IPMI (such as gparted-live-1.0.0-5-amd64.iso), so far this issue seems limited to the CentOS 8 installer

Re: boot installer hangs at anaconda GUI (via IPMI)

Posted: 2019/11/07 04:48:26
by foolala
Finally got it installed via graphical installer + VNC. It was tricky, so here is my process for the sake of human posterity and sanity.

There were two issues the installer faced with this server and possibly IPMI:

A. Anaconda graphical refused to start (maybe due to a xdriver issue, who knows).
B. VNC server didn't work because the network wasn't being brought up.

I gave up on A and focused on B.

Start your IPMI session, attach the CentOS boot .iso file as a virtual CDROM, and restart the server. Hit F11 to enter the boot order menu, and choose the USB Virtual CDROM0 (I did not choose the UEFI Virtual CDROM0 boot option because all the UEFI shit has been disabled in the BIOS).

Image

Start the installer with these kernel boot options (select "Install..." and hit tab when the installer first starts), and substitute something else for YOURPASS:

Code: Select all

inst.vnc inst.vncpassword=YOURPASS ip=dhcp selinux=0
(Note: ip=dhcp selinux=0 options may not be necessary)

The installer will begin and this will take a long time because you're installing it a million miles away over IPMI. You will know you're getting close when you see this:

Image

The anaconda graphical installer will try to start and you'll see the a python error about an xvnc timeout and VNC failed to start, probably because the installer has no network connection. You can verify that it's given up by watching your local network traffic - if you're no longer uploading gobs of data from the .iso attached to the IPMI, then it's done.

Now hit CTRL + ALT + F2 (you may need to use the IPMI software keyboard). This will bring up a separate shell process from the anaconda installer. Let's get your network going:

Code: Select all

cd /etc/sysconfig/network-scripts
vi ifcfg-enpWHATEVER (there should be an ifcfg file for each network interface)
  change ONBOOT=no ----> ONBOOT=yes
systemctl restart NetworkManager.service

Optional step
if you must, you can now get sshd running like this:

Code: Select all

cp /etc/ssh/sshd_config.anaconda /etc/ssh/sshd_config
systemctl start sshd
HUGE WARNING this will allow anyone to ssh into your server as root with no password. So don't do it. But if you absolutely must, maybe edit /etc/ssh/sshd_config and use a different port than 22. Or maybe there is some way to set root's password in this state, but I couldn't figure out how.

Go back to your IPMI session, hit CTRL + ALT + F1 (on software keyboard) to get back to the anaconda installer tmux session. Kill it and restart it:

Code: Select all

CTRL+b :kill-session
anaconda -G
Anaconda should now start and launch the VNC server. At this point you can connect via your VNC client on port 5901. Your VNC client should prompt you to enter your password. Do so.

If it worked, you'll see a black screen with a responsive mouse cursor. This is fine, just wait a few minutes for the graphical installer to get its self together.

Then finally. The anaconda graphical installer appears on your VNC client. You should be ok from here but since this is the network boot .iso, you'll need to do this first:

Software > Installation source button > On the network: > select "http://" and enter this URI:

Code: Select all

mirror.centos.org/centos/8/BaseOS/x86_64/os
Then choose your Software > Software Selection and System > Installation Destination. Here's a decent write up on setting up software RAID1.

Image

Then begin the installation. Set a root password. Aftewards, you should be able to ssh into the server.

I hope this helps somebody else. It's been a stressful 3 days.