Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOps-Meetup XXL zur Wuerzburg Web Week

Andri Steiner
March 06, 2018
120

DevOps-Meetup XXL zur Wuerzburg Web Week

CI/CD mit Gitlab und Kubernetes: Von der Idee bis zur Produktion

Andri Steiner

March 06, 2018
Tweet

Transcript

  1. DEVOPS-MEETUP DEVOPS-MEETUP CI/CD MIT GITLAB UND KUBERNETES: CI/CD MIT GITLAB

    UND KUBERNETES: VON DER IDEE BIS ZUR PRODUKTION VON DER IDEE BIS ZUR PRODUKTION
  2. HALLO HALLO Andri Steiner CEO @ snowflake Ops AG Whitelabel

    Hosting / Opensource SaaS Lösungen Betrieb von ~1500 Applikationen für ~30 Kunden Automatisierungsfanatiker Scripts / Puppet / Netzwerk / Kubernetes TYPO3 CMS Server Team Betrieb Infrastruktur TYPO3.org
  3. GITLAB GITLAB Open Source Projekt 2011: Von einer Person gestartet,

    Git Server 2018: Firma mit 250 Mitarbeitern "single application for the whole so ware development and operations lifecycle" Remote Only Organisation, sehr hohe Transparenz
  4. KUBERNETES: BETRIEB KUBERNETES: BETRIEB Hosted: GKE, Amazon EKS, Azure, usw.

    On Premise: Puppet / Nutanix Calm Lokal: Minikube / Minishi
  5. KUBERNETES: DESIGN KUBERNETES: DESIGN Plattform um Plattformen zu betreiben Verwaltung

    für den Betrieb von Docker Containern nicht als direkte Schnittstelle zum Benutzer konzipiert Aufsätze: OpenShi , Rancher, Gitlab, usw.
  6. GITLAB + KUBERNETES GITLAB + KUBERNETES simple aber effektive Anbindung

    CI Jobs erstellen/löschen Kubernetes Container visuelle Integration (Environment Links, Monitoring)
  7. GITLAB + KUBERNETES: GITLAB + KUBERNETES: FUNKTIONEN FUNKTIONEN eigene Umgebung

    pro Feature Branch Canary Deployments Ablauf Applikationsimage(s) erstellen, Tests gegen generierte Container, Publikation, im Cluster ausrollen
  8. DEMOPROJEKT DEMOPROJEKT simple Webseite, keine Tests $ ls Dockerfile .gitlab-ci.yml

    index.html $ cat Dockerfile FROM nginx:alpine COPY index.html /usr/share/nginx/html reales Beispiel Node Frontend, TYPO3 (PHP) Backend, Node Backend, Elasticsearch, MariaDB beliebige Komplexität mit beliebigen Technologien
  9. CREATE: COMMIT & MERGE REQUEST CREATE: COMMIT & MERGE REQUEST

    neuer Feature Branch neues Environment für diesen Branch erstellt
  10. DEPLOYMENT PRODUKTION DEPLOYMENT PRODUKTION der einfachheit halber direkt auf Produktion

    normalerweise Staging Umgebung dazwischen oder manuelles Deployment oder Deployment über / Kommandos aus Chat
  11. AKTUELLER STAND AKTUELLER STAND produktive Container seit Januar 2016 Webprojekte:

    Container Pipeline bis und mit review, produktion (noch) herkömmlich Externe Webprojekte: Container Pipeline bei uns, Rollout fertiger Container zum Kunden
  12. VORSCHAU VORSCHAU Ops Server v6 als Container laufende Umstellung bei

    grossen Projekten Migration der kompletten TYPO3 Server Infrastruktur geplant Sinn bei 0815 Webprojekten?
  13. FAZIT FAZIT super flexibel Gitlab bietet die perfekte Kubernetes Integration

    für etwicklungslastige Projekte Vorteile/Coolness vs. Komplexität/Kosten im Auge behalten