‫Also
‫werden wir schnell gehen.
‫Gut.
‫Dann werden wir die Show beenden, weil unsere Stunde vorbei ist.
‫Ich möchte euch ein Feedback geben.
‫Gut.
‫Der erste ist Jacob.
‫Hier gibt es jede Menge Dokumentation. Ich liebe übrigens die Dokumentation von Dockerfiles.
‫Es ist völlig in Ordnung, so viel hinzuzufügen, wie Sie möchten.
‫Dies ist eigentlich eine YAML-Datei, also sprechen wir jetzt über Compose. Dokumentation in Dockerfiles oder
‫Compose-Dateien. In jedem Fall.
‫Immer eine gute Sache.
‫Gut.
‫Er verwendet also eine Version 3. 0 7, was bedeutet, dass es wahrscheinlich für
‫Swarm oder etwas in der Produktion wie Kubernetes ist, das den Compose on Kubernetes-Funktionssatz verwendet.
‫Er verwendet die offiziellen Elastic-Images von Elastic dort.
‫Mal sehen, Sie haben Ihren Gesundheitscheck.
‫Fantastisch.
‫Sie haben Gesundheitschecks. Das ist großartig. Sie haben Konfigurationen.
‫Das ist großartig.
‫Sie stellen es auf ein bestimmtes Netzwerk ein und Sie verwenden den
‫Host-Modus für den Port, sodass Sie diesem direkten Zugriff auf die NIC gewähren, anstatt über die Overlay-Netzwerke und das Routing-Mesh zu
‫gehen.
‫Das ist gut.
‫Dann lass uns sehen.
‫Wir müssen hier unten aufstellen.
‫Oh, und Sie tun DNS-Round-Robin im Endpunktmodus.
‫Hut ab.
‫Dies ist etwas, das viele Leute nicht erkennen.
‫Immer wenn Sie etwas in Swarm ausführen und die virtuelle IP vor jedem Overlay-Dienst deaktivieren möchten, möchten Sie dies für Datenbanken tun,
‫in denen Sie nur einen Knoten haben, richtig, was oft der Fall ist, selbst wenn Sie Wenn Sie eine
‫Spiegelung einer Datenbank erstellen, führen Sie normalerweise jede dieser Datenbanken in ihrem
‫eigenen Dienst aus.
‫Es gibt also eine Instanz in einem Dienst und dieser Aufgabe dieser Instanz eines Containers. Normalerweise möchten Sie diese virtuelle IP nicht davor haben,
‫da sie jetzt ein zusätzlicher Hop ist. Es ist eine andere NAT-Übersetzung.
‫Es sind mehr potenzielle Probleme.
‫Wenn Sie hier den Endpunktmodus auf DNS-Roundrobin einstellen, wird die VIP effektiv deaktiviert und hat direkten Zugriff
‫auf diesen Container.
‫Hut ab.
‫Ich sehe das nicht sehr oft, weil die Leute das nicht fangen. Sie verwenden auch Replikate.
‫Ressourcenbeschränkungen von 4G für einen großartigen Gig.
‫Immer Ich empfehle, nach Möglichkeit immer Ressourcenlimits und Reservierungen festzulegen, da dies dazu beiträgt,
‫dass die Dinge innerhalb Ihres Clusters besser zurechtkommen.
‫Ja.
‫Scheint auf Docker Swarm zu laufen. Süss.
‫Koordination Meister.
‫Gut.
‫Mehr vom Gleichen.
‫Gutes Zeug. Gutes Zeug.
‫Sie sind gebunden, ein Volume zu mounten. Sie sind nicht bindend Montage. Sie verwenden ein benanntes Volume.
‫Sie haben hier Platzierungsbeschränkungen, also platzieren Sie dies auf einem Knoten, der auf einen
‫bestimmten Namen hartcodiert ist. Sie wissen, dass dieser nur auf diesem Knoten ausgeführt werden soll.
‫Die Schwäche hier ist natürlich, dass wenn dieser Knoten ausfällt, er nirgendwo anders platziert werden kann.
‫Hoffentlich haben Sie das berücksichtigt.
‫Gut.
‫Master2, so machst du das.
‫Es sieht so aus, als ob Sie master1, master2 als separate Dienste und master3 fest einprogrammiert haben. Viele Leute müssen es so machen, dass
‫es bei einem Datenbankcluster mit mehreren Knoten normalerweise einfacher ist, jeden einzelnen
‫als eigenen Dienst bereitzustellen.
‫Das hast du also getan. Es wäre schön, wenn wir nur einen Service mit drei Replikaten machen könnten.
‫Sie können dies anhand einiger Beispiele anhand des Autopilot-Musters feststellen. Wenn Sie nach Autopilot-Muster IO suchen oder einfach Ihre
‫Datenbanktechnologie mit dem Wort Autopilot googeln, finden Sie manchmal Konfigurationen und Automatisierungsskripte, die Ihnen
‫dabei helfen, alles in einem Dienst zu erledigen.
‫Es gibt Vor- und Nachteile für jeden.
‫Ich persönlich neige dazu, es einfach so zu machen, wie Sie es tun.
‫Ich habe das Gefühl, dass es einfacher ist, obwohl es mehr YAML ist und etwas ausführlicher ist.
‫Eine Sache könntest du hier tun.
‫Eine große Verbesserung ist, wenn dies hier alle die gleichen Teile sind.
‫Richtig.
‫Das gleiche Zeug, Sie können das als Vorlage verwenden, diese Datei erheblich verkürzen, indem Sie sie nur in einen Vorlagenblock
‫einfügen.
‫Darüber spreche ich hier mehr...
‫Das hier, Jacob. Ich stelle das in den Chat.
‫Dies sind drei verschiedene erweiterte Docker Compose-Funktionen, die viele Leute nicht verwenden.
‫Einer von ihnen beschäftigt sich mit Vorlagen.
‫Wenn Sie also das Beispiel hier sehen, können Sie das Templating genau dort werfen.
‫Im Grunde sagen Sie, dass dies das ist, was ich
‫in der Vorlage möchte, und hier möchte ich, dass Sie es immer wieder in jedes Bild oder besser in jeden Dienst einfügen.
‫Also, eine Menge von diesem Boilerplate-Zeug, wie Sie könnten das Ganze als Vorlage verwenden oder Sie könnten
‫nur Teile davon als Vorlage verwenden und mehrere Vorlagen haben, und Docker hat eine Dokumentation dazu.
‫Das würde dazu beitragen, Ihre Datei kleiner zu machen, und wir nennen es trocken.
‫Richtig.
‫Dinge einmal tun. Wiederholen Sie sich nicht.
‫D R
‫Y Das könntest du tun.
‫Das würde Ihnen helfen, viele dieser sich wiederholenden Dinge zu erleichtern, insbesondere
‫im Zusammenhang mit den Gesundheitschecks und dem Bereitstellungskram.
‫Dann haben Sie Ihre Datenknoten. Da sieht alles gut aus. Sie verwenden Ihre Gesundheitschecks. Sie
‫haben Ihr Netzwerk eingerichtet. Ihre Bände. Lassen Sie mich einiges davon hinter sich lassen. Sie codieren hart für jeden
‫Knoten. Ich wünschte wirklich, wir hätten
‫eine Möglichkeit zu sagen, dass es nicht läuft... wie hier ist eine Platzierungsbeschränkung.
‫Führen Sie es nicht auf
‫einem aus, auf dem die anderen laufen.
‫Es gibt etwas Hoffnung für dich. Es gibt zwei Dinge, die Sie hier tun können. Sie können sich die Platzierungspräferenzen ansehen.
‫Wenn Sie Ihre verschiedenen Knoten in Verfügbarkeitszonen haben und Ihre Datenbank
‫einfach sicherstellen soll, dass in jeder Verfügbarkeitszone eine Kopie vorhanden ist, z. B. eine AWS
‫oder ähnliches, können Sie jedem Knoten Labels hinzufügen. Dann gehen Sie einfach hier rein und sagen, ich würde es vorziehen, wenn Sie diese auf meinem Label verteilen.
‫Sie geben ihm einfach ein Label und eine Platzierungspräferenz anstelle einer Einschränkung, damit diese
‫auf den verschiedenen Servern in den verschiedenen Zonen platziert werden können.
‫Aber das Coole hier ist, wenn eine Zone oder ein Server ausfällt, kann er dies immer
‫noch woanders zuweisen.
‫Der schlimmste Fall hier ist, dass zwei davon auf demselben Server laufen, aber das ist wahrscheinlich nicht so
‫schlimm, wenn Sie in der Lage sind ... Ich meine, eine Sache könnten die Daten sein, die die Daten von
‫einer Zone über die andere bekommen. Sobald Sie einige dieser Probleme gelöst haben.
‫Ja.
‫Ja. Sie sagen, ich kann Einschränkungen verwenden und darf einen der physischen Knoten verlieren.
‫Ja.
‫Die Sache hier ist, dass Sie es etwas brüchiger machen, indem Sie
‫es Node-Hostnamen zuweisen. Sie müssen diese spezifischen Hosts aufstellen. Im Idealfall, wenn Sie sich in
‫AWS oder etwas befinden, in dem Sie Ihre Server automatisch erstellen lassen können.
‫Wenn also ein Server stirbt, erstellt alles einen neuen.
‫Ja.
‫Wenn Sie das alles berücksichtigt haben, großartig. Es ist nichts falsch an Platzierungsbeschränkungen auf diese Weise.
‫Es bedeutet nur, dass diese Knoten vorhanden sein müssen oder diese Container sterben.
‫Die andere Sache ist, dass es in 19 eine neue Funktion gibt. 03 und Sie lernen diese neuen
‫Funktionen kennen, wenn Sie zu Docker auf github und zu Docker-ce-Releases gehen. Ich werde dies im Chat posten und Sie können nach
‫neuen Schwarmfunktionen suchen. Es gibt eine neue Swarm-Funktionsversion, die es Ihnen
‫ermöglicht, Replikate auszuführen, aber nie mehr als X dieser Replikate auf demselben Knoten ausführen zu lassen. Super coole Funktion und hilft den Leuten sicherzustellen, dass ihren Datenbanken
‫nicht alle der gleiche Knoten zugewiesen wird. Vielleicht möchten Sie dies als flexiblere
‫Möglichkeit überprüfen, um sicherzustellen, dass sie nicht auf dem gleichen Stand sind.
‫Ich denke, wenn ich runter zu Swarm scrolle.
‫Ja. Unterstützung für maximale Replikate pro Knoten hinzugefügt. Das ist ein neues Feature im kommenden 19. 03-Release, die sich bereits
‫in der Vorabversion befindet, also sollten wir dies in den nächsten Wochen oder Monaten sehen.
‫Sie können das überprüfen.
‫Das könnte dir bei den Einschränkungen helfen.
‫Gut.
‫Ich möchte ein bisschen vorankommen.
‫Tut mir leid, dass ich das alles nicht überprüfen kann. Ich verschiebe es nach unten.
‫Sie haben Ihre Netzwerke, angehängte True und Proxy.
‫Da sieht alles gut aus.
‫Sie haben Volume, also verwenden Sie den Standard-Volume-Treiber, sodass alle diese Daten auf dem Knoten hängen bleiben,
‫auf dem sie sich befinden.
‫Wenn Sie über einen freigegebenen Speicher verfügen, können Sie REX-Ray oder einen anderen Volume-Treiber in Betracht ziehen, damit Sie diesen
‫Speicher von dieser Festplatte entfernen können. Auf diese Weise wird, wenn einer der Knoten ausfällt
‫und er diesen an anderer Stelle erstellen möchte, dieses Datenbankvolume wieder an den
‫anderen Knoten angehängt.
‫Gut.
‫Das haben Sie sich vielleicht schon angesehen. Sie haben traefik-Zertifikate. Ich könnte noch eine Weile darüber reden,
‫aber die Zeit wird uns davonlaufen. Ich lasse das Zeug zum Verkehrszeugnis
‫für einen anderen Tag. Dann hast du configs und andere Dateien.
‫Das ist toll. Benutze alle configs.
‫Wie Sie sollten.
‫Ich sehe hier keine Geheimnisse. Ich gehe davon aus, dass Sie irgendwann
‫Secrets benötigen und diese möglicherweise irgendwo in Secret speichern müssen. Ansonsten tolles YAML. Definitiv einer der besseren die ich gesehen
‫habe.
‫Ich denke, hier ist sehr wenig zu tun.
‫Ich denke, in Bezug auf die Verwendung all der perfekten Funktionen. Die Vorlage ist eine Sache. Unter Berücksichtigung unterschiedlicher Lautstärketreiber
‫und unter Berücksichtigung des neuen Features. Wenn
‫nicht die Platzierungseinstellungen, die neue Funktion für die maximale Anzahl von Replikaten pro Knoten.
‫Danke fürs zuschauen.
‫Sie können auf ABONNIEREN UND auf die Benachrichtigungsglocke klicken, um eine Benachrichtigung zu erhalten, wenn ich live gehe, damit Sie beitreten
‫und Ihre Devops- und Docker-Fragen stellen können.
‫Du kannst dir dort einige meiner anderen Videos ansehen und du kannst tun, was ich gleich tun werde, und einfach ein
‫Nickerchen machen.