From Kerrighed

На этой странице описывается установка Kerrighed 2.3.0 на вашу систему.

Contents

Описание

Kerrighed позволяет создать большую SMP машину поверх кластера Linux. Каждая еденица кластера должна разделять общую файловую систему. Это можно сделать следующим образом :

  • Расшарив корневую файловую систему по сети (т.е.: NFSROOT)
  • Скопировав неизменяемые файлы на все единицы кластера и затем расшарив изменяемые файлы с помощью NFS.

Эта статья описывает установку и компиляцию Kerrighed из исходных кодов на одной единице кластера. Дубликация и/или расшаривание файловых систем сильно различается в разных дистрибутивах, и поэтому здесь описано не будет.

После установки, операционная система Kerrighed состоит из следующих частей:

  • Модифицированное ядро Linux,
  • Модуль ядра Linux,
  • Несколько пользовательских утилит,
  • Скрипты для запуска/остановки Kerrighed,
  • Библиотека, libkerrighed.

Получение Kerrighed

  • Исходные коды патча, модулей, утилит, сервисов и библиотек доступны в тарболе на INRIA's GForge.
  • Linux 2.6.20 Ванильные исходные коды ядра также необходимы.

Предварительные требования

Вы должны знать:

  • как компилировать/конфигурировать/устанавливать ядро Linux из исходных кодов,
  • немного (чем больше тем лучше) о процессе загрузки Вашего дистрибутива.

Следующее ПО необходимо для компиляции Kerrighed:

  • automake: >=1.9
  • autoconf: >=2.59
  • libtool
  • rsync
  • bzip2
  • gcc: версия 3.3.x рекомендуется для компиляции ядра.

Kerrighed может быть собран с использование версии 4.1.

Неорбязательно (но желательно) наличие следующих компонент:

  • lsb_release: Для установки загрузочных скриптов Kerrighed в /etc/init.d
  • xmlto: утилита для создания manpages из docbook

Быстрая компиляция и установка

Установка Kerrighed

Установка Kerrighed из тарбола

wget -O /usr/src/kerrighed-latest.tar.gz http://kerrighed.gforge.inria.fr/kerrighed-latest.tar.gz
wget -O /usr/src/linux-2.6.20.tar.bz2 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
  • Распакуйте их
cd /usr/src
tar zxf kerrighed-latest.tar.gz
tar jxf linux-2.6.20.tar.bz2
  • Настройте
cd kerrighed-*
./configure --with-kernel=/usr/src/linux-2.6.20
  • Модифицируйте ядро для работы с Kerrighed
make patch
  • Настройте ядро

Исправления ядра поставляются со стандартной конфигурацией которая может не удовлетворить Ваши потребности, но дает Вам рабочую конфигурацию для Kerrighed. Есть несколько путей для конфигурации параметров ядра:

    • Запустить make -C /usr/src/linux-2.6.20 *config. Наберите make -C /usr/src/linux-2.6.20 help и посмотрите на секцию 'Configuration targets'.
    • Запустить make kernel-config KERNEL_CONFIG=/путь/к/файлу/конфигурации.

Для краткой справки о параметрах настройки ядра, Вы можете посмотреть на секцию Kernel Options ниже.

  • Компилирование исходных кодов
make kernel
make
  • Установка всего (выполнять под пользователем root)
make kernel-install
make install
  • Проверьте корректность установки. У Вас должны быть установлены следующие директории/файлы:
/boot/vmlinuz-2.6.20-krg Ядро Kerrighed
/boot/System.map Символьная таблица ядра Kerrighed
/lib/modules/2.6.20-krg Модули Kerrighed
/etc/init.d/kerrighed Сервисный скрипт Kerrighed *
/etc/default/kerrighed Конфигурация сервиса
/usr/local/share/man Мануалы
/usr/local/bin/krgadm Средства управления кластером
/usr/local/bin/krgcapset Средства управления возможностями процессов
/usr/local/bin/migrate Средства управления миграцией процессов
/usr/local/lib/libkerrighed-* Библиотеки Kerrighed
/usr/local/include/kerrighed Заголовочные файлы библиотек Kerrighed

