DevOps mit Vagrant und Chef

DevOps mit Vagrant und Chef

Software ist heutzutage in vielen Bereichen zu finden. Wer am Puls der Zeit bleiben will muss schnell und kontinuierlich neue Features und Bugfixes liefern. Gleichzeitig werden Anwendungen komplexer und erfordern eine Vielzahl an Komponenten (z.b. Apache Webserver, MySQL, Elasticsearch, Mailserver). All das erfordert eine enge Abstimmung von Betrieb und Entwicklung.


Die Entwickler möchten meist neue Funktionen liefern, neue Technologien ausprobieren und die neusten Versionen verwenden. Der Betrieb muss gleichzeitig die Stabilität der Anwendung sicherstellen. Beidem gerecht zu werden gleicht oftmals einem Spagat.


Unter dem Buzzword "DevOps" versteht man Technolgien die diese Zusammenarbeit erleichtern. Vagrant und Chef bieten hierbei die Möglichkeit die Konfiguration mittels Code zu bewerkstelligen und so viele Schritte zu automatisieren.

 

Zu jedem Schritt in diesem Workshop gibt es die lauffähigen Dateien in einem github Repository zum auschecken und starten:

https://github.com/timoschmidt/vagrant-chef-workshop

 

Inhalt

  • Eine erste Box mit Vagrant
    • Schritt 1: Eine einfache Box mit Vagrant
    • Was ist Vagrant?
    • Was ist Chef?
    • Hello Vagrant
    • VagrantBox starten
  • Ein einfaches Kochbuch mit chef
    • Schritt 2: Ein einfaches Kochbuch mit Chef
    • Ein eigenes Kochbuch mit Chef erstellen
    • Chef als Provisioner mit Vagrant benutzen und ein eigenes Kochbuch einbinden
    • Der Aufbau eines chef Kochbuchs
    • Metadaten zum Kochbuch hinzufügen
    • Ein einfaches Rezept
    • Vagrant box starten und das erste eigene Kochbuch ausführen
  • Mit dem Apache2 Kochbuch einen VirtualHost konfigurieren
    • Schritt 3: Mit dem Apache2 Kochbuch einen VHost erstellen
    • Abhängigkeiten in der metadata.rb pflegen
    • Abhängigkeiten mit Berkshelf auflösen
    • Kochbuch zum anlegen eine Apache vHosts implementieren
    • Lokalen Host eintrag anlegen und Dummyseite aufrufen
    • Das Berksfile.lock
  • Vagrant und Chef Performanceoptimierung
    • Schritt 4: DevOps Performanceoptimierung - Vagrant und Chef tunen
    • High Performance DevOps mit Vagrant und Chef
    • NFS für VirtualBox synced Folder aktivieren
    • NFS Caching in der Box verwenden
    • Dynamische Zuweisung von RAM und CPU
    • Vagrant Cachier Plugin verwenden
    • Vagrant & Chef mit und ohne Cache im Vergleich

Navigation