From Kerrighed

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

Contents

[edit] Описание

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

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

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

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

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

[edit] Получение Kerrighed

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

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

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

  • как компилировать/конфигурировать/устанавливать ядро 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

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

[edit] Установка Kerrighed

[edit] Установка 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)

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

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

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

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

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

[edit] Настройка Kerrighed

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

[edit] Основные опции 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
    и выход.

[edit] Специфичные для 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]

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

Если Вы хотите изменить опции ядра, Учтите, что в данный момент эти опции сломаны при использовании с 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, включите его поддержку в ядро, не модулем.

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

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

[edit] Перевод

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

Translated by Alexander Maslov.