* Данный скрипт подготавливает единицу кластера для интеграции в кластер, но не запускает кластер. Подробнее в krgadm (1)

Конфигурация Kerrighed

Kerrighed требует один параметр -- идентификатор сессии. Он должен быть между 1 и 254 aи может быть установлен с помощью:

  • параметра ядра при загрузке: session_id=XX
  • в файле /etc/kerrighed_nodes : session=XX

Идентификатор сессии должен быть одинаков для всех едениц кластера.

Дополнительная настройка

Настройка Kerrighed

Скрипт configure предоставляет множество опций для конфигурирования процесса сборки и установки.

Основные опции configure

По умолчанию, make install установит пакетные файлы в /usr/local/bin, /usr/local/man, и т.д. Вы можете изменить установочный префикс отличный от /usr/local дав configure параметр --prefix=ПУТЬ.

configure использует следующие опции при работе.

--cache-file=ФАЙЛ
    Использовать и сохранять результаты тестов в ФАЙЛ вместо
    ./config.cache.  Установка переменной ФАЙЛ в значение /dev/null отключает кэширование для
    отладкиconfigure.

--help
    Печатает список всех опций configure и выходит.

--quiet
--silent
-q
    Не печатает сообщения о проводимых тестах.

--srcdir=ДИРЕКТОРИЯ
    Искать исходные коды пакета в директории ДИРЕКТОРИЯ.  Обычнно
    configure может найти директорию с исходными кодами сам.

--version
    Печать версии Autoconf использованного для генерации скрипта configure
    и выход.

Специфичные для Kerrighed опции

Следующие опции могут быть переданы скрипту конфигурации:

--disable-linux-check
    Отключить проверку исходных кодов ядра Linux на совместимость с
    Kerrighed (!!! отключайте на Ваш страх и риск !!!) [default=enable]

--disable-module
    Отключить приминение патча ядра Kerrighed и компиляцию модулей [default=enable]

--disable-libkerrighed
    Отключить компиляцию libkerrighed [default=enable]

--disable-tools
    Отключить компиляцию утилит [default=enable]

--disable-service
    Не устанавливать сервисы kerrighed [default: enable если найден lsb]

--with-kernel=ПУТЬ
    Путь к исходным кодам ядра [default=/lib/modules/`uname -r`/source]

--with-kernel-build=ПУТЬ
    Путь для компиляции ядра [default=/lib/modules/`uname -r`/build]

--disable-kernel-defconfig
    Не использовать стандартный файл конфигурации для компиляции ядра [default=enable]

--with-kernel-config=ПУТЬ
    Путь к файлу ядра .config. Образцы файла доступны в директории 'samples'. 
    Подразумевает опцию --disable-kernel-defconfig [default=none]

Опции ядра (подсказки)

Если Вы хотите изменить опции ядра, Учтите, что в данный момент эти опции сломаны при использовании с Kerrighed:

  • General setup -> IPC Namespaces
  • Processor type and features -> Preemption Model -> Voluntary Kernel Preemption
  • Processor type and features -> Preemption Model -> Preemptible Kernel
  • Security options -> Enable access key retention support
  • Networking -> Networking options -> The Ipv6 protocol
  • Networking -> Networking options -> IP: tunneling
  • Networking -> Networking options -> IP: GRE tunnels over IP
  • Devices drivers -> Network device support -> Dummy net driver support
  • Devices Drivers -> Network device support -> Bonding driver support
  • Devices Drivers -> Network device support -> EQL (serial line load balancing) support

Внимание: Не забудьте добавить драйвер для Вашей сетевой карты и, если Вы планируете использовать NFSROOT, включите его поддержку в ядро, не модулем.

Использование Kerrighed

Теперь, когда Kerrighed установлен и сконфигурирован на Вашей системе, загляните на user manual.

Перевод

Переведено Александром Масловым.

Translated by Alexander Maslov.