LTSP
Google Summer of Code 2008 Idea
Что такое KIWI-LTSP?
Что такое LTSP
Linux Terminal Server Project позволяет Линукс-серверу поддерживать тонкие клиенты. LTSP - это гибкое, экономичное решение, подходящее для школ, бизнеса и различных организаций по всему миру, позволяющее легко развертывать рабочие станции. Все большее число Линукс-дистрибутивов поддерживает LTSP.
Новейшие тонкие клиенты и обычные PC можно использовать для просмотра интернет-страниц, отправки и получения почты, создания документов и запуска других приложений. LTSP не только уменьшает общую стоимость владения, но что более важно, обеспечивает большую выгоду по сравнению с традиционными решениями. LTSP позволяет запускать приложения и на Linux-сервере и на Windows-сервере.
Посетите LTSP home page для более подробной информации.
Что такое KIWI
OpenSuSE KIWI Image система обеспечивает полный образ для поддерживаемых операционной системой Линукс платформ, так же как для систем вируализации, таких как Xen, Qemu или VMware. KIWI features distribution independent design, поддержка виртуальных систем, network deployed images, live CD, толстые клиенты, а также, с появлением kiwi-ltsp, тонкие клиенты.
Посетите KIWI home page для более подробной информации.
KIWI-LTSP использует простоту развертывания и управления, которую обеспечивает KIWI, для того чтобы донести наш замечательный дистрибутив openSUSE 10.3 до всех, кто желает использовать его на тонких клиентах.
Почему не назвать его просто: LTSP, может это какое-то ответвление?
Мы используем KIWI технологию, вместо того чтобы просто интегрировать LTSP5 в дистрибутив. KIWI выполняет роль основания в этом случае. Таким образом мы смогли объеденить эти две различные технологии в форме KIWI-LTSP.
В тоже время, KIWI-LTSP ничего более, чем просто интеграция LTSP5 в openSUSE, все LTSP5-пакеты, используемые нами, идентичны пакетам в других дистрибутивах, которые LTSP5 поддерживает. Например, пакеты Fedora 8 собраны из тех же исходников в server:ltsp openSUSE Build Service репозитариях.
Что необходимо
Version: 10.3
|
и выше |
- Любой приличный десктоп/сервер, примерно 1 GB ОЗУ на каждые 5 тонких клиентов.
- Тонким клиентом может служить любой PC с возможностью PXE загрузки, 128 MB ОЗУ желательно, но можно попробывать и меньше, если будет работать у Вас.
- Есть ограничение на число клиентов, которые можно загрузить с одного сервера. Сервер с 4Gb ОЗУ может обслуживать 60 тонких клиентов.
- LTSP сервера/клиенты лучше собирать в отдельной сети. Не используйте рабочую сеть для экспериментов с kiwi-ltsp.
- openSUSE 10.3 или openSUSE 11.0A2 и выше i386 DVD диск или iso образ. (Необязательно, если используете prebuilt образ. Все другое работать не будет, включая интернет-репозитарии)
- Сервер необходимо подключить к интернет, для получения пакетов, которые будут установлены.
- SSH, tftp, dhcp, nfs службы должны быть запущенны, а порты используемые ими открыты в фаерволе на данном сервере на интерфейсе в локальной сети. Лучше вовсе отключить фаервол на этом интерфейсе.
Устанавливаем пакеты
Или, если Вы предпочитаете работать из командной строки
Запустите следующие команды от пользователя root (openSUSE 10.3):
zypper ar http://download.opensuse.org/repositories/server:ltsp/openSUSE_10.3 ltsp zypper ar http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_10.3 tools zypper in kiwi-desc-ltsp |
---|
Запустите следующие команды от пользователя root (openSUSE Factory):
zypper ar http://download.opensuse.org/repositories/server:ltsp/openSUSE_Factory ltsp zypper ar http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_Factory tools zypper in kiwi-desc-ltsp |
---|
Пожалуйста убедитесь, что Вы имеете дело с последними версиями пакетов kiwi перед началом. Информация о последних поступивших версиях здесь [1] и здесь [2].
Конфигурируем
Запустите YaST -> System-> /etc/sysconfig Editor -> System-> Kiwi-ltsp
- Укажите правильный путь к источнику установки, в идеале путь к смонтированому DVD или iso-образу, напрмер, "/mnt/10.3". Или по сети "http://download.opensuse.org/distribution/10.3/repo/oss/"
- Заполните информацию о сети: IP адрес сервера, шлюза и DNS сервера. Убедитесь, что адрес заданного Вами интерфейса принадлежит к "внутренней зоне" фаервола или отключите фаервол.
- Укажите правильный DHCP интерфейс, если у Вас их несколько на сервере.
- Оставьте значения по умолчанию в местах, где Вы не уверены, что необходимо указать, включая все пути. По завершению можно создавать образ.
Выполните следующую команду от пользователя root, выполняя конфигурирование на основе pre-built образа:
kiwi-ltsp-setup -c |
---|
Выполните следующую команду от пользователя root, если Вы хотите создать свой собственный образ и сконфигурировать его:
kiwi-ltsp-setup -s |
---|
Выполнение этих команд займет некоторое время, в зависимости от мощности Вашего сервера, так что приготовте себе чашечку кофе. Все необходимые службы, такие как NFS, NBD, TFTP и DHCP будут сконфигурированы и запущены.
Сделайте бэкап своей конфигурации, если Вы хотите ее сохранить или используйте специальные ключи с командой kiwi-ltsp-setup.
Пора загружать первого клиента, который предоставит вам LDM (LTSP display manager) экран, чтобы Вы смогли войти пользователем, созданным на сервере.
Чтобы выключить клиента, завершите сеанс пользователя и нажмите кнопку shutdown на экране LDM.
Поддержка локальных устройств
Все локальные устройства, которые LTSP поддерживает будут доступны:
HDD/USB/CDROM
Локальные устройства монтируются автоматически в каталог /tmp/.$USER-ltspfs
Звук
Звук может проигрываться на тонком клиенте без необходимости ручного конфигурирования.
Принтеры
Добавте следующие строки в раздел клиента файла /srv/tftpboot/KIWI/lts.conf: (допустим Вы подключаете USB принтер)
PRINTER_0_TYPE = U PRINTER_0_DEVICE = /dev/usb/lp0
Как только загрузится Ваш клиент, Вы можете конфигурировать Ваш cups-сервер для печати так, как если бы вы имели дело с сетевым HP JetDirect принтером.
/etc/cups/printers.conf: (Пример использования принтера Brother HL-2040)
<Printer HL2040> Info HL-2040 Location on ws024 DeviceURI socket://ws024.localdomain:9100 --> можно использовать IP адрес State Idle Accepting Yes JobSheets none none QuotaPeriod 0 PageLimit 0 KLimit 0 </Printer>
Все остальное работает как обычный cups принтер, проверте, используете ли Вы привильный драйвер, ppd, и т.п., все должно работать отлично.
Настройка поведения клиентов
Часто необходимо изменить настройки конкретного клиента, так как настройки поумолчанию не подходят. Вы можите править файл: /srv/tftpboot/KIWI/lts.conf, изменяя некоторые из этих переменных:
Переменная | Возможные значения | Значение поумолчанию | Коментарий |
XKBLAYOUT | A valid xorg Layout | unset | see xorg documentation for value |
SCREEN_nn | ldm, shell, xdmcp, telnet,startx (deprecated) | SCREEN_07=ldm | |
X_CONF | full path to a file | autodetected | The file must be present in client chroot |
XSERVER | ati, cirrus_alpine cirrus, cyrix, fbdev, fglrx, i810, nv, radeon, s3, savage, sis, vesa etc. | autodetected | Try vesa if autodetected does not work |
X_COLOR_DEPTH | 2, 4, 8, 16, 24, 32 | 24 | set to 16bit to save client mem |
PRINTER_0_DEVICE | dev (i.e. /dev/usblp0) | unset | |
PRINTER_0_TYPE | P(parallel), S(serial), U(USB) | unset | only required for serial, others are autodetected |
Описание других переменных смотрите на [in Edubuntu handbook], если необходимо.
Замечание: Если Вам необходимо зайти в ОС клиента, используйте root с паролем 'linux'. Для входа через LDM используйте имена пользователей и пароли сервера.
LTSP 4.2 на openSUSE и SLED
Many schools have opted to add thin clients to their networks to save on hardware and software expenses. Here is an example of adding LTSP 4.2 to SLED 10, the steps regarding the installation of server packages from SLES can be skipped when using openSUSE.
Дополнительная информация, заметки
An extra benefit of using openSUSE for LTSP in an existing NetWare school network is that the Novell client for Linux can be installed enabling use of existing network home directory structures, iPrint, Zenworks and more.
- To make everyone comfortable with the theory and tasks, here is a theory paper: http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/ltsp-theory.html
- How Does KIWI-LTSP work?
- Project wiki for developers
- LTSP_Old obsolete instructions
Вниманию разработчиков
Если Вы являетесь разработчиком и желаете внести свой вклад в этот проект, пожалуйста, посетите Novell Forge Wiki.