Installation in a Xen VM

I tried to install Rockstor in a Xen VM.

I can not start the installer.
I end up with the following picture:
https://owncloud.galantgdi.de/index.php/s/xM4s52I7KQWj375

It seems te problem ist the harddrive naming under Xen. The harddrives are named /dev/xvd* instead of /dev/sd*

Problem is, I can not override this, because the linux kernel recognises that it is running under xen hypervisor an automatic uses the paravirt drivers for the disc. Even if I configure the vm to show sata drives. So this results in the devices called /dev/xvd*

You do see the Rockstor splash screen, correct? If you do, then you can remove the ks directive. See this thread for more info: Install on HP DL360 G5 fails to detect hardware raid [solved]

If you are able to proceed without the ks=… parameter, great. But make sure you go with BTRFS partitioning scheme. LVM may be the default and you need to change that to BTRFS.

Hi,

thanks for the reply.
I did it another way. I passend thru my SAS controller to the vm an so there was an /dev/sda then.
It was planned to pass this controller to the VM.

So I was able to install rockstor.

KVM has the same problem is the storage controller is set to virtIO

With KVM there is an easy workaround.
Create a dummy virtual disk (1 GB for example). Add it to the VM definition as SATA disk sda. All other disks remain virtio.
Then install rockstor to the virtio disk you want. The installation will start without any problems, because there is the dummy disk as sda.

After instlltion is done, you can remove the dummy sata disk from the VM definition.

With xen the case is somewhat different. Linux guests with newer kernels recognize, that they are starting under Xen hypervisor and do automatically load the paravirtual drivers. No matter what is configured in the VM definition. So every virtual disk will become /dev/xvd*. So the installtion will not work out of the box.

Same here (“Specified non existant disk sda in ignore disk command”). Has anyone managed to install Rockstor as a XenServer VM on a non VT-d system (ie no passthrough workaround)? Tried pressing tab at the splash screen and removing the ks=hd… just get a white underscore in the top left as if it can’t find any boot device.

The most relevant forum topic seems to be this, but it’s about a hardware RAID device, and I’m just trying to make it install with the onboard SATA, so not sure what the references to “magic kernel options” would be in my case. I tried adding “hpsa.hpsa_allow_any=1” to the end of the Rescue command line, but upon pressing “Next” it says “You don’t have any Linux partitions”, so that can’t be right.

I’ll have a crack at installing vanilla CentOS next, but suggestions welcome.

CentOS installs via a workaround: at spash screen, choose “Troubleshooting”, then “Install CentOS 7 in basic graphics mode”. Can choose BTRFS in subsequent text wizard, and install completes fine.

However the same procedure fails for Rockstor (choosing “Install Rockstor in basic graphics mode”). Fails to reach the text install wizard. The last lines of text on screen are:

anaconda 19.31.123-1 for Rockstor 3 started.

  • installation log files are stored in /tmp during the installation
  • shell is available on TTY2
  • if the graphical installation interface fails to start, try again with the inst.text bootoption to start text installation
  • when reporting a bug add logs from /tmp as separate text/plain attachments
    The following problem occurred on line 13 of the kickstart file:

Specified nonexistent disk sda in ignoredisk command

And at the bottom of the screen is “Pane is dead”.

In the working CentOS install, this stage says:

anaconda 19.31.123-1 for CentOS 7 started.

  • installation log files are stored in /tmp during the installation
  • shell is available on TTY2
  • if the graphical installation interface fails to start, try again with the inst.text bootoption to start text installation
  • when reporting a bug add logs from /tmp as separate text/plain attachments
    09:35:37 Not asking for VNC because we don’t have a network
    09:35:37 X startup failed, falling back to text mode

Then below that are the textual install options. Need to somehow remove this hardcoding of disk: sda in Rockstor.

Cracked it. I pressed tab at the “Install Rockstor in basic graphics mode” stage, then removed the ks= part of the string per Suman’s suggestion. Then it proceeded to ask whether I’d like to install using VNC or text mode. Launched VNC and…:smile:

