Ansible-Tutorial: Setup von HAProxy und eines HTTPS-Zertifikats von Let’s Encrypt (Live Coding)

Поділитися
Вставка
  • Опубліковано 5 жов 2024
  • Du möchtest lernen, wie man mit Ansible HAProxy installiert? Und wie man ein kostenloses SSL-Zertifikat von Let's Encrypt generiert und installiert? Dann schau dir dieses Ansible-Tutorial an!
    Dies ist der vierte und zugleich letzte Teil meiner Ansible-Tutorial-Serie, in der ich dir per Live-Coding zeige, wie ich den Server, auf dem mein Blog HappyCoders.eu läuft, einrichte.
    In diesem Teil zeige ich dir, wie du - wiederum mit Ansible - HAProxy einrichten kannst - sowie ein kostenloses HTTPS-Zertifikat von Let’s Encrypt / CertBot, um die Webseite über HTTPS erreichbar zu machen. Außerdem zeige ich dir, wie man HAProxy konfiguriert, so dass die Webseite über HTTP/2.0 erreichbar ist.
    Alle Videos des Tutorials:
    Teil 1: • Ansible-Tutorial: Setu...
    Teil 2: • Ansible-Tutorial: Setu...
    Teil 3: • Ansible-Tutorial: Setu...
    Teil 4: • Ansible-Tutorial: Setu...
    Lade die hier kostenlos mein "O-Notation Cheat Sheet"-PDF herunter:
    www.happycoder...
    Artikel in meinem Blog:
    www.happycoder...
    GitLab-Repository:
    gitlab.com/Sve...
    Let's Encrypt:
    letsencrypt.org/
    Certbot:
    certbot.eff.org/
    HAProxy plugin for Let's Encrypt's Certbot:
    github.com/gre...
    (Autor: Sven Woltmann)

КОМЕНТАРІ • 12

  • @dietrichhomrighausen6888
    @dietrichhomrighausen6888 4 роки тому +2

    Vielen Dank für deine DevOps Serie zu Ansible! Ich habe die grundlegenden Konzepte von Ansible nach den vier Videos annähernd verstanden und werde mich demnächst an meine erste eigene Rolle wagen :)

    • @HappyCoders
      @HappyCoders  4 роки тому

      Hallo Dietrich, freut mich, wenn ich behilflich sein konnte :)

  • @karl-thomasschmidt204
    @karl-thomasschmidt204 3 роки тому +1

    Vielen Dank für diese Reihe! Hervorragend!

    • @HappyCoders
      @HappyCoders  3 роки тому

      Und noch einmal vielen Dank für das Lob :-)

  • @mathiaskuehlmann2630
    @mathiaskuehlmann2630 3 роки тому +1

    Very helpful and clearly structured !

  • @aser0815
    @aser0815 Рік тому

    Würde mich freuen wenn du das weiterführen würdest wenn du sonstiges mit Ansible machst oder andere DevOps Themen. TOP! TOP! TOP!

  • @davidpower2359
    @davidpower2359 5 років тому +1

    Super, danke!

  • @cr0ow
    @cr0ow 5 років тому +2

    Zu erst einmal - vielen Dank für die tolle Videoreihe! Die Videos haben mir sehr gut gefallen und ich habe sie schon das zweite Mal durchgearbeitet, um etwas sattelfester mit Ansible zu werden. Programmierung ist meine Welt, aber ich war nie in den Bereichen Server- oder Webhosting unterwegs.
    Es stellen sich für mich noch ein paar (Verständnis-)Frage, die ich einfach mal hier reinwerfen würde:
    - Ich hätte zwei wenig frequentierte Wordpress-Seiten/Domains, die ich gerne auf einem root Server laufen lassen würde.
    - Bin ich bei der Anforderung bei haproxy/certbot, nginx, apache oder ist es ein reines DNS Thema?
    - Könnte ich dein Ansible Tutorial so aufbohren, dass zwei Wordpress-Docker mit unterschiedlichen Ports installiert werden und haproxy/certbot entsprechend der aufgerufenen Domain die Zuweisung durchführt? Falls ja, kannst du mir ein paar Tipps geben, wo ich im Tutorial ansetzen sollte?
    - Oder ist dies der komplett falsche Weg? Hättest du einen Denkanstoß für mich?
    Viele Grüße
    Andre

    • @HappyCoders
      @HappyCoders  5 років тому +2

      Hallo Andre,
      vielen Dank für Deine Nachricht!
      Du bist auf dem richtigen Weg. Du kannst eine zweite docker-compose.yml-Datei in einem anderen Verzeichnis erstellen und mit einem anderen Port für WordPress, z. B. Port 8011.
      Der Port ist das einzige, was Du in der Datei ändern musst, die Servicenamen können gleich bleiben.
      In der haproxy.cfg legst Du dann entsprechend ein zweites Backend an, das auf den lokalen Port 8011 verweist.
      Bei der Frontend-Konfiguration hängt es nun davon ab, ob Dein zweites WordPress auf der gleichen IP-Adresse laufen soll wie das erste oder auf einer anderen.
      Wenn es auf einer anderen IP-Adresse laufen soll, kannst Du das HTTPS-Frontend duplizieren, und musst "bind *:443" ersetzten durch "bind: :443" bzw. "bind: :443". Am HTTP-Frontend brauchst Du nichts zu ändern, wenn dieses wie in meinem Beispiel lediglich auf HTTPS umleitet.
      Wenn Dein Root-Server nur eine IP-Adresse hat (was meistens der Fall ist), musst Du in das Frontend quasi eine "Weiche" einbauen, das geht wie folgt:
      use_backend backend_seite1 if { hdr(host) -i www.domain1.de }
      use_backend backend_seite2 if { hdr(host) -i www.domain2.de }
      Die zusätzliche Domain musst Du dann noch in das run-certbot-Skript einfügen.
      Ich hoffe ich konnte Dir helfen. Wenn noch Fragen offen sind, stelle sie gerne!
      Viele Grüße
      Sven

    • @cr0ow
      @cr0ow 5 років тому

      @@HappyCoders Hallo Sven,
      wow... vielen Dank für die ausführliche Rückmeldung. Dann schein ich, die Zusammenhänge richtig verstanden zu haben. Mit den guten Tipps dürfte ich die Anforderung gelöst kriegen. Werde es heut Abend direkt mal testen.
      Dank dir und noch nen schönen Tag!
      Viele Grüße
      Andre

  • @chrissi1997cs
    @chrissi1997cs 3 роки тому

    Wieso führst du das Certbotskript täglich aus? Monatlich sollte völlig reichen da du wenn das Cert weniger als 1 Monat gültig ist dieses erst erneuern kannst und damit im Schlechtesten Fall am Tag selbst es erneuerst!

    • @HappyCoders
      @HappyCoders  3 роки тому

      Hallo Lotar, Du hast vollkommen recht, täglich ist eigentlich unnötig. Monatlich wäre etwas knapp, falls mal was schief geht. Wöchentlich wäre sicher ein guter Kompromiss.