18 GitLab Architektur und Komponenten

GitLab ist mehr als nur ein Quellcode-Management-Tool – es stellt eine umfassende DevOps-Plattform dar, die Continuous Integration (CI) und Continuous Delivery (CD) nahtlos in den Entwicklungsprozess integriert. Um die volle Leistungsfähigkeit von GitLab für CI/CD nutzen zu können, ist es wichtig, die zugrunde liegende Architektur und die Hauptkomponenten von GitLab zu verstehen.

18.1 Übersicht über die GitLab Architektur

Die GitLab-Architektur ist so gestaltet, dass sie skalierbar und flexibel ist, um sowohl für kleine als auch große Entwicklungsumgebungen effizient zu arbeiten. Die Architektur besteht aus mehreren Schichten und Komponenten, die in einem verteilten System miteinander interagieren:

18.1.1 Hauptkomponenten von GitLab

  1. GitLab Web Interface (Puma/Rails):
  2. API:
  3. GitLab Workhorse:
  4. Gitaly:
  5. GitLab Shell:
  6. Sidekiq:
  7. PostgreSQL:
  8. Redis:
  9. NGINX:
  10. GitLab Runner:

18.2 Zusammenspiel der Komponenten

Das Zusammenspiel der verschiedenen Komponenten von GitLab ist entscheidend für die reibungslose Durchführung von CI/CD-Prozessen. Jede Komponente hat eine klar definierte Aufgabe:

Diese modulare Architektur ermöglicht es GitLab, eine hochskalierbare Plattform für CI/CD bereitzustellen, die in jeder Entwicklungsumgebung eingesetzt werden kann. In den kommenden Kapiteln werden wir detaillierter auf die spezifischen CI/CD-Funktionen eingehen und zeigen, wie Sie diese Komponenten optimal nutzen können.