Zum Inhalt springen

Projektidee Performance Monitoring in einem verteltem Netzwerk


feuerjinn

Empfohlene Beiträge

Hallo,

zu mir, habe hier im Forum schon einige sonderbare Fragen gestellt. Ich bin im 3.LJ und mache im Sommer meine Prüfung. Aufgrund ein paar Entwicklungen bei uns in der Firma, ist mir ein tolles Thema vor die Füße gefallen. Könnt ihr mir bitte eine Einschätzung geben, ob die IHK diesen Umfang gelten lässt? Grade bei der Anzahl der Server habe ich Bedenken.

Projektbeschreibung:

Durch die immer mehr an Bedeutung gewinnende DevOps Schiene, hat sich meine Firma entschieden einen strukturellen Wandel zu durchlaufen. Um einen bedeutendes Unternehmen aus dem DevOps-Bereich zu zitieren: "If it moves, we track it." (Etsy)

Daher besteht die Anforderung eine Art Performance Monitoring für die verteilten Linux Kundenumgebungen auf die Beine zu stellen. Besondere Anforderung: Die Kundenumgebungen sind über verschiedene VPN-Verbindungen erreichbar oder stehen im Internet.

Bisher wird Nagios zur Systemüberwachung und Javamelody als Anwendungs-Performance-Tracker verwendet.

Das Ziel ist es, ein System zu haben, welches die Performance-Daten von allen Kundensystemen möglichst visuell und in Echtzeit darstellen kann. Die Anwendungs und Systemüberwachung werden dadurch ergänzt, um möglichst effizient auf Trends reagieren zu können.

Projektentscheidung:

Der Erste Vorschlag war sar (System Activity Report). Sar ist ein Systemtool, welches die Performance des Systems überwacht. Der Nachteil ist, es ist lokal. Für jeden Server müssen die sar-Statistiken einzeln abgerufen werden und verarbeitet. Es gibt keine online-Historie sondern lediglich Reports basierend auf den Einstellungen.

Auf der Suche nach Alternativen kam collectd in den Fokus. Collectd ist ein in C geschriebener Daemon der modular aufgebaut ist. Durch seine Vielzahl an Plugins, kann der Bedarf eingeschränkt werden. Collectd arbeitet nativ mit RRDTool und bietet zumindest einen Output der relativ schnell in Graphen umgebaut werden kann. Das Netzwerk-Protokoll zum Versenden der Daten unterstützt Verschlüsselung mittels Zertifikat und ist somit für den Betrieb im Internet geeignet.

Die Entscheidung wurde auf collectd mit Graphite als Frontend gewählt.

Kaufmännischer Aspekt:

Bei einem Systemausfall sind Daten sehr wichtig. Daten und Trends an einem zentralen Knotenpunkt zu haben, spart Kosten durch geringeren Aufwand des Mitarbeiters. Die Probleme können schneller analysiert und behoben werden. Im 2. Schritt bietet collectd die Möglichkeit, seine Performance-Daten entweder selbstständig oder extern zu verwerten.

-----------------------------------------------------------------------------------------------------------------

Projektphasen mit Zeitplanung in Stunden:

1. Konzeption 4h

1.1 Ist-Analyse 0,5h

1.2 Soll-Zustand 0,5h

1.3 Netzwerk-Plan 1h

1.4 Konzeption 2h

2. Realisierungsphase 12 h

2.1 Installation von collectd 10h

2.1.1 collectd Master 1h

2.1.2 collectd Clients(50+) 6h

2.1.3 Konfiguration 3h

2.2 Installation von Graphite 2h

2.2.1 Aufsetzen des Containers 0,5h

2.2.2 Konfiguration 1,5h

3. Testphase und Fehlerbehebung 9 h

3.1 Testlauf collectd 4h

3.2 Fehlerbehebung 5h

4. Dokumentation 10 h

Zeitaufwand gesamt: 35 h

Link zu diesem Kommentar
Auf anderen Seiten teilen

a) die Projektentscheidung gehört nicht in den Antrag, die triffst du offiziell erst im Projekt. Das fehlt.

