Salt-Orchtestrated Software Defined (Freifunk) Networks - Service-Provider-Ne...
Ltsp5 In Einer Stunde Zum Terminalserver
1. LTSP – In einer Stunde zum Terminalserver
Über uns
Über uns
Rouven Sacha <rs@blinkenlichten.de>
Carsten Maass <cm@blinkenlichten.de>
→ Seit 1999 im Bereich Systemmanagement und Beratung im Linuxumfeld tätig
→ Blinkenlichten GbR
→ Mitbegründer der Open Source Bürogemeinschaft „Büro 2.0“ in Berlin
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
2. LTSP – In einer Stunde zum Terminalserver
Dies ist ein Live --Howto
Dies ist ein Live Howto
Was erwartet Euch hier?
→ Kurze Einleitung ins Themengebiet Terminalserver
→ Live Installation eines Debian LTSP Servers
→ Booten zweier Thin Clients vom Terminalserver
→ Screencast und eventuell Video auf http://www.buero20.org/LT2009/ltsp/
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
3. LTSP – In einer Stunde zum Terminalserver
Was ist eigentlich so ein Terminalserver?
Was ist eigentlich so ein Terminalserver?
… und warum will ich sowas haben?
→ SadS: Software auf dem Server
→ Updatemanagement nur für einen Terminalserver
→ Ein Thin Client hat keine beweglichen Teile und kein OS!
→ Moderne Thin Clients haben ein Leistungsaufnahme unter 20W
Terminalserver = Dinosaurier des Cloud Computings :-)
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
4. LTSP – In einer Stunde zum Terminalserver
Kleine Historie des Terminalservers
Kleine Historie des Terminalservers
… eine Reise ins Jahr 1978:
ein Digital VT100 Terminal an einer VMS
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
5. LTSP – In einer Stunde zum Terminalserver
Nachteile der X-Terminals – Entstehung des Linux Terminal Server Projects
Nachteile der X-Terminals – Entstehung des Linux Terminal Server Projects
→ Keine Möglichkeit, lokale Geräte an den Terminals anzuschließen:
→ keine lokalen Drucker
→ kein Sound
→ kein USB-Storage
→ Entstehung des LTSP Projektes mit dem Ziel, die oben genannten Mängel
zu beheben
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
6. LTSP – In einer Stunde zum Terminalserver
Wie funktioniert eine LTSP-Sitzung?
Wie funktioniert eine LTSP-Sitzung?
→ LTSP ist ein Terminalserver für lokale Subnetze. Er versorgt die Thin Clients
→ mit einer Netzwerkkonfiguration um booten zu können
→ mit dem zu bootenden Kernel
→ mit einem angepaßten / Filesystem
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
7. LTSP – In einer Stunde zum Terminalserver
Eingesetzte Technologien
Eingesetzte Technologien
LTSP5
→ PXE – “Preboot Execution Environment“
→ Übermittlung der initialen Netzwerkkonfiguration mit Adresse des
TFP Servers
→ TFTP – „Trivial FTP“
→ Übertragung des zu bootenden Kernels
→ NFS/ NBD
→ Einbindung der Root Partition
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
8. LTSP – In einer Stunde zum Terminalserver
Energie!
Energie!
LTSP Pakete installieren und initiales Client Chroot erzeugen:
LTSP Pakete installieren und initiales Client Chroot erzeugen:
host:~# apt-get install ltsp-server-standalone
host:~# ltsp-build-client --dist lenny --arch i386 –mirror http://localhost:9999/debian
--security-mirror http://localhost:9999/security
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
9. LTSP – In einer Stunde zum Terminalserver
DHCP Konfiguration für PXE anpassen
DHCP Konfiguration für PXE anpassen
/etc/ltsp/dhcpd.conf:
/etc/ltsp/dhcpd.conf:
authoritative;
subnet 192.168.99.0 netmask 255.255.255.0 {
range 192.168.99.100 192.168.99.200;
option domain-name "buero20.linuxtag";
option domain-name-servers 192.168.99.3;
option broadcast-address 192.168.99.255;
option routers 192.168.99.3;
next-server 192.168.99.3;
# get-lease-hostnames true;
option subnet-mask 255.255.255.0;
option root-path "/opt/ltsp/i386";
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
filename "/ltsp/i386/pxelinux.0";
} else {
filename "/ltsp/i386/nbi.img";
}
}
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
10. LTSP – In einer Stunde zum Terminalserver
Über uns
Über uns
Rouven Sacha <rs@blinkenlichten.de>
Carsten Maass <cm@blinkenlichten.de>
Seit 1999 Systemmanagement und Beratung für KMU auf der Linux-Plattform.
Seit 2007 Mit-Initiatoren der Open Source Bürogemeinschaft „Büro 2.0“ in Berlin
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
11. LTSP – In einer Stunde zum Terminalserver
Das X-Window System und die X-Terminals
Das X-Window System und die X-Terminals
… die Neunziger:
→ Einführung des TCP/IP basierten X-Window System (X11: 1987)
→ viele „billige“ X-Terminals an einer teuren Unix Workstation
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
12. LTSP – In einer Stunde zum Terminalserver
Was bootet der Client?
Was bootet der Client?
Minimalkonfiguration:
→X
→ LDM (LTSP Display Manager
Beliebig viele „Local Apps“
→ lokalen Pulseaudio Server
→ Fuse Daemon, um lokale Storage Devices an den Server
durchzureichen
→ HP Jetdirect Emulation, um lokale Drucker über Port 9100 TCP
durchzuschleifen
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
13. LTSP – In einer Stunde zum Terminalserver
DHCP Konfiguration für PXE anpassen
DHCP Konfiguration für PXE anpassen
/etc/ltsp/dhcpd.conf Clientkonfiguration:
/etc/ltsp/dhcpd.conf Clientkonfiguration:
host hp1 {
hardware ethernet 00:21:5a:6f:d0:21;
fixed-address 192.168.99.101;
}
host igel1 {
hardware ethernet 00:e0:c5:60:54:87;
fixed-address 192.168.99.102;
}
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
14. LTSP – In einer Stunde zum Terminalserver
DHCP Konfiguration für PXE anpassen
DHCP Konfiguration für PXE anpassen
LTSP DHCP, tftpd und NFS aktivieren und neu starten:
LTSP DHCP, tftpd und NFS aktivieren und neu starten:
host:~# mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.orig
host:~# ln -s /etc/ltsp/dhcpd.conf /etc/dhcp3/dhcpd.conf
/etc/default/tftp-hpa:
RUN_DAEMON="yes"
/etc/inetd.conf:
#tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot
/etc/exports:
/opt/ltsp *(ro,no_root_squash,async,no_subtree_check)
host:~# /etc/init.d/openbsd-inetd restart
host:~# /etc/init.d/tftpd-hpa restart
host:~# /etc/init.d/dhcp3-server restart
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
15. LTSP – In einer Stunde zum Terminalserver
Clients konfigurieren
Clients konfigurieren
LTSP Boottime variablen für Clients übergeben
LTSP Boottime variablen für Clients übergeben
/opt/ltsp/i386/etc/lts.conf
[default]
SOUND = True
LOCALDEV = True
X_COLOR_DEPTH = 16
CONSOLE_KEYMAP = de
XKBLAYOUT = de
XKBMODEL = pc105
XKBVARIANT = nodeadkeys
[00:21:5a:6f:d0:21]
XSERVER = radeonhd
X_COLOR_DEPTH = 24
X_MODE_0 = 1280X960
#X_CONF = /etc/X11/xorg-radeon.conf
LDM_DIRECTX = True
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin
16. LTSP – In einer Stunde zum Terminalserver
Clients konfigurieren
Clients konfigurieren
Terminalserver user für die Fuse Unterstützung aktivieren
Terminalserver user für die Fuse Unterstützung aktivieren
adduser carsten fuse
Rouven Sacha, Carsten Maass: Linuxtag 2009, Berlin