Software-Management

Die Applikation A ist nur auf der Workstation X installiert, Programm B nur auf Server Y? Kollege Meier soll Kollegen Schulze vertreten, hat aber dessen wichtigste Software nicht auf seinem Rechner?
Gewachsene Strukturen wachsen nie so, wie es optimal wäre.

Zentralisierte Software-Installation

Sowie es einen Fileserver gibt, der NFS-Verzeichnisse bereitstellt, kann man ein zentrales UNIX-Software-Repository einrichten, das allen Rechnern gleichermaßen zur Verfügung steht.

erspart eine Menge Arbeit.
Die zum Installationszeitpunkt aktuelle Version der Software wird nun nicht direkt in 10.2/ installiert, sondern in current/ (was z.Zt. auf 10.2/ zeigt). Alle Initialisierungsscripts und internen Referenzen der Applikation sind nun auf current/ eingestellt.

Jede neue Version (im Beispiel 10.5) bekommt ihr eigenes Verzeichnis und einen symbolischen Link testing/, unter dem man sie testen kann. Wenn die neue Version produktiv werden soll, beschränkt sich das auf "rm current && ln -s 10.5/ current". Ganz ohne umfangreiche Initialisierungsscripts oder "modules" der Applikation oder gar die Shellscripts der Benutzer nach dem alten Pfad zu durchsuchen, um ihn durch den zur neueren Version zu ersetzen.

Heterogene Clients

Selbst wenn mehrere OS- und CPU-Architekturen im Einsatz sind und ein Programm für Linux und AIX und HP/UX installiert werden soll, kann man den AutoMounter (auch als AutoFS bekannt) benutzen, um das Programm für mehrere Architekturen transparent unter scheinbar "demselben" Pfad zu installieren (siehe unten). Ob ein Benutzer auf AIX ("powerpc") oder auf Linux ("x86_64") unterwegs ist — er findet "sein" Programm immer an der gleichen Stelle, obwohl sich dahinter Binaries für mehrere Architekturen verbergen.

Alle seine Shell-Scripts, die auf solcherart installierte Programme verweisen, funktionieren ohne Pfadanpassung auf mehreren Architekturen, alle "modules" können auf den Rechnern identisch aufgesetzt sein.

Bei heutigen Netzwerk- und Fileserver-Geschwindigkeiten ist die NFS-Server-Leistung der von lokalen Festplatten mindestens vergleichbar. Sicher sind lokale SSDs immer noch flinker, aber auch kleiner & teurer.
Und man hat nur noch einen "One-Stop-Shop", wo der Administrator alle Applikationen pflegt und sie der Benutzer gut findet.


Schema des AutoFS-Mappings

für heterogene Clients — hier z.B. IBM PowerPC, Oracle SPARC and Linux (Intel/AMD) — basierend auf dem "uname -p"-Befehl (processor):

Client (sparc)                (AutoFS mapping)                Server
=====================================================================================
/SW                                                           /export/SW
├── app1                                                      ├── app1
│   ├── 10.2                                                  │   ├── 10.2
│   │   ├── bin -------------,                                │   │   ├── bin
│   │   │                    |                                │   │   │   ├── powerpc
│   │   │                    `---$ARCH----------------------- │-- │-- │-->├── sparc
│   │   │                                                     │   │   │   └── x86_64
│   │   ├── lib -------------,                                │   │   ├── lib
│   │   │                    |                                │   │   │   ├── powerpc
│   │   │                    `---$ARCH----------------------- │-- │-- │-->├── sparc
│   │   │                                                     │   │   │   └── x86_64
│   │   └── man --------------------------------------------- │-- │-->└── man
│   ├── 10.5                                                  │   ├── 10.5
│   │   ├── bin                  --"--                        │   │   ├── bin
│   │   │                                                     │   │   │   ├── powerpc
│   │   │                                                     │   │   │   ├── sparc
│   │   │                                                     │   │   │   └── x86_64
│   │   ├── lib                  --"--                        │   │   ├── lib
│   │   │                                                     │   │   │   ├── powerpc
│   │   │                                                     │   │   │   ├── sparc
│   │   │                                                     │   │   │   └── x86_64
│   │   └── man                                               │   │   └── man
│   ├── current -> 10.2/                                      │   ├── current -> 10.2/
│   └── testing -> 10.5/                                      │   └── testing -> 10.5/
└── prog2                                                     └── prog2
	├── 1.17                                                      ├── 1.17
	│   ├── bin               --"--                               │   ├── bin
	│   │                                                         │   │   ├── powerpc
	│   │                                                         │   │   ├── sparc
	│   │                                                         │   │   └── x86_64
	│   ├── lib               --"--                               │   ├── lib
	│   │                                                         │   │   ├── powerpc
	│   │                                                         │   │   ├── sparc
	│   │                                                         │   │   └── x86_64
	│   └── man                                                   │   └── man
	├── 1.19                                                      ├── 1.19
	│   ├── bin               --"--                               │   ├── bin
	│   │                                                         │   │   ├── powerpc
	│   │                                                         │   │   ├── sparc
	│   │                                                         │   │   └── x86_64
	│   ├── lib               --"--                               │   ├── lib
	│   │                                                         │   │   ├── powerpc
	│   │                                                         │   │   ├── sparc
	│   │                                                         │   │   └── x86_64
	│   └── man                                                   │   └── man
	├── 2.0.1                                                     ├── 2.0.1
	│   ├── bin               --"--                               │   ├── bin
	│   │                                                         │   │   ├── powerpc
	│   │                                                         │   │   ├── sparc
	│   │                                                         │   │   └── x86_64
	│   ├── lib64             --"--                               │   ├── lib64
	│   │                                                         │   │   ├── powerpc
	│   │                                                         │   │   ├── sparc
	│   │                                                         │   │   └── x86_64
	│   └── man                                                   │   └── man
	└── current -> 1.19/                                          └── current -> 1.19/


Backlinks: 123ora:Linux