Kombiniere Docker Swarm und Kubernetes

12

Meine Firma versucht, ein wenig Aufholjagd im DevOps-Bereich zu machen. Ich habe viel über die Containerisierung von Anwendungen und die damit verbundenen Orchestrierungssysteme geforscht. Ich stieß auf einen Artikel (von dem ich wünschte, ich hätte ihn gespeichert), in dem es darum ging, Swarm mit Kubernetes zu kombinieren, um eine bessere Funktionalität zu erzielen. In diesem Artikel haben sie nicht definiert, was sie dadurch gewonnen haben.

Ich fragte mich, welche Vorteile dies bieten würde. Wird das Hinzufügen der zusätzlichen Komplexität Ihnen wirklich viel Ertrag bringen?

EDIT: Ich suche technische Pro's / Contra's. KISS ist ein gutes Motto, hält sich aber nicht in einer Debatte mit Ihrem CEO oder Vorstand auf.

Ich bin fast sicher, dass wir Docker für unsere Container und Swarm für eine Orchestrierung auswählen werden. Ich würde Kubernetes jedoch gerne in unserem Raum sehen, damit der Vorschlag, die Technologien für eine robustere Lösung zusammenzuführen, mich fasziniert. Vielen Dank für jede Einsicht.

EvanM
quelle
1
Die operativen Wörter hier sind "intrigiert mich". Sie sind Teil eines Geschäfts. Es sollte einen gültigen Geschäftsgrund dafür geben. Nicht Ihr Interesse, nicht die technische Zauberei, ein solider Geschäftsgrund, diese beiden zu kombinieren. Wenn es für den Anfang keinen solchen Geschäftsgrund gibt, ist es einfach unethisch, ihn zu erfinden. Was Sie vorschlagen, führt zu einer Verschwendung von Geschäftsressourcen aus persönlichen Gründen und ist ethisch gesehen mit einer Unterschlagung vergleichbar.
Jiri Klouda
Ich habe darüber nachgedacht, ob ich darauf antworten soll oder nicht, weil ich ehrlich gesagt das Gefühl habe, dass dieses Gespräch Zeitverschwendung ist. Ja, ich bin Teil des Geschäfts, ja, es fasziniert mich, nein, ich erfinde nichts und die Haltung, die Sie von Anfang an hatten, ist nicht gerechtfertigt. Intrigen sind das, was die Technologie vorantreibt, nach Gründen zu suchen, warum / warum nicht, ist Teil des Jobs und einfach Fragen an diejenigen zu stellen, die vor Ihnen gegangen sind, ist eine bewährte Methode. Diese Frage sollte von Personen beantwortet werden, die tatsächlich auf diesen Plattformen gearbeitet haben und gültige Meinungen zu diesem Thema haben.
EvanM
Ich bin nicht auf der Suche nach einer philosophischen Debatte über Modewörter oder niedliche Akronyme. Ich bin auf der Suche nach technischen Vorteilen oder Nachteilen und wo Lücken bei Bedarf geschlossen werden können. Alles, was veröffentlicht wurde, war eine Meinung ohne sachliche Argumente. Ich würde es begrüßen, wenn Sie erläutern könnten, welche Technologie Sie zur Lösung von Containerisierung und Orchestrierung verwenden und welche Mängel Sie damit festgestellt haben. An diesem Punkt müssen ich und mein Unternehmen entscheiden, welchen Weg wir am besten einschlagen können. Forschung ist keine Unterschlagung oder Diebstahl, sie wird als Zwangsarbeit bezeichnet, und so wird aus guter Technologie großartige Lösung.
EvanM
Vielleicht fragst du dann in einem falschen Forum. DevOps ist eine Disziplin, um Unternehmen durch Kultur, Prozesse und technische Mittel effizienter zu machen. Wir haben eine lebhafte Diskussion über Technologie, aber dies ist aus dieser Perspektive. Wenn Sie eine Antwort aus rein technischer Sicht suchen, gibt es für Kubernetes sicher zahlreiche technische Arbeitsgruppen, die Ihnen eine Antwort geben können, nach der Sie suchen.
Jiri Klouda

Antworten:

9

Update: Docker hat gerade die Unterstützung für Kubernetes als Scheduler veröffentlicht. Dies ändert die Situation und macht Kubernetes zu einem alternativen Scheduler für Docker Swarm.