B) was meinst du bei sar mit "Es gibt keine online-Historie" ... du kannst alle Messdaten der letzten 31 Tage abrufen, genauso wie alle dieses Tages. Und das output kannst du problemlos mit dem Namen des Servers benamsen und dann mittels scp oder so einsammeln zu 'nem zentralen Auswerte-Server. Das ist aber keine fertige Geschichte, sondern bedarf der Handarbeit. Dafür muss aber auf den einzelnen Rechnern nix installiert werden. Die Darstellung der einzelnen Werte ist möglich, ksar nennt mir Tante Google spontan.

c) nach der nicht vorhandenen Auswahl ist's nur noch eine Installationsorgie ... ob du da punkten kannst?

d) 5 Stunden Fehlerbehebungszeit halte ich für gewagt ...

Link zu diesem Kommentar
Auf anderen Seiten teilen

´zu a) Das ist mir bewusst und war, wie auch der kaufmännische Aspekt, nur für das Forum gedacht. Was meinst du mit "Das fehlt"?

zu B) Ja, ich kenne und nutze ksar. Halte es auch für die einzige fähige Lösung auf dem Markt, um sar-Daten grafisch zu verarbeiten. Das Problem ist, dass ksar ein reines GUI-Tool ist und keinerlei Batchfähigkeit besitzt. Muss also auf einem Windows-Server/Client laufen(ich schließe X11 mal aus). Weiterhin kann man hier nur "Tagesweise" sich die Sachen angucken. Ist zur Trenderkennung wirklich nicht geeignet. Aber deswegen machen wir das Ganze ja. Wie hat sich der Speicherverbrauch über 6 Monate verhalten? Wie stark ist der Speicherverbrauch über 6 Monate auf der Festplatte gewachsen?

zu c) Auch hier wieder, welche Auswahl? Ich treffe die Auswahl zwischen sar und collectd. Entscheide mich für collectd, wegen dem modularen und erweiterbaren Aufbau.

Installationsorgie: Ja, aber ist das nicht jedes Projekt? Irgendwie muss ja die "innovative" Software, den Weg auf die Infrastruktur finden.

zu d) Halte ich eigentlich zu wenig. Bei 50 Servern sind das gerade einmal 6 Minuten pro Server. Hier ist die Binary zu alt, dort ist der Kernel zu alt oder nicht kombatibel.

Link zu diesem Kommentar
Auf anderen Seiten teilen

a) zu einem Abschlussprojekt gehört auch ein kaufmännischer Aspekt, lies mal in der Prüfungsordnung nach

B) sar speichert für einen Monat selbst, wenn du jeden Tag die Daten absaugst, dann hast du bald 'n schönen Stamm an Daten. Für 'n Windows-Server gibt's cygwin und ... ob nun sar oder collectd die Daten sammelt, das dürfte im Speicherplatzverbrauch keinen großen Unterschied machen.

c) nein, die Entscheidung triffst du vor dem Projekt. Das sollst du im Projekt tun, als Bestandteil deines Projekts. Mit der Berücksichtigung kaufmännischer Geschichten. Installationsorgie: ja, gehört etwas (!) zu jedem Projekt, aber darf nie Hauptbestandteil sein. Deine Aufgabe als Azubi ist es, den Prüfungsausschuss davon zu überzeugen, dass du ein Fisi bist und man dich bestehen lassen kann.

Mit einer Installationsorgie kannst du das nicht, da du dabei nur nach Anleitung vorgehst und keine Entscheidungen triffst ... ganz hart: Prüfungsleistung nicht erbracht -> durchgefallen

d) hui, hatte ich glatt übersehen ... du willst in 6 Stunden 50 Clients mit Software füttern (+ 5 Stunden Fehlerkorrektur) ... lass es ... so etwas ist nicht Sinn eines Abschlussprojekts. Such dir 2 Clients raus und mach es bei denen sauber.

Die Aufgabe des Abschluss-Projekts ist nicht ein schönes Projekt an sich, sondern deine Selbstdarstellung. Die Prüfer wollen dich im Projekt Entscheidungen treffen sehen, sie wollen sehen, wo du nachgedacht hast, wo du vor Problemen standest. Und davon sehe ich hier zu wenig.

