GitLab in 10 Schritten auf OpenShift 3.11 installieren

OpenShiftCommunityDevOps
labs.png

Erst vor Kurzem hatten wir den Auftrag, bei einem Kunden auf der OpenShift 3.11-Version Applikationen zu installieren, darunter auch GitLab. Dabei haben wir festgestellt, dass es ein paar Fallstricke zu beachten gibt, um die Installation erfolgreich abzuschließen.

Darüber, wie man GitLab auf einem Kubernetes-Cluster installiert, finden sich gute und vollständige Übersichten. Bis dato gab es aber noch keine konkreten Beispiele für unseren speziellen Anwendungsfall, für den wir einige komplexe Aufgabenstellungen gelöst haben.

Deshalb haben wir uns entschlossen, unsere Learnings in einem 10-Punkte-Guide festzuhalten und mit der Nachwelt zu teilen – in der Hoffnung, dass dieses Wissen künftig fleißig genutzt wird! Untenstehend ist eine knappe Übersicht der Schritte zu finden.

Die ausführliche, englischsprachige Anleitung mit detaillierten Anweisungen und Kommandos steht hier auf unserem Open Source-Blog labs.consol.de zur Verfügung.
 

  1. HELM Paketmanager installieren und konfigurieren
    - Beziehe das HELM Release-Archiv aus GitHub: https://github.com/helm/helm/releases/tag/v2.12.3
    - Nutze HELM-Version v2.12.x (also nicht die aktuellste), da diese am kompatibelsten mit OpenShift 3.11 ist
     
  2. Installation vorbereiten
    - Login in das gewünschte OpenShift-Zielcluster
    - Da das HELM-Chart ursprünglich für eine Installation von GitLab auf Kubernetes gedacht ist, müssen zusätzliche Genehmigungen zugeordnet werden.
    - Lege die URL für die GitLab-Instanz fest und besorge bzw. generiere dir das dazu passende SSL-Zertifikat
    - Erstelle zwei OpenShift-Secrets, die für die Installation notwendig sind und eine Datei namens gitlab-values.yml für den Input der HELM-Charts.
     
  3. Versionen überprüfen
    - zu benutzende HELM-Chart-Version festlegen
     
  4. Starte die eigentliche Installation:helm tiller start gitlab
     
  5. GitLab Runner Deployment
    Für ein korrekt laufendes Deployment benötigt der gitlab-runner Pod das Server-Zertifikat, das Du über die Secrets (siehe Punkt 2) vorbereitet hast.
     
  6. Alles auf Running: Die Installation sollte nun laufen!
     
  7. Optional externen SSH-Zugriff ermöglichen
    Bisher kannst Du auf Deine Git Repositories via https-URLs zugreifen. Solltest Du einen SSH-Zugang bevorzugen, ist es notwendig einen weiteren Service vom Typ NodePort zu definieren.
     
  8. s3cmd-Konfiguration auf Task Runner Pod (optional)
    Der Objektspeicher Minio wird neben GitLab automatisch deployed. Hier kann es Probleme hinsichtlich TLS geben, wenn Du über den öffentlichen Zugang darauf zugreifen willst. Du kannst das s3cmd-Dienstprogramm so konfigurieren, dass Minio über einen korrespondierenden Service verfügbar ist.
     
  9. Initialer Login viagitlab.<my-domain&gt; oder eine andere URL aus gitlab-values.yml
     
  10. Via HELM kannst Du Deine GitLab-Version upgraden. Verwende die GitLab version mappings um zu sicherzustellen, dass die Version des HELM Charts mit Deiner GitLab-Version übereinstimmt.

Die detaillierte Installationsanleitung findest Du nur einen Klick entfernt auf unserem Blog ConSol Labs.

 

Zurück