TL; DR: Tu es nicht. Ingenieure versuchen immer , diese Hundeschweine herzustellen. Jede unnötige Technologie, die Sie mitbringen, bringt eine ganze Reihe von Fehlern mit sich. Wenn Sie einen auswählen können, wählen Sie einen aus und seien Sie froh, dass Sie nicht beides tun müssen. Wenn Sie gerne mit Kubernetes spielen, erstellen Sie einfach ein privates Konto bei Google Cloud und spielen Sie damit, so oft Sie möchten. Lassen Sie jedoch nicht jeden in Ihrem Unternehmen unter unnötigen Komplikationen leiden.

Dies sind zwei parallele und meist äquivalente Technologien . Wenn Ihr Unternehmen zum Beispiel aus Gründen der Zuverlässigkeit einen berechtigten Geschäftsgrund für die Bereitstellung bei mehreren Cloud- Anbietern hatte und sowohl in AWS ECS (Elastic Container Service - basierend auf Docker) als auch in Google GKE (Container Engine - basierend auf Kubernetes) bereitstellen wollte und Sie fragten, wie Wenn Sie eine Pipeline erstellen, in der Ihre Software und Ihr Paket in Containern für die Bereitstellung in beiden Umgebungen erstellt werden, ist dies etwas anderes. Es ist jedoch sehr verantwortungslos, dies nur zu tun, weil Sie mit einer neuen Technologie spielen möchten.

Jiri Klouda
quelle
Ich würde nicht sagen, dass ich mit Kubernetes spielen möchte. Es gibt geschäftliche Gründe, warum ich es Swarm vorziehe. Eine davon ist die Gemeinschaft und Ihre Annahme, dass ich nur etwas tun möchte, ist falsch. Ich bin nicht anderer Meinung als Ihr Hundeschweinchen-Kommentar, der von einem Systemingenieur stammt, den ich so oft gesehen / verhindert oder zumindest ausprobiert habe. Sie haben keinen Hinweis darauf gegeben, dass Sie mit den gewonnenen Erkenntnissen gearbeitet haben, und Sie haben keine technischen Details dazu angegeben, warum. Ich habe nicht das Gefühl, dass dies meine Frage beantwortet.
EvanM
Ich benutze 'spielen mit' anstatt 'arbeiten mit', manchmal im Sinne von Arbeit und Spaß, und manchmal basierend auf dem Favoriten meiner Mutter: "Sie spielen einfach den ganzen Tag mit Computern und erledigen keine wirkliche Arbeit." :)
Jiri Klouda
Gotcha, ich mache das gleiche. Ich wollte nur klarstellen, dass dies nicht der halbe Versuch war, Kubernetes in die Kehlen meiner Firma zu zwingen. Daher die Frage. Es ist ein gutes Gefühl, dass es keinen „guten“ Grund gibt, aber ich konnte diesen Artikel auch nicht einfach ignorieren.
EvanM
1
Schau, wir waren alle da. Das Unternehmen plant, mit der einen Technologie zusammenzuarbeiten, wenn Sie der Meinung sind, dass die andere besser ist und Sie trotzdem irgendwie mit der anderen oder zumindest mit beiden zusammenarbeiten möchten und ihnen auf der ganzen Linie zeigen möchten, dass Ihre Wahl so viel besser war. Es ist ein Klassiker. Egal, was Sie denken, kombinieren Sie die beiden nicht, um es zu tun oder um zu beweisen, dass Sie Recht haben. Selbst wenn Sie es rechtfertigen könnten, besteht Ihre Aufgabe darin, die Lösung so zu gestalten, dass dies vermieden wird. KUSS. Lassen Sie es mit Swarm funktionieren, überzeugen Sie alle, Kubernetes zu verwenden, oder beenden Sie das Programm und arbeiten Sie dort, wo sie Kubernetes verwenden werden.
Jiri Klouda
0

Ein Grund für Kubernetes als Planer, wenn Sie Azure als Cloud-Anbieter einsetzen oder in Betracht ziehen, ist der relativ neue AKS-Dienst (Managed Kubernetes). In diesem Fall würden Sie jedoch Kubernetes nicht mit Docker-Swarm kombinieren.

Dies ist für mich ein klarer Hinweis darauf, wohin die Community geht. Ich würde nicht lernen wollen, was ich später in den Mülleimer werfen müsste.

Der gestiefelte Kater
quelle