Die Nordlicht Reisen GmbH baut das Buchungsportal bisher auf den Rechnern, die GitHub und Microsoft bereitstellen. Jetzt kommen drei Anforderungen zusammen: Ein Testlauf braucht deutlich mehr Arbeitsspeicher als diese Rechner haben, die Auslieferung muss eine Datenbank im Firmennetz erreichen, die von außen nicht sichtbar ist, und morgens um neun starten viele Läufe gleichzeitig. Sie sollen die Infrastruktur entwerfen, auf der die Läufe stattfinden. Das ist die Fähigkeit dieser Lektion: eine Infrastruktur für GitHub-Runner oder Azure-DevOps-Agents entwerfen, mit Blick auf Kosten, Werkzeuge, Lizenzen, Anbindung und Wartbarkeit.

Vorwissen: K3, Lektion 3.7.1, nennt Runner von GitHub und selbst gehostete Runner, K3, Lektion 3.7.2, den Abschnitt „Eigene Agents“ mit Agent-Pools und den Managed DevOps Pools, und K3, Lektion 3.7.7, warum fremder Code aus Pull Requests nicht auf Ihrem eigenen Rechner laufen soll. Hier lernen Sie die Auswahl zwischen allen Arten und die Namen und Optionen, die die Prüfung erwartet.

Nicht gegen Azure oder GitHub ausgeführt; aus der Referenz von Microsoft und GitHub: Alle Befehle und YAML-Dateien dieser Lektion stammen aus der Dokumentation, sie sind in diesem Kurs nicht ausgeführt worden. Die Seiten ändern sich: Prüfen Sie Image-Namen, Größen und Abrechnungsregeln vor jeder Entscheidung auf der aktuellen Seite.

Die Landkarte: Wer führt den Job aus?

Ein Agent (Azure Pipelines) oder Runner (GitHub Actions) ist der Rechner mit der Software, die einen Job abholt und ausführt, jeweils einen Job zur selben Zeit. Die Frage ist nur, wem der Rechner gehört und wer ihn pflegt.

Frage Azure DevOps GitHub
Von der Plattform bereitgestellt, jeder Job auf frischem Rechner Microsoft-hosted agents (Pool „Azure Pipelines“) GitHub-hosted runners
Von der Plattform bereitgestellt, größer, nach Minuten abgerechnet GitHub-hosted agents (pay-as-you-go), Pool „GitHub-hosted Agents“ larger runners
Eigene Rechner, von Hand gepflegt Self-hosted agents Self-hosted runners
Eigene Rechner, die mit der Last wachsen und schrumpfen Virtual Machine Scale Set agents, Managed DevOps Pools Actions Runner Controller (ARC) auf Kubernetes

Beachten Sie die Namen: In Azure DevOps heißen die von GitHub betriebenen größeren Rechner „GitHub-hosted agents“, bei GitHub selbst „larger runners“. Das Microsoft-Dokument sagt dazu, dass die GitHub-hosted agents auf derselben Infrastruktur laufen wie die larger runners von GitHub Actions.