GNU/Linux >> LINUX-Kenntnisse >  >> Linux

5 Tipps für die Entscheidung, welche Linux-Aufgaben und Workloads automatisiert werden sollen

Wenn Sie seit einigen Jahren Ihre internen Prozesse automatisieren, CI/CD-Pipelines erstellen und Ansible-Code schreiben, kann es schwierig sein, sich an eine Zeit zu erinnern, bevor die Automatisierung Ihren täglichen Arbeitsablauf übernommen hat. Die Entscheidung, was automatisiert werden soll, kann für einen Anfänger entmutigend sein:Es gibt Programmiersprachen zu lernen, Tools, mit denen Sie sich vertraut machen müssen, und Begriffe wie „Idempotenz“, die Sie Ihrem Vokabular hinzufügen müssen. Wie können Sie entscheiden, wo Sie überhaupt mit der Automatisierung beginnen? In diesem Artikel führe ich Sie durch fünf Tipps, die meine Entscheidungen beim Erstellen neuer Automatisierungen geleitet haben.

[Das könnte Ihnen auch gefallen: 3 Schritte zur Identifizierung von Kandidaten für die Linux-Systemautomatisierung]

1. Führen Sie ein Arbeitsprotokoll

Es mag offensichtlich erscheinen, aber die größten Automatisierungsgewinne werden oft in der Erstellung von Tools erzielt, die allgemeine, sich wiederholende Aufgaben bewältigen. Während Sie wahrscheinlich eine allgemeine Vorstellung davon haben, was diese Aufgaben sind, ist es eine gute Möglichkeit, sie einzugrenzen, indem Sie ein tägliches Arbeitsprotokoll führen. Ich persönlich führe ein tägliches Notizbuch und eine Timebox für meinen Tag. Unsere anderen Sudoer haben ihre Zeitmanagement-Tipps geteilt, und vielleicht finden Sie Wege, die für Sie besser funktionieren. Sogar das Führen einer einfachen Textdatei mit einer Liste der Errungenschaften von jedem Tag ist eine schnelle und einfache Möglichkeit, Ihre Arbeit zu verfolgen.

Die Schlüsselidee dabei ist, dass Sie Ihr Arbeitsprotokoll verwenden können, um Muster zu identifizieren. Ich kann in meinem Notizbuch nachsehen, um Bereiche zu identifizieren, in denen ich unverhältnismäßig viel Zeit verbringe. Ich kann diese Aufgaben bewerten, um zu sehen, ob sie gute Kandidaten für die Automatisierung sind. Ich kann meine Anwesenheit in einem Meeting zur Sammlung von Anforderungen nicht automatisieren, aber ich sehe, dass diese Meetings oft zum Aufbau einer virtuellen Umgebung mit einer Standardkonfiguration führen. Das ist ein perfekter Kandidat für die Automatisierung:Mit ein paar einfachen Ansible-Playbooks kann ich die VM-Bereitstellung und -Konfiguration automatisieren.

2. Durchforsten Sie Ihr Ticketing-System

Wenn Sie Mitglied einer größeren Organisation sind, besteht eine gute Chance, dass Sie ein formelles Ticketsystem verwenden, um Ihre Arbeit zu verfolgen. Während viele Techniker so wenig Zeit wie möglich damit verbringen möchten, auf Tickets zu starren (und mehr Zeit auf ein Terminal zu starren), ist es ein großer Fehler, Ihr Ticketsystem nicht als reichhaltiges Datenrepository zu nutzen. Die regelmäßige Überprüfung von Tickets kann leicht Arbeitsmuster aufdecken, die viel Zeit in Anspruch nehmen und als automatisierte Tools besser geeignet sind. Beispielsweise finden Sie möglicherweise ein allgemeines Muster in Change Management-Tickets, um Load Balancer-Konfigurationen manuell anzupassen. Dies ist eine großartige Gelegenheit, ein automatisiertes Tool in Ihrer bevorzugten Sprache zu schreiben, um diese sich wiederholende und fehleranfällige Aufgabe zu bewältigen.

Der Gedanke, Hunderte oder sogar Tausende von Tickets zu durchsuchen, kann sehr entmutigend sein. Mein Rat ist, klein anzufangen. Ich hatte großen Erfolg, indem ich mich einfach alle zwei Wochen mit meinem Team traf, um die von uns geleistete Arbeit zu überprüfen. Diese kurzen Besprechungen haben oft dazu geführt, dass mehrere Teammitglieder erklärt haben, dass sie an sehr ähnlichen Aufgaben gearbeitet haben. Wir können dann diese sich wiederholenden Aktivitäten nehmen und automatisierte Tools erstellen, um sie zu handhaben.

3. Identifizieren Sie gute manuelle Prozesse

Einer meiner Manager war in Bezug auf Automatisierung fest davon überzeugt:Jede gute Automatisierung basiert auf einem klar definierten manuellen Prozess. Ich stimme ihm aus zwei Gründen vollkommen zu:Erstens legt ein guter manueller Prozess genau fest, was Sie tun müssen, wenn Sie eine Automatisierung schreiben. Zweitens definiert ein gut definierter Prozess Ihre Erfolgskriterien klar.