Any idea whether installing Rockstor using the GUI wizard without the ks= options will use BTRFS and any other options it needs?

Hi,

I tried installing using the GUI. But I ended up with no luck.
If you use auto partitioning, this results in LVM instead of BTRFS for the root partition. In the result rockstor complains about the root partition not being BTRFS and does not work.
So I tried to partition the disk by hand and using BTRFS instread of LVM. But also no luck.
After installation completed, rockstor complained about a not parsable string 17.5
I realized that 17.5 was exakt the size of my root partition.
So I tried to make the size an integer value of gigabytes. In ths case 17 GB. This worked. After installation rockstor did not complain about this and worked so far.

But after adding my data disks, it complained again about a non parsable value of 2.74 (or something like this). And this was the exact size of my data disks in TB.

So, after all, I ended up in an not usable installation. This was the point, where I temporarely passend thru my SATA controller to the VM with one hard drive connected. This leads to an existing /dev/sda. The normal installation works and I installed to /dev/xvda. After installation the passed thru controller can be removed and rockstor is up and running.

Yes I had no luck with GUI (via VNC) either. Trying text install instead.

The problem is caused by the kickstart file on the root of the Rockstor ISO: ks.conf. Line 13 (unlucky for some) is:

ignoredisk --only-use=sda

I’ve tried commenting this out or replacing with xvda, and then saving into the ISO (using WinISO), but then the installer says:

dracut-initqueue[585]: Warning: failed to fetch kickstart from hd:LABEL=Rockstor\x203\x20x86_64:/ks.cfg

and eventually boots to a command prompt (no web UI). I’m guessing that my changing the ISO has broken some checksum, so it no longer sees this as a valid ISO image, and “fails to fetch”.
I’ve just used the text installer instead of VNC, and it seems to have completed the install okay, and I’m now in the webui. I’m concerned that I’m missing something crucial in the kickstart file that wasn’t loaded. This is below for reference. Is there any way to post-instate these kickstart options? Eg "services --enabled=“chronyd”? I have prefixed the commented lines with a ’ because hashes are made into titles in this forum editor:

‘#version=RHEL7
’# System authorization information
auth --enableshadow --passalgo=sha512

‘# Use CDROM installation media
cdrom
#text
’# Run the Setup Agent on first boot
#this may not be necessary. look at rockstor vm’s anaconda and decide.
firstboot --enable

‘# probably not necessary. this can be upto the user to decide.
ignoredisk --only-use=sda
’# Keyboard layouts
keyboard --vckeymap=us --xlayouts=‘us’

'# System language
lang en_US.UTF-8

‘# Network information
’# probably not necessary. users can configure interactively. Or should we leave dhcp as the default?
network --bootproto=dhcp --onboot=yes --hostname=Rockstor

‘# Root password
#rootpw --iscrypted $6$F3v.RAjU…pGqpAf$ItkRJpJdKjZExy0rMG/ZDotQdAn65LO59iG/CPF/ql9MFHiMl1RzUW0aQXRHO94IgdBMBUrJ7mzJBv2rx1zPY1
’# System services
services --enabled=“chronyd”
’# System timezone
#timezone America/Los_Angeles --isUtc
’# X Window System configuration information
xconfig --startxonboot
’# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
autopart --type=btrfs
’# Partition clearing information
clearpart --none --initlabel

firewall --disabled
selinux --disabled

%packages
@core
%end

just adding my 2c: I used vnc install and it worked fine.

Suman, is there any chance you can comment out this line from ks.cfg in the next version?

ignoredisk --only-use=sda

No it will not, unfortunately. We should probably create a short installation video for this scenario. You’ll need to (1) choose BTRFS for the partitioning layout (2) Select Rockstor environment in the package selection (3) make sure network connection is up.

Sure, I’ve created this issue with your request. I am not fully sure how that impacts normal installations. I will test it out next time we update the ISO file.

