Was macht der Apache Sofort konkret tun?
Ich versuche zu wickeln meinem Kopf herum Apache Sofort und Klärungsbedarf in einigen Punkten.
Meine Verständnis der Sofort ist, dass es eine ausführbare Datei, die installiert wird auf jede körperliche/VM-server ("Knoten") in einem cluster, und dann bietet ein Java-API (irgendwie), die behandelt jeden einzelnen Knoten als einen kollektiven pool von computing-Ressourcen (CPU/RAM/usw.). Damit Programme Programmieren mit der Java API, Sie sehen nur 1 einzigen Satz von Ressourcen, und nicht darum sorgen müssen, wie/wo der code bereitgestellt wird.
Also zum einen, ich könnte grundlegend falsch in meinem Verständnis hier (in dem Fall bitte korrigieren Sie mich!). Aber wenn ich bin am Ziel, wie funktioniert dann das Java-API (über Sofort) erlauben es, Java-clients anzapfen dieser Ressourcen?!? Kann jemand ein konkretes Beispiel Sofort in Aktion?
Update
Werfen Sie einen Blick auf meine schrecklichen Zeichnung unten. Wenn ich verstehe, die Sofort-Architektur richtig, wir haben einen cluster aus 3 physikalischen Servern (phys01
, phys02
und phys03
). Jede dieser Gesundheitscheck läuft eine Ubuntu-host (oder was auch immer). Durch einen hypervisor, der, sagen wir, Xen, können wir 1+ VMs.
Ich bin daran interessiert, Docker & CoreOS, also werde ich diese in dieses Beispiel, aber ich vermute, das gleiche könnte auch für andere nicht-container-setups.
Also auf jeder VM haben wir CoreOS. Läuft auf jedem CoreOS Beispiel ist eine Sofort ausführbare Datei/server. Alle Sofort Knoten in einem cluster finden Sie alles, was unter Ihnen als einziger pool von Ressourcen und Artefakte werden willkürlich eingesetzt, um die Sofort-cluster und Sofort herausfinden, welche CoreOS Instanz tatsächlich bereitstellen.
Läuft auf der Oberseite des Sofort ist ein "Sofort-framework", wie Marathon oder Kubernetes. Inside Kubernetes sind verschiedene Docker-Containern (C1
- C4
).
Ist dieses Verständnis von Sofort mehr oder weniger korrekt?
- Ich denke Sofort Knoten sehen nicht alles unter, wie ein einziger pool von Ressourcen, sondern die Ebene darüber, das ist der Rahmen. Bin ich richtig?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre Zusammenfassung ist fast richtig, aber es ist nicht unbedingt die Essenz dessen, was sofort darstellt. Die vision der mesosphäre, die Firma hinter dem Projekt, ist die Erstellung einer "Datacenter Operating System", und sofort ist der kernel, der es in Analogie zu den kernel von einem normalen OS.
Die API beschränkt sich nicht auf Java, C, C++, Java/Scala oder Python.
Wenn Sie haben set-up Ihre sofort-cluster, wie Sie in Ihrer Frage beschreiben und nutzen wollen, Ihre Ressourcen, die Sie in der Regel tun dies durch eine Rahmen stattdessen laufen Sie Ihr Arbeitspensum direkt auf Sie. Dies bedeutet nicht, dass diese kompliziert ist hier ist ein sehr kleines Beispiel in Scala, die veranschaulicht dies. Frameworks existieren mehrere populäre distributed data processing Systeme wie Apache Spark, Apache Cassandra. Es gibt auch andere frameworks, wie Chronos einen cron auf Ebene des Rechenzentrums oder Marathon ermöglicht es Ihnen, Docker-basierte Anwendungen.
Update:
Ja, sofort kümmern uns um die Platzierung in den cluster, wie das ist, was ein kernel macht -- Planung und management von begrenzten Ressourcen. Das setup Sie haben skizziert, wirft einige offensichtliche Fragen, aber.
Schichten unter sofort:
Die Installation sofort auf CoreOS ist möglich, aber umständlich, wie ich finde. Dies ist nicht ein typisches Szenario für die Ausführung von sofort-in der Regel wird er auf der niedrigsten möglichen Ebene (über Ubuntu in deinem Fall). So, ich hoffe, Sie haben gute Gründe, die für die Ausführung von CoreOS und ein hypervisor.
Schichten über sofort:
Kubernetes ist verfügbar als Rahmen und mesosphäre scheint zu viel Mühe in Sie. Es ist jedoch ohne Frage, dass es teilweise überschneidungen in Bezug auf die Funktionalität-vor allem mit Bezug auf die Terminierung. Wenn Sie festlegen möchten, basic-workloads basierend auf Containern, könnten Sie besser dran, mit Marathon oder in der Zukunft vielleicht Aurora. So auch hier, ich hoffe, Sie haben gute Gründe für diese Anordnung.
Nebenbei bemerkt: Kubernetes ist ähnlich-Marathon mit einem breiteren Ansatz und ziemlich rechthaberisch.