Eines meiner ersten groß angelegten Automatisierungsprojekte bei einem früheren Arbeitgeber bestand darin, ein Python-Tool zu schreiben, um alle Schritte zu automatisieren, die mit der Umbenennung eines Hosts in unseren vielen Systemen verbunden sind. Nachdem ich unsere Dokumentation gelesen hatte, beschloss ich, daran zu arbeiten, die jeden für diesen Prozess erforderlichen Schritt darlegte. Unser manueller Prozess war stark und ich musste dies einfach in Code übersetzen. Wenn Sie darüber nachdenken, etwas in Ihrer Umgebung zu automatisieren, nehmen Sie sich unbedingt die Zeit, zuerst einen manuellen Prozess zu entwickeln und zu testen.

4. Sprechen Sie mit Ihren Kunden

Letztendlich besteht Ihr Ziel als Systemadministrator darin, das Unternehmen zu unterstützen. Der Aufbau robuster automatisierter Tools hilft Ihnen letztendlich dabei, die Anforderungen Ihrer internen oder externen Kunden besser zu erfüllen. Es ist normalerweise einfacher, die Aufgaben zu identifizieren, die Sie als Systemadministratoren automatisieren möchten, aber was ist mit der Identifizierung von Prozessverbesserungen für Ihre Kunden?

Wie jede Anforderungserfassungsaufgabe beginnt dies mit einer starken Kommunikation. Sie sollten regelmäßig mit Ihren Stakeholdern sprechen. Wenn Sie interne Entwicklungsteams unterstützen, stellen Sie sicher, dass Sie sich regelmäßig mit Entwicklern auf allen Ebenen treffen, um über ihre Bedürfnisse auf dem Laufenden zu bleiben. Möglicherweise erfahren Sie, dass Entwicklerteams mit der Build-Zeit für neue virtuelle Maschinen frustriert sind, was sie daran hindert, neue Produkte rechtzeitig zu testen. Wenn Sie im Endbenutzer-Support arbeiten, werden Sie möglicherweise feststellen, dass Benutzer es hassen, Tickets für das Zurücksetzen von Kennwörtern zu öffnen, weil es peinlich und langsam ist. Diese Aufgaben sind Kandidaten für die Automatisierung.

5. Bleiben Sie mit der Branche auf dem Laufenden

Einer meiner Lieblingsaspekte bei der Arbeit in der Technik ist, dass ich ständig von Leuten umgeben bin, die klüger sind als ich. Ich verbringe häufig Zeit damit, mit meinen Kollegen in verschiedenen Unternehmen und in verschiedenen IT-Bereichen über Technik zu sprechen. Diese Gespräche führen oft zu neuen Ideen, die ich in meinem Umfeld umsetzen kann.

Aus demselben Grund lese ich gerne Branchenblogs, Subreddits und Mailinglisten. Ich lese oft über eine Aufgabe, die jemand anderes automatisiert hat, und ich füge diese Informationen meiner mentalen Automatisierungs-Toolbox hinzu. Zum Beispiel hat einer meiner Kollegen von Enable Sysadmin kürzlich darüber geschrieben, wie man den E-Mail-Versand mit Ansible und Gmail automatisiert. Ich verwende beide Tools täglich, daher ist dies ein großartiges Automatisierungsthema, das ich im Auge behalten sollte, wenn ich es brauche. Sie werden überrascht sein, wie viele gute Ideen ich hatte, weil ich einfach die Arbeit anderer gelesen habe.

[ Suchen Sie nach mehr Informationen zur Systemautomatisierung? Beginnen Sie mit The Automated Enterprise, einem kostenlosen Buch von Red Hat. ] 

Abschluss

Mit einer endlosen Reihe von Tools und Themen, die es zu studieren gilt, kann der Beginn Ihrer Automatisierungsreise entmutigend erscheinen. Automatisierung ist, wie jede Technologie, einfach ein Werkzeug. Wenn Sie Ihre Probleme verstehen, können Sie das richtige Werkzeug für den Job auswählen. In diesem Artikel haben Sie sich fünf verschiedene Möglichkeiten angesehen, um die Probleme zu identifizieren, die Kandidaten für die Automatisierung sind. Ich wünsche Ihnen viel Glück auf Ihrer Reise in die spannende Welt der Automatisierung.


Linux
  1. Open-Source-Tools und Tipps zur Verbesserung der Leistung Ihres Linux-PCs

  2. Entmystifizierung von Ansible für Linux-Systemadministratoren

  3. Top einzeilige Linux-Befehle, Anpassen von VM-Images und weitere Tipps für Systemadministratoren

  4. Schreiben von Python-Anwendungen, Erstellen von Linux-Labs und weitere Tipps für Systemadministratoren

  5. Linux vs. Windows:Welches Betriebssystem ist besser für PC-Spiele?

Linux which und whoami Command Tutorial für Anfänger (mit Beispielen)

Was ist Crontab und wie werden Aufgaben in Linux mit Crontab automatisiert?

8 Tipps für eine zuverlässige Linux-Systemautomatisierung

3 Tipps zur Verbesserung der Linux-Prozessleistung mit Priorität und Affinität

Wichtige Linux-Befehle, Podman unter Windows ausführen und weitere Tipps für Systemadministratoren

Linux VI Editor Shortcuts, Tipps und Produktivitäts-Hacks für Anfänger