2017-12-18 4 views
-2

Ich benutze Marathon und Mesos. Meine Anwendungen basieren auf Scala und ich benutze das SBT Docker Plugin, um die Anwendung zu docken und zu marathon zu bringen. Die Anwendungen sind asynchron (queue-basiert) und werden nicht über HTTP aufgerufen. Wie führe ich Healthcheck für asynchrone Anwendungen durch und kann hier SBT Scalatest genutzt werden? Die Anwendung wird dockerisiert, also wie rufen wir Scalatest in einer dockerisierten App auf. Irgendwelche Gedanken?Marathon Healthcheck für Dockerized Scala Anwendung über SBT

+0

Voting als Wegthema zu schließen, da es im Grunde ist für ein Tutorial zu fragen, die out-of-scope ist. Allerdings könnte dies Ihnen helfen: https://skillsmatter.com/skillscasts/11183-integration-testing-using-sbt-scalatest-and-docker – theFunkyEngineer

+0

Ist es ein einmaliges Rennen auf Marathon oder es läuft permanent auf Marathon? – Rico

+0

Es läuft permanent auf Marathon. Einmal ausgeführt, führe ich über den Befehl "sbt docker" aus. Meine konfigurierten Scalatest-Fälle werden ausgeführt und das Image wird erstellt. Das Problem tritt nach der Bereitstellung bei Marathon auf. Wie verwende ich die Health-Check-Funktion von Marathon in einer asynchronen Anwendung? –

Antwort

0

Sie können Command HealthCheck verwenden und Ihren benutzerdefinierten Befehl ausführen.

Denken Sie nach, wenn Sie wirklich einen Gesundheitscheck brauchen und was er Ihnen sagen wird. Vermeiden Sie Gesundheitschecks, die Ressourcen auffressen besser einen Endpunkt offenlegen, der Thread-Pools überwachen wird, Timeouts e.t.c. und kehrt ungesund zurück, wenn etwas wirklich falsch ist. In anderen Fällen sollten Sie Ihre Messwerte so konfigurieren, dass Sie benachrichtigt werden, dass etwas Schlimmes passiert.

Process health checking (“is this binary responding at all?”) and service health checking (“is this binary able to respond to this class of requests right now?”) are two conceptually distinct operations. Process health checking is relevant to the cluster scheduler, whereas service health checking is relevant to the load balancer. Clearly distinguishing between the two types of health checks can help avoid this scenario.

+1

Danke allen. Für jetzt habe ich einen Dummy Health Check HTTP Service geschrieben. –

Verwandte Themen