Guten Tag,
Am 20.September beginnt die Abgabefrist für meinen Projektantrag. Ich füge ihn hier ein, in der Hoffnung, etwas Kritik/Feedback und vielleicht die eine oder andere Anregung zu bekommen.
Vielen Dank im Voraus.
Projektbezeichnung
Installation des Linux-Client-Management-Systems in einer public cloud
Projektbeschreibung
Die manuelle Installation und Konfiguration von Linux-Client-Systemen ist zeitaufwendig und komplex. Die Installationstools der verschiedenen Distributionen unterscheiden sich mitunter enorm, von automatisierbaren Installern (Yast, Anaconda, Ubiquity) bis hin zu mehreren Installationsscripten die nacheinander manuell gestartet werden (ArchLinux, Slackware).
Um in Zukunft eine einheitliche Basis für neue Systeme zu gewährleisten und den Installationsprozess zu beschleunigen und zu vereinheitlichen erging der Auftrag, das von der XXXXXXXX ihren Kunden angebotene Linux-Client-Management-System (kurz LCM), basierend auf dem Client-Management-Tool The Foreman, auch für die eigene Infrastruktur zur Verfügung zu stellen.
Zum Projektumfang gehören das Zusammenstellen der Anforderungen an die bereitzustellenden Systeme im Bezug auf Sicherheit, Konfiguration, Einbindung in die bestehende IT-Infrastruktur, Wartbarkeit, Benutzerfreundlichkeit und Ergonomie, die Auswahl der am besten geeigneten Cloudumgebung hinsichtlich angebotener Features, Servicequalität und Wirtschaftlichkeit, sowie die Auswahl der benötigten Managementwerkzeuge und die cloud-basierte Implementierung des LCM.
Da die Entscheidung für eine Lösung in einer public-cloud bereits getroffen wurde um die lokale Netzwerkumgebung am Standort XXXX möglichst nicht zu belasten, muss sorgfältig geplant werden, wie das Client-Management-System in die bestehende Infrastruktur eingebunden werden soll, vor allem in Hinblick auf Verfügbarkeit und Datensicherheit.
Des Weiteren ist zu entscheiden, ob eigene Repositories bzw. Images eingerichtet oder die Onlinerepositories der jeweiligen Distribution verwendet werden sollen.
Die Qualitäts- und Sicherheitskonzepte der XXXXXXXX kommen dabei zur Anwendung.
Projektumfeld
Die XXXXXXXX ist ein Linux und Open Source Dienstleister mit etwa 150 Beschäftigten, die überwiegend im Homeoffice arbeiten. Zu den angebotenen Dienstleistungen gehören Consulting, Training, Managed Services, Cloud-Services und Administration on-site und remote. Dies erfolgt über insgesamt fünf Standorte, in XXXX, XXXXXX, XXXXXXX, XXXXX und XXXX.
Die Arbeit im Homeoffice stellt dabei besondere Anforderungen an die IT-Infrastruktur, die Hauptsächlich durch public und private Cloud-Technologien erbracht werden.
Ist-Analyse
Installation und Konfiguration eines Linuxclients dauern, je nach Einsatzzweck, 3 bis 20 Stunden. Dabei werden die Systeme individuell angepasst, was einen hohen Dokumentationsaufwand nach sich zieht.
Updates erfolgen ebenfalls manuell, werden derzeit nicht evaluiert und haben unter Umständen ein instabiles bis nicht mehr startendes System zur Folge.
Administrative Eingriffe sowie Änderungen an der Konfiguration müssen mittels VNC oder SSH durchgeführt werden und erfordern oftmals dennoch Eingriffe des lokalen Benutzers, da die Verbindung spätestens beim Neustart des Netzwerkes oder einem Reboot abreist.
Soll-Konzept
Durch den Einsatz des Client-Management-Systems sollen Installation, Konfiguration und Benutzermanagement zentralisiert, automatisiert und vereinheitlicht werden, um den Administrationsaufwand zu senken und somit Kapazitäten für die Verkürzung der Reaktionszeit im Support zu erhalten.
Updates sollen zukünftig überprüft und erst nach Freigabe erfolgen und administrative Eingriffe, z. B. nach Änderungen an der Netzwerkinfrastruktur sollen automatisiert werden.
Diese Dienste müssen sowohl an den Standorten als auch im Homeoffice zur Verfügung stehen, was besondere Anforderungen an die IT-Sicherheit stellt.
Projektphasen
1. Ermittlung Ist-Zustand (2h)
1.1 Feststellen der aktuell verwendeten Software der Clientsysteme (1h/2h)
1.2 Erfassen der aktuellen Konfiguration der Clientsysteme (1h/2h)
2. Erstellung Soll-Konzept (2h)
3. Projektvorbereitung (3h)
3.1 Ermitteln der Anforderungen an den Server (1h/3h)
3.2 Auswahl eines geeigneten Cloud-Providers auf Basis einer Nutzwertanalyse (2h/3h)
3.3 Auswahl des Szenarios für die Systemarchitektur: (2h)
3.3.1 Art der VPN-Verbindung (0,5h/2h)
3.3.2 Prüfen der Notwendigkeit eines LCM-Proxy (0,5h/2h)
3.3.3 Auswahl der Provisionierungsmethode (0,5h/2h)
3.3.4 Prüfen, ob eigene Repositories erstellt werden müssen (0,5h/2h)
3.4 Ermitteln der zu provisionierenden Linux-Distributionen anhand einer Nutzwertanalyse (3h)
3.4.1 Erstellen eines Software Kataloges für die Clientsysteme (1h/3h)
3.4.2 Ermitteln der Grundkonfiguration für die Clientsysteme (2h/3h)
3.5 Erstellen eines Testkonzeptes (2h)
3.6 Übergeben der gesammelten Informationen an das LCM-Team (1h)
4. Projektdurchführung (11-13h)
4.1 Vorbereiten des Servers und Grundkonfiguration (3h)
4.2 Implementierung des LCM (4h)
4.3 entweder: Erstellen eigener Repositories (3h)
oder: Einbinden der Online-Repositories der verwendeten Distributionen (1h)
4.4 Durchführen der Tests nach dem Testkonzept aus Punkt 3.5 (3h)
4.5 Überprüfung und Härtung des Servers durch das LCM-Team
5. Abschließende Tests nach dem Sicherheitskonzept der XXXXXX durch das LCM-Team
6. Projektabschluß (10h)
6.1 Erstellen der Projektdokumentation (9h)
6.2 Soll- und Ist-Vergleich (1h)
6.3 Projektübergabe (2h)
Dokumentation:
Pflichtenheft
Projektdokumentation
Benutzerhandbuch
Tabellen zur Nutzwert-/ Wirtschaftlichkeitsanalyse
Abschließender Soll- und Ist-Vergleich