SLA - Security, Maintenance, Infrastructure

Sicherheits-Updates

Wir überwachen kritische Sicherheitsupdates über mehrere Kanäle. Wir verfolgen alle offiziellen Drupal-Sicherheitsankündigungen und bewerten sie im Hinblick auf ihre Dringlichkeit und ob sie in einem der von uns betreuten Projekte verwendet werden. In der Praxis sind viele Aktualisierungen nicht dringend, da sie nur gelten, wenn bestimmte Module aktiv sind oder eine bestimmte Konfiguration aufweisen. Wenn wir sicher sind, dass es für ein bestimmtes Projekt keinen Angriffsvektor gibt, planen wir das Update für ein nicht dringendes Veröffentlichungsfenster. Falls erforderlich, führen wir Sicherheitsaktualisierungen sofort durch.

Wir fassen auch automatisch verfügbare Sicherheitsupdates für Drupal- und Nicht-Drupal-Abhängigkeiten zusammen, indem wir das Composer-Audit für alle unsere Projekte auf täglicher Basis verwenden.

Proaktive Überwachung

Wir haben unser eigenes Drupal-Monitoring-Framework (https://www.drupal.org/project/monitoring) entwickelt und veröffentlicht und es seit 2013 aktiv genutzt und gepflegt. Es ist eines der meistgenutzten Projekte, das Website-Betreuer bei der Überwachung des Zustands Ihrer Projekte unterstützt. Rund 1500 Projekte verlassen sich darauf, um Erkenntnisse direkt aus Drupal zu gewinnen, wie z. B. integrierte Statusprüfungen, Häufigkeit bestimmter Fehler, Leistungsindikatoren und andere Metriken. Es ist erweiterbar und es können benutzerdefinierte Metriken und Prüfungen implementiert werden, um sicherzustellen, dass Integrationen und andere Funktionalitäten wie erwartet funktionieren.

Wir stellen auch sicher, dass Projekte mit Hilfe von Health Checks verfügbar und schnell sind, überwachen SSL-Ablaufzeiten und vieles mehr.

In den letzten 10 Jahren haben wir eine Reihe von selbst gehosteten Lösungen verwendet, um all diese Informationen zu verfolgen, zu aggregieren und zu visualisieren. Wir haben Icinga, Sensu, Grafana und andere verwendet. Vor kurzem sind wir auf SigNoz umgestiegen, eine All-in-One-Lösung für Metriken, Log-Aggregation und Performance Traces, die auf dem OpenTelemetry-Standard basiert. Wir halten uns über die neuesten Best Practices im Bereich Monitoring auf dem Laufenden und aktualisieren unseren Workflow entsprechend.

Wenn ein Projekt nicht reagiert oder eine Kennzahl einen kritischen Schwellenwert erreicht, wird unser Team alarmiert und kann sofort mit der Untersuchung beginnen. Wir informieren unsere Kunden über diese Vorfälle und ihre Lösung, oft bevor sie das Problem selbst registrieren.

Wir sind sehr stolz auf unsere Arbeit, mit der wir sicherstellen, dass wir so viele Probleme auf unseren Websites wie möglich aufspüren, damit sie alle - selbst die auf den ersten Blick unbedeutendsten - behoben werden können, bevor sie zu einem grösseren Problem werden.

Automatisierte Tests und Qualitätssicherung

Wir verwenden mehrere Tools und Prozesse, um sicherzustellen, dass die von uns bereitgestellten Änderungen so wenig Fehler und Regressionen wie möglich aufweisen.

Alle Änderungen werden von Fachkollegen geprüft und durch Code-Analyse-Tools geleitet.

Alle Projekte, die wir entwickeln, basieren auf unserer internen Distribution Primer. In den letzten 10 Jahren haben wir mit Behat eine automatisierte Testsuite aufgebaut, die aus 400 Szenarien mit fast 10'000 Testschritten besteht, welche wir bei jeder Änderung durchführen, um sicherzustellen, dass die gemeinsame Funktionalität aller unserer Projekte so stabil wie möglich ist. Projektspezifische Tests mit Behat oder anderen Tools ergänzen dies für Funktionen, die für bestimmte Projekte implementiert wurden.

Wir führen auch visuelle Regressionstests mit Diffy durch, um visuelle Probleme zu identifizieren, wenn wir neue Funktionen zu unserer Distribution hinzugefügt und unser Frontend-Framework aktualisiert haben.

Darüber hinaus nutzen wir unsere automatisierten Tests, um neue Versionen von Drupal zu bewerten, während sie entwickelt werden. Es gab nur wenige, wenn überhaupt, neue Minor- oder Major-Releases von Drupal Core, in denen wir keine Regressionen identifiziert und behoben haben.

Durch den Aufbau und die Pflege dieser Testinfrastruktur haben wir auch das Fachwissen, um Qualitätssicherungsmethoden für bestehende, vererbte Projekte zu empfehlen, die den grössten Wert für die Kosten bieten.

Plattform- und Hosting-Management

Für das Hosting unserer Kunden-Websites arbeiten wir fast ausschliesslich mit unserem PaaS-Hosting-Partner Upsun (früher platform.sh) zusammen.

Deren Plattform standardisiert die Einrichtung von Anwendungen und Diensten. Wir definieren unsere Anforderungen an Routing, Dienste und Speicherplatz und Upsun kümmert sich um den Rest. Staging- und zusätzliche Testumgebungen können innerhalb weniger Minuten eingerichtet und mit den aktuellen Produktionsdaten synchronisiert werden. Diese Umgebungen sind mit der Produktion identisch, vollständig isoliert und mit separaten Zugriffskontrollen ausgestattet. Automatisierungen ermöglichen es uns, Kundendaten zu säubern und sicherzustellen, dass sie niemals vertrauenswürdige und sichere Umgebungen verlassen. Backups sind über alle Dienste und Speicher einer Anwendung hinweg konsistent und können jederzeit erstellt und wiederhergestellt werden, sowohl automatisiert als auch manuell, so dass wir in dem seltenen Fall, dass etwas schief geht, schnell zu einem sicheren Zustand zurückkehren können.

Upsun garantiert Verfügbarkeit, hohe Sicherheits- und Datenschutzstandards und kümmert sich um alle Hardware- oder Infrastrukturprobleme, so dass wir eine sichere und zuverlässige Plattform haben und uns auf die Entwicklung und Wartung unserer Projekte konzentrieren können.

Aktualisierungen von Drupal Core und Modulen

Als erfahrene Betreuer des Drupal-Core-Subsystems und der beigetragenen Projekte sind wir aktiv an verschiedenen grundlegenden Bausteinen von Drupal beteiligt. Vom Entity-System im Drupal-Kern bis zu weit verbreiteten Projekten wie Token, Pathauto und Paragraphs.

Dieses Fachwissen, kombiniert mit unseren automatisierten Tests, ermöglichte es uns, alle unsere Kundenprojekte von Drupal 8 auf 9 und dann 10 zu aktualisieren, und wir bereiten derzeit das Update auf Drupal 11 vor. All das mit minimalen Regressionen und Bugs, mit minimalen oder sogar keinen zusätzlichen Kosten für Kunden, die unsere Distribution nutzen.