Zum Inhalt springen

Saubere Wäsche mit CI/CD: So bleiben deine Deployments fleckenfrei

22. Oktober 2024 durch
Saubere Wäsche mit CI/CD: So bleiben deine Deployments fleckenfrei
Carsten Depping

Du kennst das Problem: Du hast einen gewaltigen Code fertiggestellt, den du so schnell wie möglich auf deinem Server ausrollen möchtest. Doch irgendwas geht immer schief, und plötzlich siehst du dich mit Ausfällen und unglücklichen Endbenutzern konfrontiert. Zeit für eine saubere Lösung. Zeit für CI/CD.

Continuous Integration und Continuous Deployment, kurz CI/CD, ist wie eine Waschmaschine für deinen Code: Es prüft, ob alles sauber ist, bevor es in die Produktion geht. Und die besten Waschprogramme dafür? Blue-Green und Rolling Deployment.

Lass uns mit Blue-Green starten. Stell dir vor, du hast zwei Produktionsumgebungen, eine blaue und eine grüne. Die blaue ist live, die grüne ist dein Backup. Sobald du dich traust, deine neuen Codeänderungen zu veröffentlichen, deployest du sie auf die grüne Umgebung und schaltest dann einfach um. Die grüne Umgebung wird zur Live-Umgebung und die blaue zum Backup. Keine Ausfallzeiten, keine schmutzigen Überraschungen. Und falls etwas schief geht, switchst du einfach zurück. Einfach, oder?

Jetzt zum Rolling Deployment. Stell dir vor, du hast eine Armee von Servern, bereit, deinen Code auszuführen. Aber anstatt alle auf einmal zu aktualisieren (und zu riskieren, dass sie alle gleichzeitig fallen), aktualisierst du sie nacheinander. Ein Server nach dem anderen. So ist immer mindestens einer am Laufen und deine Nutzer merken nichts von deinem kleinen Update-Abenteuer. Klingt gut, oder?

Aber wie machen wir das jetzt? Mit einer CI/CD-Pipeline, natürlich! Ein Tool wie Jenkins, CircleCI oder Travis CI kann all das für dich erledigen. Du musst nur deine Tests und Deployment-Skripte einrichten, und schon kannst du deinen Code ohne Angst und mit sauberen Händen veröffentlichen.

Ein kleines Beispiel gefällig? Angenommen, du verwendest Jenkins. Du könntest ein 'Jenkinsfile' in deinem Repository erstellen, das deine Pipeline definiert. Es könnte so aussehen:

```

pipeline {

agent any

stages {

stage('Build') {

steps {

// Hier wird dein Code gebaut

}

}

stage('Test') {

steps {

// Hier werden deine Tests ausgeführt

}

}

stage('Deploy') {

steps {

// Hier wird dein Code deployt

}

}

}

}

```

Und voilà! Mit ein bisschen Konfiguration und ein paar Zeilen Code hast du eine CI/CD-Pipeline, die deine Deployments sauber hält.

Fassen wir zusammen: Mit CI/CD, Blue-Green und Rolling Deployments kannst du deinen Code schnell und sicher auf deinen Servern ausrollen. Keine schmutzige Wäsche mehr, nur noch saubere Deployments. Klingt nach einem Plan, oder?

Saubere Wäsche mit CI/CD: So bleiben deine Deployments fleckenfrei
Carsten Depping 22. Oktober 2024
Diesen Beitrag teilen