Vnx-rootfscentos
How to create a CentOS root filesystem for VNX
Basic installation
Follow this procedure to create a CentOS based root filesystem for VNX. The procedure has been tested with CentOS 5.6.
- Create the filesystem disk image:
qemu-img create -f qcow2 vnx_rootfs_kvm_centos-base.qcow2 5GB
wget ftp://ftp.rediris.es/mirror/CentOS/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1.iso cp CentOS-6.2-i386-bin-DVD1.iso /almacen/iso
<domain type='kvm'> <name>CentOS</name> <memory>524288</memory> <vcpu>1</vcpu> <os> <type arch="i686">hvm</type> <boot dev='hd'/> <boot dev='cdrom'/> </os> <features> <pae/> <acpi/> <apic/> </features> <clock sync="localtime"/> <devices> <emulator>/usr/bin/kvm</emulator> <disk type='file' device='disk'> <source file='/usr/share/vnx/filesystems/vnx_rootfs_centos-base.qcow2'/> <target dev='hda'/> <driver name="qemu" type="qcow2"/> </disk> <disk type='file' device='cdrom'> <source file='/almacen/iso/CentOS-6.2-i386-bin-DVD1.iso'/> <target dev='hdb'/> </disk> <interface type='network'> <source network='default'/> </interface> <serial type="pty"> <target port="0"/> </serial> <console type="pty"> <target port="0"/> </console> <graphics type='vnc'/> </devices> </domain>
Note: change "source file=" lines to whatever fits your case (use full paths).
virsh create rootfs_centos.xml
virt-viewer CentOS
- A "minimal" system, if you want a server rootfs without user interface
- One of the other options (e.g "web server", "desktop system", etc) if you want a system with graphical user interface
Configuration
- Once installation is finished, configure the RPMForge repository following the procedure described here:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm
yum update yum install perl perl-XML-DOM perl-XML-Parser acpid daemonize
- From the host execute:
/usr/share/vnx/bin/vnx_update_aced CentOS /usr/share/vnx/aced/vnx-aced-lf-0.1b.tgz
mkdir /media/cdrom mount /dev/cdrom /media/cdrom perl /media/cdrom/install_vnxdaemon
chkconfig sendmail off chkconfig bluetooth off
ONBOOT=no
- Disable the firewall. Firewall is enabled by default which could be problematic for testing purpose systems. If desired, disable it using the following command:
chkconfig iptables off chkconfig ip6tables off
alias ipv6 off options ipv6 disable=1
VER=v0.21 OS=CentOS 5.6 DESC=Basic CentOS 5.6 root-filesystem without GUI
#!/bin/bash echo "** Cleaning yum cache..." yum clean all echo "** Deleting /etc/resolv.conf..." rm -f /etc/resolv.conf echo "** Cleaning command history...." rm -f /root/.bash_history # Delete VNXACE log rm -f /var/log/vnxaced.log while true; do # Ask for a message to save in /etc/vnx_rootfs_version file echo "** Save a log message in /etc/vnx_rootfs_version file " echo -n "** describing the modifications done? " read -n 1 -p "[y/n] " answer echo "" case $answer in [Yy]* ) echo "** Log message (1 line maximum):" read logmsg DATE=`date` echo "MODDATE=$DATE" >> /etc/vnx_rootfs_version echo "MODDESC=$logmsg" >> /etc/vnx_rootfs_version break;; [Nn]* ) break;; * ) echo "** Error: please answer 'y' or 'n'.";; esac done echo "" echo "** Halting the system..." halt
chmod +x /usr/local/bin/vnx_halt
vnx_halt
Installing additional software
To install additional software or modify your root file system, you just have to start it as described above and make the operations required on the filesystem.
- Start the virtual machine (directly using virsh or the vnx_modify_rootfs utility):
/usr/share/vnx/bin/vnx_modify_rootfs rootfs_centos.xml
- Install the software:
yum install ...
- Stop the machine with:
vnx_halt
Known issues
- When executing commands using vnx "--exe" option, traces like the followinf appear on the consoles:
hdb: tray open end_request: I/O error, dev hdb, sector 8388352
They are generated as a result of mount command execution by the VNX daemon. Commands are correctly executed. To be further investigated.