LTSPFatClients

Differences between revisions 19 and 25 (spanning 6 versions)
Revision 19 as of 2006-06-22 10:40:48
Size: 6066
Editor: ALagny-109-1-2-202
Comment:
Revision 25 as of 2008-08-06 16:37:24
Size: 3075
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
||<tablestyle="float:right; font-size: 0.9em; width:30%; background:#F1F1ED; background-image: url('http://librarian.launchpad.net/1069968/edubuntu_emblem.png'); background-repeat: no-repeat; background-position: 98% 0.5ex; margin: 0 0 1em 1em; padding: 0.5em;">'''Contents'''[[BR]][[TableOfContents]]||
Line 3: Line 2:

''Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.''
Line 13: Line 14:
''Ubuntu LTSP should provide a quick and effective method to install a diskless workstation that runs all applications locally from within the NFS or otherwise exported chroot.''

'''Note:''' Due to blockers in authentication, it has been recommended that this spec is defered to Edgy+1
''Ubuntu LTSP should provide a quick and effective method to install a diskless workstation that runs all applications locally from within the NFS exported root.''
Line 19: Line 18:
LTSP cuts down on administration overhead, and has proven to be popular in education, and is becoming more popular in the commercial sector. LTSP does have limitations and complexities, for example, local devices (storage, peripherals, etc) are often complicated, and multimedia saturates network bandwidth quickly and becomes unusable. LTSP cuts down on administration overhead, and has proven to be popular in education, and is becoming more popular in the commercial sector.
Line 21: Line 20:
Diskless Fat Clients would allow an administrator to use powerful workstations as diskless machines, maintaining the benefits of easy administration, while eliminating the current limitations that exists with current thin client implementations. Diskless Fat Clients will allow an administrator to use powerful workstations as diskless machines, maintaining the benefits of easy administration.
Line 24: Line 23:
   * James is administarator in a school and wants to set up a multimedia lab on the P4 2Ghz/512MB machines he has lying around on the shelf. He installs ltsp-server on hus ubuntu server, runs "sudo ltsp-build-client --workstation" on it and immediately has a running setup of netbooted diskless workstations running.
Line 25: Line 26:
 * A school uses new computers as diskless machines. Using P4 machines with 256MB RAM is wasteful as pure thin clients, and adds limitations on performance and multimedia.
 * A scenario where you would want to easily migrate a Windows lab to dual boot to Ubuntu. Ubuntu could then be provided via LTSP, users could then simply boot locally for the legacy operating system.
 * A company wants to implement PoS systems that would communicate via serial ports to petrol pumps, credit card machines, etc that would not be supported under traditional LTSP.
 * A graphics studio using diskless machines for graphical intensive purposes.
 * A university which runs CPU intensive tasks on workstations.
 * A home user who wishes to do less admin on all his/her machines, and would like to have one central computer stored in a safe place and using the rest of the computers as workstations.
 * Mark has a thin client lab and got new powerful client hardware donated he uses to replace all the old powerless thin clients, he installs ubuntu-desktop and edubuntu-auth-client in his thin client chroot and is able to make use of the processing power of the clients.
Line 34: Line 30:
A successful implementation will provide a quick and easy method for administrators to deploy an Ubuntu fat client terminal server. This applies to all derivatives and Ubuntu based distributions.  * Provide netbooted diskless workstation support in LTSP
Line 36: Line 32:
== Design == == Design and Implementation ==
Line 38: Line 34:
 * Additional packages need to be installed in the current default Ubuntu LTSP chroot, which includes, but are not limited to: {{{ gdm, ubuntu-desktop }}}
 * User data should be stored on the server disk space, not in the LTSP chroot. This requires authentication with home directory mounting off the server, using an appropriate method of authentication.
 * Ideally, a user should be able to choose whether a client should boot as a thin, or fat client by specifying a tag in the {{{ lts.conf }}} file. A thin client and a fat client could share the same chroot, a thin client would just start up LDM (or a potentially new GDM with ssh tunnelling capability), while the fat client would start GDM and allow the user to log in to the LTSP chroot.
 * Scripts in {{{ ltsp-build-client }}} will require modification to include desktop package seeds as well as the ability to specify whether certain clients should be fat or thin in {{{ lts.conf }}}. ''Note that it is not in the scope of this specification to be able to switch between fat or thin client on the fly''.

= Implementation =

Implementation requires some changes to the preseeds used for the chroot installation, as well as an automated authentication setup. Some changes will be required to the LTSP configuration scripts, in order to allow 'dual booting' between thin and fat clients.

== Authentication ==

Methods that could be used:
 * Rsyncing/copying {{{ passwd, shadow, group }}}
 * NIS - Probably not the best choice
 * LDAP - looks promising (information available from the LTSP wiki)
   * Needs some scripting love, but easy. Cleaning up of some config file stuff, and a nice gui/debconf/whatever front end to get the server, etc. Refer to NetworkAuthentication spec.
 * Kerberos (doesn't give you a filesystem, just authentication)

== Filesystems ==

Filesystems could be exported via:

 * GFS
 * NFS
 
== Swap ==

 * LTSP NBD swap will be used for swap
 * LTSP NBD swap needs to be implemented for Ubuntu LTSP
A new plugin for ltsp-build-client will be created, very similar to the demo plugin outlined in the [[HowtoWriteLTSP5Plugins]] wikipage but instead of installing gdm and firefox to get a webkiosk system it will install ubuntu-desktop and edubuntu-auth-client.
Documentation needs to be written to point out that the diskless workstation setup will only work hand in hand with a network authentication service (/home needs to be mounted from a remote server, users need to be authenticated against a network authentication service)
Line 70: Line 39:
 * Additional scripts and code needed should be possible to integrate and be built on top of current LTSP initialisation scripts, re-using as much code as possible.
 * Some {{{ postinst }}} scripts might have to be written to allow the automatic setup of authentication.
To be placed in /usr/share/ltsp/plugins/ltsp-build-client/Ubuntu/30-workstation
Line 73: Line 41:
== Blockers == {{{
case "$MODE" in
    commandline)
        add_option "workstation" "`eval_gettext "a netbooted diskless workstation mode."`" "advanced" "false"
        ;;
    configure)
        if [ -n "$option_workstation_value" ]; then
            # set an environment variable we can pick up later
            WORKSTATION="True"
        fi
        ;;
    after-install)
        if [ -n "$WORKSTATION" ]; then
            LC_ALL=C chroot $ROOT apt-get $APT_GET_OPTS install ubuntu-desktop edubuntu-auth-client
Line 75: Line 56:
 * Authentication needs to happen in 'Ubuntu' (SoC project)

== BoF Agenda and discussion ==

=== BoF Agenda ===

 1. JonathanCarter - Quick introduction to specification
 2. [https://launchpad.net/distros/ubuntu/+spec/ltsp-fat-clients Spec Subscribers] - discuss roadblocks, suggestions and improvements.

=== Discussion ===

 * We will be available on the Ubuntu Teamspeak server, from 15:00 - 16:00 UTC. Discussion items will be added below.
 * RodrigoNovo: We should have an option in LTSP manager to set certain clients as thin clients of fat clients on boot.
 * Blocker points: Authentication and home directories
 * RodrigoNovo: Suggests that this is defered to Edgy+1
 * JimMcQuillan: What about printing, what happens to /var/spool/print? (Needs further discussion)
  * We could export this directory from the server, this will create more network traffic though.
 * JimMcQuillan: What about tmp files? This goes all into RAM.
  * JonathanCarter: We could store tmp files in home directory, avoiding keeping true tmp files in RAM.
            # make the necessary directories writeable to the booted client
            echo 'rw_dirs="$rw_dirs /var/lib/gdm"' >> $ROOT/etc/defaults/ltsp-client-setup
        fi
        ;;
esac
}}}

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Introduction

Summary

Ubuntu LTSP should provide a quick and effective method to install a diskless workstation that runs all applications locally from within the NFS exported root.

Rationale

LTSP cuts down on administration overhead, and has proven to be popular in education, and is becoming more popular in the commercial sector.

Diskless Fat Clients will allow an administrator to use powerful workstations as diskless machines, maintaining the benefits of easy administration.

Use Cases

  • James is administarator in a school and wants to set up a multimedia lab on the P4 2Ghz/512MB machines he has lying around on the shelf. He installs ltsp-server on hus ubuntu server, runs "sudo ltsp-build-client --workstation" on it and immediately has a running setup of netbooted diskless workstations running.
  • Mark has a thin client lab and got new powerful client hardware donated he uses to replace all the old powerless thin clients, he installs ubuntu-desktop and edubuntu-auth-client in his thin client chroot and is able to make use of the processing power of the clients.

Scope

  • Provide netbooted diskless workstation support in LTSP

Design and Implementation

A new plugin for ltsp-build-client will be created, very similar to the demo plugin outlined in the HowtoWriteLTSP5Plugins wikipage but instead of installing gdm and firefox to get a webkiosk system it will install ubuntu-desktop and edubuntu-auth-client. Documentation needs to be written to point out that the diskless workstation setup will only work hand in hand with a network authentication service (/home needs to be mounted from a remote server, users need to be authenticated against a network authentication service)

Code

To be placed in /usr/share/ltsp/plugins/ltsp-build-client/Ubuntu/30-workstation

case "$MODE" in
    commandline)
        add_option "workstation" "`eval_gettext "a netbooted diskless workstation mode."`" "advanced" "false"
        ;;
    configure)
        if [ -n "$option_workstation_value" ]; then
            # set an environment variable we can pick up later
            WORKSTATION="True"
        fi
        ;;
    after-install)
        if [ -n "$WORKSTATION" ]; then
            LC_ALL=C chroot $ROOT apt-get $APT_GET_OPTS install ubuntu-desktop edubuntu-auth-client

            # make the necessary directories writeable to the booted client
            echo 'rw_dirs="$rw_dirs /var/lib/gdm"' >> $ROOT/etc/defaults/ltsp-client-setup
        fi
        ;;
esac

CategorySpec

LTSPFatClients (last edited 2008-08-06 16:37:24 by localhost)