Was du machst, ist 'ne fertige Software auf die Server & Clients zu klatschen, nach Anleitung. Da ist kein Platz für Kreativität. Das ist 'n Job für 'n Flugzeugmechaniker, die müssen alles 100%ig nach Anleitung machen und dürfen keinen mm davon abweichen (ich übertreibe etwas). Ein Fisi ist der Typ, der vor komischen Problemen steht und die kreativ mittels IT in angemessener Zeit und mit angemessenen Mitteln (daher der kaufmännische Teil) löst. Und das fehlt mir hier ...

Um mal wieder zurück zu deinem Projekt zu kommen, ein Vorschlag: mach ein proof of concept, ob sar oder collectd besser ist ... da kannst du dann zeigen, was du für ein FISI-Held bist :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

a) Ist mir bewusst, kommt in die Doku rein, gehört nicht in den Antrag. Fürs Forum im Antrag, zur nachvollziehbarkeit. Sonst wirds angeprangert.

B) Du möchtest mir also erzählen, dass ein Datengrab mit einer Datei pro Tag pro Server eine gute Lösung ist? Sowas hat keine Zukunft und produziert nur Aufwand. Der Speicherplatzverbrauch war ein Beispiel für den Server(Client), der eine bestimmte Aufgabe hat; zb DB-Server.

c) Meine Aufgabe ist ganz klar: Stelle ein Performancemonitoring für unsere Interne-, Spiel- und Externen Systeme bereit.

Wenn du also sagst, die Entscheidungen:

Welche Software erfüllt die Anforderungen?

Wie kann ich die Daten sicher transportieren?

Welche Lasten werden auf dem Netzwerk entstehen?

Welcher Overhead wird einem überwachten Server hinzugefügt?

etc

Sind keine Entscheidungen, dann nenn mir bitte ein Beispiel.

d) Ich bin ein FISI im 3. LJ. Generell sollte ich den selben Aufgaben nachgehen, wie ein ausgelernter FISI. 3 Clients mit einem "nach Anleitung installiertem Stück Software inklusive Konfiguration" mach ich in unter 3 Stunden. Natürlich werde ich in den 6h keine 50 Server anfassen. Dazu schreibe ich mir ein Skript, welches die Software pusht, installiert und konfiguriert. Ist das die Kreativität die erwartet wird? Oder fall ich dann hier wieder aus dem Raster, weil ich sh, sed, awk fliessend beherrsche?

Sorry aber das proof of concept ist non-sense. Sar bietet nicht einmal Ansatzweise die Möglichkeiten von collectd, bis auf die Momentaufnahme des Systems.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

ich prüfe fast ausschließlich Betriebssysteme. Von so ca. 20 Azubis, die mir in der Abschlussprüfung begegnen, macht einer *ix, der Rest Windows. Von 20 Azubis, die etwas mit *ux machen, können mir vielleicht 4 bis 5 erklären, wo ungefähr Logdateien des Systems gespeichert werden, wobei ich /var schon als richtig werte. Die letzte Azubi, die mir den Unterschied zwischen sed und awk erklären konnte, ist schon ein paar Jahre im Beruf.

Und wenn mir ein Azubi erklärt, dass er etwas auf 50 Systemen installiert, dann machen das geschätzt 90% der Azubis von Hand.

Daher lag' ich falsch bei dir.

a) nein! Der kaufmännische Teil ist Teil des Projekts und damit muss er auch in den Antrag, zumindestens dort in die Zeitplanung. Pack das als 'ne Stunde unter Konzeption mit dem Stichwort Kostenbetrachtung.

B) okay

c) davon hast du nix erwähnt. Ich kenne dich nicht und gehe davon aus, was du in den Sachen bisher geschrieben hast. Und da stand nix davon.

d) jein, du fällst nicht durch's Raster mit sh, sed und awk. Aber du fällst deutlich aus'm Rahmen mit dem Wissen :-)

Der Antrag hat für die IHK eigentlich nur einen Sinn: er soll den Azubi schützen, dass er eine zu niveauloses Projekt durchführt. Pack ein paar Infos aus'm letzten Posting von dir rein und gut ist.

Beispiel:

2.1.2 collectd Clients(50+) 6h

stattdessen:

2.1.2.1 Script zum Ausrollen von collectd auf den Clients schreiben (4h)

2.1.2.2 Ausrollen der Client-Installation (30 min)

2.1.2.3 Script zum automatisierten Check der Installation schreiben (1h)

