Automation in der IT als Ausweg

Die Aufgaben einer IT Abteilung werden immer umfangreicher und komplexer, trotzdem müssen Kosten eingespart, die Effizienz erhöht werden und zusätzliches Personal steht auch nicht zur Verfügung. Auf der anderen Seite wird erwartet, dass die Infrastruktur jederzeit verfügbar ist und das Tagesgeschäft ebenfalls zeitnah abgewickelt wird. Dazu kommen noch die Anforderungen an die Cyber Security, die bei der aktuellen und zu erwartenden Bedrohungslage sehr hoch sind. Ein Blick in den Lagebericht des BSI genügt, dass hier jedem klar wird, wie wichtig der Schutz vor Cyber Attacken ist. Damit eine IT Abteilung die Anforderungen und Erwartungen, die in sie gesetzt werden erfüllen kann, braucht es neue Ansätze und einer davon ist Automation.
Diese neuen Ansätze zu finden ist für sehr viele IT Abteilungen ein fast unmöglicher Spagat, denn sie sind so im Tagesgeschäft gefangen, dass keine Zeit mehr bleibt sich Gedanken um neue und bessere Wege zu machen, Ideen zu verfolgen oder eine langfristige IT Strategie zu planen. Ganz zu schweigen davon, eine Vision zu entwickeln, wie sich die IT noch mehr in die Wertschöpfungskette einbringen kann und so das ganze Unternehmen durch das vorhandene Potential in den anderen Fachabteilungen gemeinsam auf ein ganz neues Level zu heben. Dafür ist einfach keine Zeit und somit bleibt das vorhandene Potential völlig ungenutzt liegen. Dabei wäre es so wichtig, dass Unternehmen bei der Digitalisierung aktiv mit dabei sind und nicht den anderen dabei zuschaut, wie sie nicht nur vorbei, sondern immer weiter weg ziehen. Daher wird es Zeit einige Dinge grundsätzlich und wertfrei zu hinterfragen. Ganz wichtig dabei, hier geht es nicht um Fingerpointing, denn in der Vergangenheit ist nicht unbedingt etwas falsch gemacht worden, die Dinge haben sich nunmal so entwickelt und man muss sich entsprechend anpassen. Dass einzig wichtige dafür ist, es muss die Bereitschaft zur Veränderungen vorhanden sein. Denn die muss geben, um sich den neuen Rahmenbedingungen zu stellen.
Um das zu tun, braucht es aber Zeit, die Stand heute nicht da ist und genau hier kommt die Automation ins Spiel. Dinge zu automatisieren ist fast schon so alt, wie die IT selbst. Vielleicht ist es durch die bunten Oberflächen etwas aus den Augen verloren worden, aber die Funktionen sind nach wie vor vorhanden: Batch-Dateien unter Windows, Shell-Skripte bei den unixoiden Betriebssystemen usw., neu hingegen sind so Dinge wie RestAPI’s, JSON, MQTT oder WebHooks. In der unixoiden und der Netzwerk Welt war es schon immer so und daran hat sich bis heute nichts geändert, administrative Arbeiten werden per CLI erledigt. Die Windows Welt hat in den vergangenen Jahren ganz massiv mit der PowerShell den gleichen Weg eingeschlagen und setzt nun konsequenterweise auch auf OpenSSH für den Remote Zugriff. Damit steht alles zur Verfügung um die Routineaufgaben automatisiert und zentral gesteuert zu erledigen und sich somit die notwendige Zeit für Neues zu verschaffen. Das dafür aus unserer Sicht richtige Werkzeug ist Ansible und das sowohl in der freien und in der kostenpflichtigen Variante. Ansible bietet viele Vorteile und kann vor allem mit sehr vielen Systemen direkt umgehen, denn es gibt eine riesige Anzahl zur Verfügung stehender Module für alle möglichen Bereiche der IT. Dazu gehören eben nicht nur die Server und deren Applikationen, sondern auch der ganze Bereich Netzwerk, Storage und Virtualisierung. Gibt es für eine Anforderung kein Modul, dann schreibt man es eben selbst, den geht nicht, gibt es nicht. Somit gibt es keine Grenzen für den Einsatz von Ansible und das sogar noch über den schon sehr großen Tellerrand der Automation hinaus.
Denn jetzt wird es interessant, tritt man einen Schritt zurück und betrachtet das große Ganze fügt sich alles zusammen: User Experience, Helpdesk, Routineaufgaben, DevOps, Cyber Security, Verfügbarkeit und Effizienz. Es greift alles ineinander und das herstellerübergreifend durch die neuen Schnittstellen und der Automation selbst. Diese Verzahnung macht aber nicht an den Grenzen der IT Abteilungen halt, sondern lässt sich auch auf das Unternehmen ausdehnen. Moderne System bieten Schnittstellen in Form von API’s, mit denen sich auf einfache Weise eine Verzahnung und somit eine Automation einrichten lässt.
Um es besser zu verdeutlichen ein paar einfache Beispiele aus den Optionen für die IT:
Wartungsarbeiten wie das Patchen der Serversysteme und der Anwendungen gehören zu den wichtigsten Aufgaben einer IT im Kampf gegen Cyber Attacken. Ist eine Umgebung schon ein klein wenig größer, dann fordert dies entsprechend viel Zeit zur Durchführung der Wartungsarbeiten. Diese Arbeiten lassen sich aber hervorragend mit Ansible und dessen Playbooks automatisieren. Dabei führt Ansible nicht nur einfach zeitgesteuert irgendwelche Scripte aus, sondern kann die Rückgabewerte entsprechend auswerten, dementsprechend reagieren und auch somit notwendige Neustarts durchführen. Durch die Integration in ein Monitoring System schaltet Ansible vor den Patches die Notifications ab oder setzt den entsprechenden Maintenance Mode. Im Anschluss werden die Notifications wieder aktiviert bzw. für alle Hosts mit Problemen, bei denen die Installation zum Beispiel nicht erfolgreich war, wird ein Ticket durch Ansible geöffnet und die Administratoren können es sich ansehen. Bei diesem Szenario gibt es einen Verbund aus Monitoring, Ansible und Ticket System.
Ansible kann aber auch zur Unterstützung des 1st Level Support genutzt werden. Dies kann zum Beispiel der Fall sein, dass der Support sehr einfach einen VPN Tunnel neu initiieren kann, in dem er über ein Portal oder direkt aus dem Prozess in einem Ticket dieses per Ansible gesteuert an das entsprechende Gateway gibt. Dabei kann dann Ansible dem Support noch eine entsprechende Statusinformation zum Tunnel als direktes Feedback geben. Bei man eine solche automatisierte Unterstützung entsprechend aus, so können schon sehr viele Dinge direkt vom 1st Level Support erledigt werden und müssen nicht in die nächste Ebene. Damit werden Tickets schneller bearbeitet und die User Experience steigt.
Ein mehr oder weniger lästiges Thema bei den Netzwerkadministratoren ist die regelmäßige Sicherung der ‘running configs’ und genau dabei kann Ansible sehr gut und sogar ‘out of the box’ unterstützen. Durch die Module für so gut wie alle möglichen Netzwerkkomponenten kann man dies vollständig automatisieren. In der aktuellen FortiOS Version 6.0 und dies noch in Kombination mit dem FortiManager und FortiAnalyzer steht eine komplette API zur Steuerung der Systeme zur Verfügung. Diese Option in Kombination mit Ansible stellt den Administratoren ein solch mächtiges Werkzeug zur Verfügung, was durch die flexibilität der Playbooks keine Wünsche mehr offen lässt.
Diese Möglichkeiten gelten auch für alle großen und kleinen Clouds und dabei spielt es gar keine Rolle, ob Public oder Private, VMware, OpenStack oder Docker & Co. alles lässt sich automatisieren und zentral steuern. Komplette Deployments bis hin zur Individualisierung der Servicekonfigurationen, es gibt keine Grenzen.
Aber eine Warnung vorweg, Ansible beinhaltet für Administratoren ein hohes Suchtpotential, denn die Ideen kommen mit zunehmender Nutzung der Plattform für die Administration und es zeigt sich das große Potential, welches in Ansible steckt. Vor allem auch, weil es weit über die klassische IT hinausgeht und man viele Bereich mit einbinden kann, die für bestimmte Dinge eine Automation benötigen.
Durch die Automation kann man sich nun die Zeit verschaffen, die IT wieder voranzubringen, Visionen zu entwickeln und die Aufgaben der Digitalisierung aktiv im eigenen Unternehmen gestalten. Seine Zeit mit Routineaufgaben und Turnschuhadministration zu verbringen ist alles andere als zeitgemäß. Gerade auch deshalb, weil es Werkzeuge wie Ansible gibt. Hinter Ansible steht Redhat und somit auch entsprechender Support in der kommerziellen Version. Um mit Ansible etwas zu spielen und auch darüber hinaus, reicht die OpenSource Version aus. Wenn man aber mehr machen möchte und vor allem dann, wenn es um Dinge wie die Integration in das große Ganze geht, dann sollte man zur kostenpflichtigen Version greifen. Die Kosten einer Automation sind relativ, denn diesen stehen den weitaus höheren personellen Kosten gegenüber, die sich einsparen und somit für sinnvoller Tätigkeiten nutzen lassen.