SOLUTIONS.admin

Anwendungen zentral konfigurieren und überwachen

Die Konfiguration liegt nicht mehr auf dem Server, sondern an einer Stelle. Dazu eine Oberfläche, die alle Anwendungen zusammenführt.

Eine gewachsene Landschaft hat selten ein Konfigurationsproblem, das man beschreiben würde. Sie hat Konfigurationsdateien: eine je Anwendung, mal drei, mal vier, in jeder Umgebung noch einmal. Wer etwas ändern will, braucht Zugang zur Maschine. Wer nachsehen will, welcher Stand gilt, sieht auf der Maschine nach. Und wer eine Sicherung dieser Maschine hat, hat alles, was darin steht.

Was der Dienst hält, und was er ausdrücklich nicht hält

Datei auf dem Server oder Datensatz im Dienst

Derselbe Wert, einmal so und einmal so verwahrt.

heute üblich

Konfigurationsdatei je Anwendung

  • Ändern heißt: auf den Server, Datei anfassen, Dienst neu starten
  • Vier Umgebungen sind vier Dateien, die auseinanderlaufen
  • Wer die Maschine oder ihre Sicherung liest, liest die Datei mit
  • Welcher Stand gilt, weiß nur, wer nachsieht
  • Jede neue Anwendung bringt ihren eigenen Ablageort mit

mit dem Dienst

Konfiguration als Datensatz

  • Ändern heißt: einen Datensatz ändern, in einer Maske
  • Jede Umgebung hat ihren eigenen Bestand, sichtbar nebeneinander
  • Zugangsdaten liegen gar nicht hier, sondern in SOLUTIONS.vault
  • Was gilt, steht an einer Stelle und ist abfragbar
  • Eine neue Anwendung meldet sich an und ist in der Liste

Was in der Konfiguration einer Anwendung steht

Sechs Gruppen von Angaben, alle als Datensatz und keine davon in einer Datei auf der Platte.

Wer die Anwendung ist

Kennname, angezeigte Bezeichnung, Adresse, Domäne, Farbe, Symbol und die Gruppen, unter denen sie im Menü erscheint. Der Kennname ist zugleich die Kennung, unter der andere Dienste sie ansprechen.

Woher die Daten kommen

Die Datenbank samt Name, dazu der Zwischenspeicher. Beides steht als eigener Datensatz daneben und lässt sich mehrfach verwenden, statt in jeder Anwendung wiederholt zu werden.

Wie sie mit anderen spricht

Der Nachrichtendienst, über den die Microservice-Architektur läuft. Ob eine Anwendung daran teilnimmt, ist ein Schalter.

Was sie nach außen meldet

Wohin die Ablaufverfolgung geht, also die Spur, an der sich später nachvollziehen lässt, welcher Aufruf wie lange gedauert hat und woran er hing.

Wie sie aussieht

Ein Erscheinungsbild lässt sich als Vorgabe hinterlegen und auf mehrere Anwendungen anwenden, damit eine Landschaft nicht in fünf Farbwelten zerfällt.

Was im Betrieb wechseln muss

Systemeigenschaften: benannte Werte je Anwendung, die sofort gelten. Eine Obergrenze, ein Schwellwert, ein Schalter für eine Funktion, die eine Woche lang beobachtet wird.

Die Konfiguration einer Anwendung in einer Maske

Oben steht, wer die Anwendung ist: Domäne, Adresse, Kennname, angezeigte Bezeichnung, die Gruppen, unter denen sie im Menü erscheint, dazu Farbe und Symbol. Zwei Schalter entscheiden, ob sie serverseitig zwischenspeichert und ob sie am Verbund der Microservices teilnimmt.

Darunter liegen die Verbindungen: Datenbank samt Name, Zwischenspeicher, Nachrichtendienst und das Ziel der Ablaufverfolgung. Jede davon ist ein eigener Datensatz, den mehrere Anwendungen benutzen können, statt in jeder Anwendung noch einmal zu stehen.

Der Unterschied zwischen Start und Betrieb, und warum er bleibt

Es wäre verlockend, jede Einstellung im laufenden Betrieb änderbar zu machen. Wir tun das nicht, aus Gründen, die im Alltag zählen. Was eine Anwendung beim Start aufbaut, etwa die Verbindung zur Datenbank oder zum Nachrichtendienst, wird einmal gelesen und danach gehalten. Eine Änderung mitten im Lauf würde bedeuten, dass die Anwendung sich selbst umbaut, während sie arbeitet.

Deshalb gibt es zwei Arten von Werten. Die Startangaben werden beim Hochfahren geholt und gelten bis zum nächsten Start. Die Systemeigenschaften sind für den anderen Fall gedacht, für Werte, die sich ohne Auslieferung ändern müssen, und die wirken sofort.

Diese Grenze steht nicht im Weg, wenn man sie kennt. Sie steht im Weg, wenn jemand erwartet, dass ein neuer Datenbankname ohne Neustart wirkt.

Eine Oberfläche für alle Anwendungen

Der zweite Teil des Dienstes ist eine Verwaltungsoberfläche, und ihr wichtigster Zug ist, was sie nicht tut: Sie baut die Masken der anderen Dienste nicht nach.

Wer eine Anwendung öffnet, findet Reiter nebeneinander. Der erste trägt ihre Konfiguration und gehört diesem Dienst. Die nächsten zeigen Benutzergruppen, Rollenzuordnung, Zugriffsregeln und Startseitenregeln, und was dort erscheint, ist die echte Maske von SOLUTIONS.user, eingebettet und auf diese eine Anwendung eingeschränkt. Zwei weitere holen die Überwachungsseite und die Schnittstellendokumentation direkt aus der Anwendung selbst.