So I tried to make the size an integer value of gigabytes. In ths case 17 GB. This worked.

Hi Shrauber,

Please can you tell me the command you typed to change the disk size on the Rockstor because I’m having the same issue.

Many thanks

Hi,

no special command. I used the graphical installer and there the manual partitioning.For the root partition I typed in 17 G in the create partition dialog.

Just a note that might help here. To reproduce what the ‘appliance’ auto install options do partition wise there is a picture of them in the docs inside the Reinstalling Rockstor howto.
And from parted we have:-

(parted) print                                                            
Model: ATA TS32GMSA370 (scsi)
Disk /dev/sdc: 32.0GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system     Flags
 1      1049kB  525MB   524MB   primary  ext4            boot
 2      525MB   3728MB  3202MB  primary  linux-swap(v1)
 3      3728MB  32.0GB  28.3GB  primary  btrfs

Might be relevant to those doing advanced DIY partitioning, either out of necessity or curiosity.

My understanding is that the rockstor_rockstor pool name is important but I think there are plans to alter this requirement.

Just to update the situation on installing Rockstor as a XenServer VM. “ignoredisk --only-use=sda” is still in ks.cfg on the latest ISO, and perhaps this won’t be changed. While removing would ease installing on XenServer, some might say it’s not worth the cost of giving users a list of disks from which to choose where to install Rockstor, which might confuse.

Perhaps better to find a workaround for installing Rockstor in Xen. Removing ks.cfg from boot options won’t work because both the GUI & text installer won’t continue without something in the Software Selection section. Hence continuing down the path of installing with ks.cfg specified, I’ve got past the “Specified nonexistent disk sda in ignoredisk command” error by:

  1. Changing the following lines in ks.cfg:
    ignoredisk --only-use=xvda
    bootloader --location=mbr --boot-drive=xvda
  2. Saving the new ks.cfg to the ISO using ISO editor software,
  3. Booting off the ISO, choosing Troubleshooting, pressing tab key on the Install Rockstor in Basic Graphics Mode and changing boot options to:
    vmlinuz initrd=initrd.img inst.stage2=cdrom xdriver=vesa nomodeset quiet ip=dhcp ks=cdrom:/ks.cfg
  4. Choosing option 1. VNC.

I then run through the GUI install wizard as normal, but the progress bar gets about a third of the way and fails:

I attach the anaconda-tb & storage.log files. Can anyone see why this is failing? The VM has a single 20GB disk.

anaconda-tb
storage.log

Are you sure about this? I just tried. You can click on software selection and you’ll see Rockstor listed under base environment. In fact, that’s the only one listed. Can you try again using vanilla Rockstor-3.8-9.02 ISO?

Yes installed this time :slight_smile: Software Selection was populated. Perhaps I had wrongly put “cdrom” in the boot string. To expand phillxnet’s guidance about disk partitioning. It should be:

Path: /boot
File System: ext4
Name: xvda1
Volume: NA
Size: 500mb

File System: swap
Name: xvda2
Volume: NA
Size: 2048mb

Path: /home
File System: btrfs
Name: home
Volume: rockstor_rockstor
Size: remaining (17gb in my case as I had a 20GB disk)

Name: root
Path: /
File System: btrfs
Volume: rockstor_rockstor
Size: remaining (17gb in my case as I had a 20GB disk)

So to summarise installing in a Xen VM:

  1. Boot off the vanilla, original Rockstor ISO.
  2. Choose Troubleshooting, press tab key on Install Rockstor in Basic Graphics Mode and change boot string to:
    vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=Rockstor\x203\x20x86_64 xdriver=vesa nomodeset quiet ip=dhcp
    in other words, simply remove this from the end of the string:
    ks=hd:LABEL=Rockstor\x203\x20x86_64:/ks.cfg
  3. Either choose VNC or Text interface when prompted. Fill in the options as required, changing the disk partitioning as above.

I think this is a simple enough workaround to warrant closing this issue about removing references to sda from ks.cfg.

3 Likes