ГлавнаяРегистрацияВходВ закладки

Главная » Статьи » Ubuntu » Xen
Сборка ядра 2.6.32.x pvops
Автор: admin  Раздел: Xen
Самая трудоёмкая и тяжелая фаза при установке Xen 4.0 – этo соединение нового ядра 2.6.32.х c paravirt_ops, а так же цель eгo вместо базового 2.6.18.x. B этой очень информационной статье я больше всего подробно постараюсь , уже, рассмотреть настройку этого нового супер ядра для CentOS 5.5.

И так, начнем:
1. первый шаг - подготавливаем к сборке
Устанавливаем репозиторий - RPMForge

[root@localhost ~]# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
[root@localhost ~]# rpm -i rpmforge-release-0.5.1-1.el5.rf.i386.rpm
Далее делаем установку необходимых для сборки компонентов

[root@localhost ~]# yum install git make gcc ncurses-devel
Подгружаем исходники(open sourse) ядра

[root@localhost tmp]# git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen
[root@localhost tmp]# cd linux-2.6-xen
[root@localhost linux-2.6-xen]# git checkout -b xen/stable-2.6.32.x origin/xen/stable-2.6.32.x
Проверяем текущую версию ядра

[root@localhost linux-2.6-xen]# uname -r
2.6.18-194.11.4.el5
Копируем нужный и соответствующий конфиг из директории /boot

[root@localhost linux-2.6-xen]# ll /boot | grep config
-rw-r--r-- 1 root root 69598 Sep 21 13:38 config-2.6.18-194.11.4.el5
-rw-r--r-- 1 root root 69597 Jul 2 03:36 config-2.6.18-194.8.1.el5
-rw-r--r-- 1 root root 69593 Apr 2 2010 config-2.6.18-194.el5
[root@localhost linux-2.6-xen]# cp /boot/config-2.6.18-194.11.4.el5 .config
2. Настраиваем наше ядро
Один из наилучших вариантов в .config добавить следующие строчки:

CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y

CONFIG_ACPI_PROCFS=y
CONFIG_XEN=y
CONFIG_XEN_MAX_DOMAIN_MEMORY=32
CONFIG_XEN_SAVE_RESTORE=y
CONFIG_XEN_PRIVILEGED_GUEST=y
CONFIG_XEN_PCI=y
CONFIG_PCI_XEN=y
CONFIG_XEN_BLKDEV_FRONTEND=m
CONFIG_NETXEN_NIC=m
CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_KBDDEV_FRONTEND=m
CONFIG_HVC_XEN=y
CONFIG_XEN_FBDEV_FRONTEND=m
CONFIG_XEN_BALLOON=y
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DEV_EVTCHN=y
CONFIG_XEN_BACKEND=y
CONFIG_XEN_BLKDEV_BACKEND=y
CONFIG_XEN_NETDEV_BACKEND=y
CONFIG_XENFS=y
CONFIG_XEN_COMPAT_XENFS=y
CONFIG_XEN_XENBUS_FRONTEND=m
CONFIG_XEN_PCIDEV_FRONTEND=y

Но ,что бы не напортачить с зависимостями удобнее сделать это через базовую menuconfig.

[root@localhost linux-2.6-xen]# make menuconfig

Для архитектуры i386 ядро pvops поддерживает только этот режим PAE.

Processor type and features -> High Memory Support (64GB)

X86_PAE [=y]



Virtualization (NEW) ->

Kernel-based Virtual Machine (KVM) support

KVM for Intel processors support

< > KVM for AMD processors support (NEW)



Для RHEL и CentOS надо обязательно включить эти параметры SYSFS_DEPRECATE и SYSFS_DEPRECATED_V2

General setup -> enable deprecated sysfs features which may confuse old userspace tools



Processor type and features -> Paravirtualized guest support

[*] Xen guest support

[*] Enable Xen debug and tuning parameters in debugfs

[*] Enable Xen privileged domain support

[*] Enable support for Xen PCI passthrough devices

[*] VMI Guest support (DEPRECATED)

[*] KVM paravirtualized clock

[*] KVM Guest support

[*] Lguest guest support

-*- Enable paravirtualization code

[*] Paravirtualization layer for spinlocks



Здесь лучше всего нам встроить драйверы в ядро, но не делать их отдельными модулями:

Device Drivers

[*] Xen memory balloon driver (NEW)

[*] Scrub pages before returning them to system (NEW)

<*> Xen /dev/xen/evtchn device (NEW)

[*] Backend driver support (NEW)

<*> Xen backend network device

<*> Block-device backend driver

<*> Block-device tap backend driver

<*> PCI-device backend driver (NEW)

PCI Backend Mode (Virtual PCI) —>

[*] PCI Backend Debugging

<*> Xen filesystem (NEW)

[*] Create compatibility mount point /proc/xen (NEW)

[*] Create xen entries under /sys/hypervisor (NEW

<*> userspace grant access device driver

xen platform pci device driver (NEW)



Теперь мы переходим к настройке FrontEnd драйверов

Device Drivers -> Block devices -> Xen virtual block device support (делаем, делаем модуль) XEN_BLKDEV_FRONTEND



Device Drivers -> Network device support -> Xen network device frontend driver (делаем модуль)

XEN_NETDEV_FRONTEND



Device Drivers -> Input device support -> Xen virtual keyboard and mouse support

XEN_KBDDEV_FRONTEND



Device Drivers -> Graphics support -> Support for frame buffer devices -> Xen virtual frame buffer support

XEN_FBDEV_FRONTEND



3. И так, третий и последний шаг это - сборка и установка ядра:

Теперь переходим к сборке ядра

[root@localhost linux-2.6-xen]# make -j4
[root@localhost linux-2.6-xen]# make modules_install
[root@localhost linux-2.6-xen]# make headers_install
[root@localhost linux-2.6-xen]# make install

Проверяем установку нового ядра в файлике /boot/grub/grub.conf

[root@localhost linux-2.6-xen]# cat /boot/grub/grub.conf
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32.24)
root (hd0,0)
kernel /vmlinuz-2.6.32.24 ro root=/dev/VolGroup00/LogVol00
initrd /initrd-2.6.32.24.img
title CentOS (2.6.18-194.11.4.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-194.11.4.el5 ro root=/dev/VolGroup00/LogVol00
initrd /initrd-2.6.18-194.11.4.el5.img
title CentOS (2.6.18-194.8.1.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-194.8.1.el5 ro root=/dev/VolGroup00/LogVol00
initrd /initrd-2.6.18-194.8.1.el5.img

Меняем значение Default на 0 и переподгружаемся с новым ядром. Проверяем:

[root@localhost ~]# uname -r
2.6.32.24

Все отлично можно приступать к установке Xen 4.0.
Просмотров: 3089
Дата: 2011-07-19 16:58:43
Комментариев: 0
Источник: