Ubuntu and Linux Terminal Server Project

sverma 4,734 views 33 slides Aug 11, 2008
Slide 1
Slide 1 of 33
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33

About This Presentation

Slides from UbuCon at LinuxWorld 2008


Slide Content

Ubuntu and Linux Terminal Server Project
Dr. Sameer Verma, Ph.D.
Associate Professor
Information Systems Department
College of Business
San Francisco State University
San Francisco, CA 94132 USA
Ubuntu Community Day, LinuxWorld 2008

About
teach: information systems strategy and governance
research: diffusion and adoption (open source, mobility)
fun: ubuntu, olpc, mythtv, etc.
Me
SF State University
Open Source at SF State http://opensource.sfsu.edu
OLPC-SF list http://lists.laptop.org/listinfo/olpc-sf
One of the largest live environments of Moodle
Software Freedom Day 2006, 2007 (and 2008)

Courses I Teach
Managing Open Source
Information Systems elective
Free and Open Source Software
in general
Collaborative software
development
Licensing
Business models
Software maturity models
Multimedia App Development
Information Systems elective
Use of multimedia applications
Graphics, Animation, Desktop
Publishing, Audio, Video, Web
Content creation and licensing
Business models

Managing Open Source
Introduction to FOSS on Windows
The Open CD/The Open Disc
Introduction to Ubuntu
Live CDs + voluntary installs
Linux Lab with Ubuntu
Introduction to the Open Source “community”
Field study: Attend a LUG meeting
Guest Speakers

Multimedia Business Application Development
The experiment
Software needed for the class: Approx. $200
Will a student at a public university spend $200 on software for a
semester?
Can FOSS tools adequately fill the need?
Important constraint
Choice of tool should be based on the curriculum and not the other
way around.

Applications
•GIMP – Bitmapped graphics
•Blender – 3D rendering
•Inkscape – Scalable Vector Graphics
•Audacity – Audio editing and manipulation
•Scribus – Desktop Publishing
•Tux paint – Fun for kids...and grown ups!
•Kino – Non-linear Digital Video Editor
•Drupal
*
– Web 2.0 CMS
*Server-side

Examples
•Elephant's Dream
•CG animation made entirely
with FOSS

Assignment
ccmixter.org
•Audio assignment based on
ccmixter.org samples and loops
•Students download vocals, drum
loops, effects, etc. and use
Audacity to mix and recreate
tracks.
•Learn audio tools and legal
aspects via Creative Commons
licenses

Our “Linux” Lab
Communication and Advanced Computing Lab
Limited/specialty software lab
Dual-boot Windows XP and Linux
Windows XP
Simulation
Statistical Analysis
Linux
GIMP
Inkscape
Audacity
...

Lab
Dual boot Ubuntu Dapper and Edgy and Windows XP.
Installation and upgrades are labor-intensive.
Actively explored LTSP on Edubuntu platform (Feisty and
Gutsy)
Multiboot environment: PXE boot for Linux with Windows XP on
local disk

Medusa Project

Thank you!
Bo Kim – taking up the challenge
Jack Tse and Don Strickler – loaning us a switch
Tony Chan and Karl Schackne (BUS computing) – for letting
us use the lab.
Edubuntu team – making an excellent LTSP distro!

What is LTSP?
Linux Terminal Server Project
Allows “thin” clients to connect to a Linux Terminal Server.
All programs run on the server
Clients run a thin Linux base with network and X session capabilities.
LTSP allows for a single point of configuration and control
Great for lab environments
LTSP until 4.x
LTSP 5

A “thin” client performs a Preboot Execution Environment
(PXE) boot and retrieves an IP from the LTSP server via
DHCP.
/etc/ltsp/dhcpd.conf points to a bootable img file
Note location of the dhcpd.conf file
DHCP response
PXE DHCP request
How it works

How it works
A small footprint Linux image is sent to the thin client
computer via TFTP.
The client loads the Linux image and starts the X window
system via secure shell (ssh)
client images and server have ssh keys
X session forwarded over ssh
DHCP response + TFTP Linux image

How it works
All programs execute in a X session on the server, but are
forwarded via ssh and displayed on the thin client.
Feedback from the user (keyboard & mouse) are sent back to
the server over ssh as well.
X session forwarded over ssh
mouse+keyboard

What Does it Look Like?
192.168.0.0/24
eth1 eth0
SFSU
130.212.14.0/24
firewall

Hardware Requirements
Server
CPU should be powerful enough to run multiple simultaneous X
sessions.
Intel Xeon processor(s).
75-150MB of RAM per client.
2 Network Interface Cards
Private interface preferably Gigabit

Hardware Requirements
Client
Minimum
Pentium II with 64 MB RAM and a 2MB display card.
Recommended
Pentium II and above with 64MB RAM and 4MB display card.
Identical hardware for each client preferred

Networking Requirements
Network
Avoid
Hubs
10-BaseT cards
Preferred:
100 Mbps switch
100-BaseT cards
Ideal:
Gigabit switch.
100 Mbps switch with 1 Gbps uplink to the LTSP server.

Software Requirements
A Linux distribution with or without LTSP included.
LTSP (if not installed natively)
OR
LTSP 5
LTSP 5 is significantly different
Builds thin-client environment off of the server environment.
sudo apt-get install... sudo chroot /opt/ltsp/i386/
sudo apt-get update...

Software Requirements
Four services running on the LTSP server:
DHCP for IP address leases
TFTP for initial netboot kernel
NBD for filesystems
SSH for all communication on the LAN
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.20 192.168.0.250;
option domain-name "sfsu.edu";
option domain-name-servers 130.212.10.163;
option broadcast-address 192.168.0.255;
option routers 192.168.0.254;
option subnet-mask 255.255.255.0;
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
filename "/ltsp/i386/pxelinux.0";
}
else{
filename "/ltsp/i386/nbi.img";

}
option root-path "/opt/ltsp/i386";
}
/etc/ltsp/dhcpd.conf

Advantages
Diskless clients
Highly centralized
patches
firewalling
Cost effective
Customized profiles
LDAP auth
Change lab footprint as needs grow
Invest in powerful server
Need a fast network
Documentation is weak
Many references to LTSP 4.x
Latency sensitive apps will not work
well, especially multimedia
Disadvantages

Thin Client Scenario
Client Server
Pentium II
128 MB RAM
Pentium 4
4 GB RAM
Distribution of “crunch”

Fat Client Scenario
Client Server
Pentium III
512 MB RAM
Pentium III
512 MB RAM
Distribution of “crunch”
Individual installs

Lowfat Client Scenario
Client Server
Pentium 4
2 GB RAM
Pentium III
1 GB RAM
Distribution of “crunch”
PXE Boot images
LDAP + NFS
•Authentication
•Storage
•Configuration
•Backup

Ubuntu 8.04 (Hardy Heron)
Alternate CD
At boot screen, hit F4 and select LTSP server
If your server has two NICs, the installation is seamless
You will be ready to boot into a thin client after the install

LTSP 5
Many more options for building images
Default image is a thin client based on what's running on the server
Custom images (lowfat, kiosk, mythbuntu...)
sudo ltsp-build-client --workstation --Kubuntu
sudo ltsp-build-client --workstation --Ubuntu
sudo ltsp-build-client --kiosk
sudo ltsp-build-client --mythbuntu
...

LTSP and Sugar
sudo apt-get install sugar*

Ten steps for fun and profit!
1)Get the alternate CD http://releases.ubuntu.com/releases/8.04/
2)Get a machine (PIII will do) with two NICs
3)Boot from CD
4)Hit F4 at the boot screen
5)Select LTSP Server
6)Install
7)Plug in a crossover CAT5 into eth1
8)Plug in a PXE Bootable client into the other end
9)Boot
10)Profit!

Links to check out
http://ltsp.org/
http://en.wikipedia.org/wiki/Linux_Terminal_Server_Project
https://help.ubuntu.com/community/UbuntuLTSP/LTSPQuickInstall
http://edubuntu.org/Documentation
http://doc.ubuntu.com/edubuntu/edubuntu/handbook/C/customizing-thin-client.html
https://help.ubuntu.com/community/UbuntuLTSP/LTSPFatClients

Contact