Der Gewinn ist nicht die Bequemlichkeit, sondern dass nichts altert. Eine nachgebaute Rechtemaske müsste jede Änderung am Rechtesystem nachvollziehen; eine eingebettete ändert sich mit. Und der Administrator sucht die Einstellungen einer Anwendung an einer Stelle statt in sechs Oberflächen.

Zehn Reiter, und die meisten gehören einem anderen Dienst

Der erste Reiter trägt die Konfiguration und gehört diesem Dienst. Benutzerverwaltung, Benutzergruppen, Startseitenregeln, Benutzerrollen und Zugriffskontrollen zeigen die echten Masken von SOLUTIONS.user, eingebettet und auf diese eine Anwendung eingeschränkt. Metriken und API holen die Überwachungsseite und die Schnittstellendokumentation direkt aus der Anwendung selbst.

Im Bild ist die Benutzerverwaltung offen: dieselbe Maske, die auch in SOLUTIONS.user steht, hier nur auf diese Anwendung gefiltert.

Der Zustand aller Anwendungen auf einem Bildschirm

Die Startseite ist eine Kachelreihe, eine Karte je Anwendung. Darauf stehen Prozessorlast, belegter und verfügbarer Speicher, die mittlere Antwortzeit und die Zahl der Fehler, dazu die schlichteste aller Angaben: ob die Anwendung antwortet.

Das ist die Ansicht für den Morgen und für den Anruf aus dem Fachbereich. Sie ersetzt keine Überwachungslösung: ohne Alarmierung, ohne Langzeitkurven und ohne Schwellwerte, die jemanden wecken. Wer das braucht, betreibt es daneben, und die Ablaufverfolgung aus der Konfiguration liefert die Daten dafür.

Eine Karte je Anwendung

Prozessorlast, belegter Speicher gegen das Maximum, die Zahl der Fehler und die mittlere Antwortzeit, dazu der Zustand als Wort. Die Farbe der Kachelüberschrift ist dieselbe, die in der Konfiguration hinterlegt ist; wer eine Anwendung im Menü kennt, erkennt sie hier wieder.

Auffällig wird eine Anwendung nicht durch eine Zahl, sondern im Vergleich zur Nachbarkachel. Im Bild fällt auf, dass ein Dienst dreizehn Fehler führt, wo die anderen bei null stehen.

Was das im Alltag ändert

Eine neue Anwendung ist ein Eintrag. Sie meldet sich mit ihrem Kennnamen an, bekommt Datenbank, Zwischenspeicher und Nachrichtenweg zugewiesen und erscheint in derselben Liste wie die anderen. Niemand legt eine Datei auf einen Server.

Eine neue Umgebung ist eine Kopie mit anderen Werten. Der Aufbau ist derselbe, weil er nicht aus Dateien besteht, die auseinandergelaufen sind, sondern aus Datensätzen mit denselben Feldern.

Eine Frage nach dem Stand ist eine Abfrage. Welche Anwendung auf welcher Datenbank liegt, welcher Wert wo gesetzt ist, welche Anwendung gerade nicht antwortet: alles Listen, nicht Suchläufe über Verzeichnisse.

Weiterlesen

Häufige Fragen

Wo liegt die Konfiguration einer Anwendung?

Im Verwaltungsdienst, als Datensatz. Auf dem Server der Anwendung liegt keine gepflegte Konfigurationsdatei mehr, die jemand von Hand ändern könnte. Beim Start holt sich die Anwendung ihre Angaben und arbeitet damit.

Wirkt eine Änderung sofort?

Das hängt von der Art des Wertes ab, und die Unterscheidung ist bewusst. Was den Start betrifft, also Datenbank, Zwischenspeicher, Nachrichtenweg, wirkt beim nächsten Start. Was im Betrieb wechseln muss, wird als Systemeigenschaft geführt und ist sofort gültig, ohne Auslieferung und ohne Neustart.

Stehen Passwörter in dieser Konfiguration?

Nein, dafür gibt es einen eigenen Dienst. Zugangsdaten und Schlüssel gehören in SOLUTIONS.vault, wo sie verschlüsselt liegen und einzeln angefordert werden. Die Konfiguration verweist darauf, statt den Wert selbst zu tragen.

Was sieht man auf der Übersicht?

Je Anwendung eine Karte mit Prozessorlast, Speicherverbrauch, Antwortzeit und der Zahl der Fehler, dazu ob sie erreichbar ist. Das ist eine Betriebsübersicht für den Alltag und ersetzt keine Überwachungslösung mit Alarmierung und Langzeitspeicher.

Warum sind die Einstellungen der anderen Dienste eingebettet und nicht nachgebaut?

Weil eine nachgebaute Maske altert. Rollen, Gruppen und Zugriffsregeln gehören SOLUTIONS.user, und die Verwaltung zeigt genau dessen Maske in einem Reiter. Ändert sich dort etwas, ändert es sich hier mit.

Brauchen wir den Dienst, wenn wir nur eine Anwendung betreiben?

Dann ist der Nutzen kleiner, aber nicht null: Auch eine einzelne Anwendung hat Entwicklung, Test und Produktion. Seine Stärke spielt er aus, sobald mehrere Anwendungen nebeneinander laufen und dieselbe Frage dreimal beantwortet werden müsste.

Ist der Dienst von außen erreichbar?

Er läuft im selben Verbund wie die Anwendungen, die er verwaltet, und ist für Administratoren gedacht, nicht für Anwender. Wer ihn öffnen darf, entscheidet dieselbe Rechteprüfung wie überall sonst.

Sprechen Sie mit uns.

Wie dürfen wir Sie kontaktieren?*

Wir melden uns umgehend bei Ihnen.