View on GitHub

Open Source Cluster Application Resources

Download this project as a .zip file Download this project as a tar.gz file

Documentations > Developer Documentations > OSCAR infrastructure

SystemConfigurator

Kernel Specification

A new feature has been introduced into systemconfigurator for OSCAR, the configuration of virtual environments using virtualization solutions such as Xen. All previous kernel configuration are still supported, for more details about default systemconfigurator capabilities, please read the systemconfigurator documentation: [http://sisuite.org/systemconfig/man/systemconfig.conf.html]

For the support of Hypervisor, a new HOSTOS directive has been created which allows to specify that kernel has to be used by the host OS within a virtual environment. The PATH directive is used to specify the Hypervisor and INITRD is used to specify the initrd file for the host OS. Note that currently only Grub is supported

Example

Here an example of /etc/systemconfig/systemconfigurator.conf file that setups a virtual environment:

# systemconfig.conf written by systeminstaller.
CONFIGBOOT = YES
CONFIGRD = YES

[BOOT]
        ROOTDEV = /dev/hda6
        BOOTDEV = /dev/hda
        DEFAULTBOOT = Xen

[KERNEL0]
        PATH = /boot/vmlinuz-2.6.8-3-686-smp
        LABEL = 2.6.8-3-686-smp

[KERNEL1]
        PATH = /boot/xen.gz
        LABEL = Xen
        APPEND = dom0_mem=131072
        HOSTOS = /boot/vmlinuz-2.6.8-3-686-smp
        INITRD = /boot/initrd.img-2.6.8-3-686-smp

This configuration file will generate the following GRUB configuration file:

###################################################
# This file is generated by System Configurator. #
###################################################
# The number of seconds to wait before booting.
timeout 5
# The default kernel image to boot.
default 1
# The splash image (this line will be empty if nothing was found)

# kernel0
title 2.6.8-3-686-smp_(hd0,0)
        root (hd0,0)
        kernel /vmlinuz-2.6.8-3-686-smp ro root=/dev/hda6
        initrd /sc-initrd-2.6.8-3-686-smp.gz

# kernel1
title Xen_(hd0,0)
        root (hd0,0)
        kernel /xen.gz dom0_mem=131072
        module /vmlinuz-2.6.8-3-686-smp root=/dev/hda6 ro console=tty0
        module /initrd.img-2.6.8-3-686-smp

Building Process

Systemconfigurator SVN repository is hosted at [http://svn.systemimager.org].

In order to compile Systemconfigurator, you need to execute perl Makefile.PL && make. Note that the building system for Systemconfigurator is based on ExtUtils::MakeMaker. Therefore if you want to update the Makefile.PL, be sure you use the correct macros. For instance, do not make a direct reference to /usr/bin/pod2man, use the pod2man subroutine of the ExtUtils::MakeMaker Perl package. Another example, if you want to implement a new installation rule in the Makefile.PL file, be sure you use the variables that have DEST as prefix in order to avoid any issue during the building process.

Build .deb Packages

to create .deb packages, just check out sources, generate the Makefile (perl Makefile.PL) and execute make deb. Created packages are in /tmp/scdeb/.

Build RPM Packages

We should use make rpm.