2.1.2.4 Installations-Check (30 min)

Schon kann ich mir darunter etwas vorstellen ... oder du schreibst oben in den Antrag, dass das Ausrollen über selbstgeschriebene Scripts (sh, awk, ...) passiert.

Der Grund, warum ich so auf den sar anhob, war, dass ich wollte, dass du dir auch mal neben dem collect etwas ansiehst. Vor'm Hintergrund deines letzten Postings ist das aber nicht nötig ... das Wissen hast du schon.

So, wie ich das jetzt sehe, wird's ein sehr schönes Projekt! Hätte ich gerne in der Prüfung!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Vielen Dank für Deine Hilfe, euro.

Jetzt wo ich auch etwas Einsicht in deinen Standpunkt erhalten habe, verstehe ich deine bisherigen Postings eher. :)

Wenn ich meine Schulkollegen in der BS so anschaue, muss ich dir leider zustimmen mit dem Wissensstand.

Ich werde dann den Antrag etwas überarbeiten und hier nochmal reinstellen, Vorher-/Nachher.

Viele Grüße Jinn

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...

Aktualisierter Antrag

Thema: Aufbau einer Performance-Monitoring-Umgebung für verteilte Linux-Systeme

Projektbeschreibung:

Durch die immer mehr an Bedeutung gewinnende DevOps Schiene, müssen auch etablierte Arbeitsprozesse sich wandeln. Um einen bedeutendes Unternehmen aus dem DevOps-Bereich zu zitieren: "If it moves, we track it." (Etsy.com) Um den Wandel nicht im Weg zu stehen, steht die Datengewinnung im Vordergrund. Durch die Auswertung einer Datenmenge können Profile erstellt und Richtungen erkannt werden.

Daher besteht die Anforderung ein Performance Monitoring für die verteilten Linux Umgebungen der Firma einzurichten. Bisher wird Nagios zur Systemüberwachung und Javamelody als Anwendungs-Performance-Tracker verwendet. Das Ziel ist es, ein System zu haben, welches die Performance-Daten von allen Systemen möglichst visuell und in Echtzeit darstellen kann. Die Anwendungs und Systemüberwachung werden dadurch ergänzt, um möglichst effizient auf Trends reagieren zu können.

Projektumfeld:

Die X1X2X3 Gmbh(XXX) ist ein Bestandteil der YYY. Das Projekt wird in den Integrations-, Sales- und Performanceumgebungen durchgeführt. Die Integrationsumgebung umfasst die gesamte Testumgebung der XXX. Die Salesumgebung ist ein teil-produktives System bei einem externen Hostingprovider. Die Performanceumgebung ist eine vom Firmennetz-getrennte Umgebung um Lasttests für unser Produkt durchzuführen.

Kaufmännischer Aspekt:

Bei einem Systemausfall sind Daten sehr wichtig. Daten und Trends an einem zentralen Knotenpunkt zu haben, spart Kosten durch geringeren Aufwand des Mitarbeiters, diese zusammenzutragen. Die Probleme können schneller analysiert und behoben werden. Durch die stetige Analysierung der Leistungsfähigkeit, des Gesamtsystems können Probleme abgefangen und somit Kosten gespart werden.

-----------------------------------------------------------------------------------------------------------------

Projektphasen mit Zeitplanung in Stunden:

1 Konzeption 4h

1.1 Ist-Analyse 0,5h

1.2 Soll-Zustand 0,5h

1.3 Netzwerk-Plan 1h

1.4 Konzeption 2h

1.4.1 Lösungsentscheidung 1h

1.4.2 Kostenbetrachtung 1h

2 Realisierungsphase 13h

2.1 Installation des Performance-Systems 11h

2.1.1 Master node/Collector 2h

2.1.2 Erstellung eines Installationsskripts 6h

2.1.3 Installation mit Skript 1h

2.1.3 Konfiguration 2h

2.2 Konfiguration des Frontend 2h

3 Testphase und Fehlerbehebung 9h

3.1 Testlauf Monitoring 4h

3.2 Fehler- und Konfigurationsbehebung 5h

4 Projektabschluss 9h

4.1 Dokumentation 8h

4.2 Fazit und Langzeiterwartung 1h

Zeitaufwand gesamt: 35h

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...