Jahrelang wurde uns gesagt: „Dafür gibt es eine App.“ Und bisher habe ich festgestellt, dass das größtenteils stimmt. Ich habe Apps für Dinge, von denen ich nie gedacht hätte, dass ich eine App dafür brauchen würde. Aber als ich es tat und nachschaute, war es da, wie von Zauberhand.
Heutzutage geht niemand mehr herum und behauptet: „Dafür gibt es einen Anwendungsdienst“, aber vielleicht sollten sie das tun. Zumindest innerhalb der Grenzen der IT. Denn so wie es oft eine App für das gibt, was ich tun muss, gibt es oft einen Anwendungsdienst für das, was ein Entwickler in Produktionsumgebungen tun – oder ansprechen – muss.
Nehmen wir zum Beispiel die Sicherheit. Laut einer Umfrage von RisingStack war dies laut den Entwicklern der größte Schwachpunkt in der Produktion.
Die Umfrage ging nicht näher darauf ein, was genau ein Problem in Bezug auf die Sicherheit darstellt (obwohl ich sicher bin, dass wir eine große Bandbreite an Antworten erhalten würden, wenn wir gefragt würden). Was ich weiß ist, dass 38 % der Teilnehmer in einer App-Rolle (Entwickler) in unserer Umfrage „State of Application Delivery“ 2018 die „zunehmende Raffinesse der Angriffe“ als ihre größte Sicherheitsherausforderung für das nächste Jahr bezeichneten. 26 % gaben an, dass es an IT-Kenntnissen im Bereich Sicherheit mangele, und 23 % sagten, es sei schwierig, Anwendungen – insbesondere Web-Apps – vor Angriffen zu schützen.
Wenn wir den Schmerzpunkt durch diese Linse betrachten (und da es mein Blog ist, werde ich das tun), dann gibt es dafür einen Anwendungsdienst. Tatsächlich mehrere. Auch wenn das Ziel darin besteht, eine bestehende Schwachstelle virtuell zu schließen oder deren Ausnutzung zu verhindern.
Und davon gibt es eine Menge da draußen. Der Punkt ist, dass für jeden Verstoß, jeden unbefugten Zugriff und jedes Datenleck tendenziell ein Entwickler verantwortlich gemacht wird – selbst wenn die Schwachstelle in einer Drittanbieterbibliothek oder tief in den Paketen eines Protokolls oder einer Plattform verborgen war, die (buchstäblich) von Millionen anderer Websites im Internet verwendet wird. Aber Lori, denken Sie, die 79 % einer Anwendung, die aus Bibliotheken bestehen, machen bei genauer Betrachtung nur 2 % der bekannten Schwachstellen aus.
Und doch sind einige der schwerwiegendsten Sicherheitsverstöße und Datenverluste auf diese 2 % zurückzuführen – Schwachstellen in Plattformen und gemeinsamen Bibliotheken, die von Millionen von Menschen genutzt werden.
Eine Web Application Firewall (einer der dreißig Anwendungsdienste, die wir in unserer jährlichen Umfrage verfolgen) befasst sich mit beiden Problemen – und mit dem wachsenden Portfolio, das Angreifer nutzen, um Zugriff zu erlangen, Ressourcen zu erschöpfen oder Daten zu stehlen. Auch die App-Zugriffskontrolle bietet eine Schutzebene für Anmeldeinformationen (die an sich wertvoll sind) sowie für die Anwendung und ihre Daten. Bemerkenswert ist, dass 75 % aller Teilnehmer unserer jährlichen Umfrage angaben, sie verwenden App-Zugriffskontrolle, um Anwendungen sowohl vor Ort als auch in der öffentlichen Cloud zu schützen.
Ebenso ist die Leistung nicht etwas, das ein Entwickler immer kontrollieren kann. Codestandards – die eher auf langfristige Nachhaltigkeit ausgerichtet sind – wirken sich auf die App-Leistung aus. Manchmal können Sie nicht die effizienteste Datenstruktur oder Syntax verwenden. Sie müssen bedenken, dass jemand anderes diesen Code später warten und ändern muss. Manchmal liegt es an den Auswirkungen von Variablen, die außerhalb Ihrer Kontrolle liegen – Kapazität, Nachfrage, Netzwerkbedingungen und der Kunde, der seinen zehn Jahre alten PC mit Windows ME nicht aufgeben will.
Es gibt einen Anwendungsdienste (eigentlich mehrere), um auch dieses Problem zu lösen. Eine wahre Fülle von Optionen, von der TCP-Optimierung über Caching und Komprimierung bis hin zum Auslagern teurer kryptografischer Verarbeitung. Alle diese Anwendungsdienste können die Leistung verbessern und die Benutzer begeistern.
Viele Leute nutzen bereits genau diese Dienste, um ihre Apps schneller und sicherer zu machen und so sowohl Schwachstellen in Bezug auf Leistung als auch Sicherheit zu beheben.
Die Entwickler gaben jedoch an, dass es nicht nur Sicherheits- oder Leistungsprobleme seien, die ihnen in der Produktion Kopfzerbrechen bereiten, sondern auch die Bereitstellung – also die Frage, wie diese Apps und Anwendungsdienste in der Produktion ausgeführt werden können.
Dies ist ein größeres Problem, das nicht durch einen einzelnen Anwendungsdienst – oder sogar eine Kette von Anwendungsdiensten – gelöst werden kann. Zur Lösung dieses Bereitstellungsproblems ist eine strategischere Initiative rund um Automatisierung und Orchestrierung sowie die Berücksichtigung von DevOps-Ideen wie Infrastruktur als Code erforderlich.
Es bedarf konzertierter Anstrengungen, um traditionelle NetOps dazu zu bewegen, die Prinzipien und Methoden von DevOps zu übernehmen, um die notwendigen Prozesse zu kodifizieren, die für die Umsetzung der notwendigen Änderungen in der Produktion erforderlich sind, um Entwickler zu unterstützen.
Das bedeutet, dass Infrastrukturanbieter eine API-fähige Infrastruktur bereitstellen und die Möglichkeit unterstützen müssen, in einem deklarativeren Modell zu arbeiten, das auf Vorlagen und Bereitstellungsartefakten statt auf CLIs basiert.
Von den drei von Entwicklern genannten Schwachstellen ist die Bereitstellung am schwierigsten zu beheben, da es kein einzelnes Tool oder keine einzelne Technologie gibt, mit der sich dieses Problem lösen lässt. Um die IT von einem manuell gesteuerten Bereitstellungsmodell auf den automatisierten Fließbandansatz der Zukunft umzustellen, bedarf es Zusammenarbeit und konzertierter Anstrengungen.
Unabhängig davon, wie einfach oder schwierig es ist, die Problempunkte der Entwickler zu lösen, können alle drei Probleme in der Produktion durch NetOps gelöst werden. Ob durch eine großzügige Portion Anwendungsservices oder eine gezieltere Bemühung um die interne digitale Transformation – NetOps kann den Übergang in die Produktion für alle zu einer weniger schmerzhaften – und erfolgreicheren – Erfahrung machen.