GitLab Runner: Anforderungen dokumentieren und zwei weitere Runner
User Story
Als Betreiber von Services muss ich wissen, welche fachlichen Anforderungen zu beachten sind. Ändern sich die Anforderungen, müssen die dokumentierten Anforderungen aktualisiert werden.
Als Entwickler möchte ich, dass meine CI-Jobs zeitnah abgearbeitet werden.
Why
Links, Notes, Remarks
Wir haben zwei GitLab Runner. Einen "privileged" und einen normalen. Der privileged Runner darf nur Jobs ausführen, die das benötigen. Da gehört Renovate dazu. Früher war das auch mehr oder weniger das einzige, was der Runner gemacht hat. Inzwischen laufen auf dem privileged Runner auch zwei Jobs des Zustelldienstes.
Der normale Runner kann 8 Jobs parallel ausführen, der privileged jedoch nur einen. Das führt teilweise zu Wartezeiten von einer halben Stunden, wenn mehrere Zustelldienst-Pipelines gestartet werden. Somit wird die Änderung der Renovate-Schedule die Jobs nicht wirklich beschleunigen. Ich denke, wir sind an dem Punkt, wo wir den Bedarf haben, mehrere privileged Jobs parallel auszuführen.
Ich glaube, dass wir aus Sicherheitsgründen den concurrent Wert nicht erhöhen dürfen. Das liegt daran, dass die privilegierte Ausführung die Schutzmechanismen zwischen den Jobs aushebelt. Das müsste aber noch mal erhärtet und dokumentiert werden.
Wenn dem so ist, brauchen wir mehrere kleine VMs statt einer großen für privilegierte Jobs.
Links
Acceptance criteria
-
Die Anforderungen, wie viele privilegierte und normale Jobs gleichzeitig ausgeführt werden müssen sind dokumentiert -
Es ist geklärt und dokumentiert, ob ein privilegierter Runner mehrere Jobs parallel ( concurrentmit Wert >1) ausführen darf. -
Die Anforderungen (AK 1) wurden unter Berücksichtigung der Sicherheitsanforderungen (AK 2) umgesetzt
Implementation plan (to be completed by the developer)
-
... -
... -
... -
Definition of Done was checked.