2017-04-12 53 views
0

我想爲我將在馬拉松中運行的任務設置自定義http運行狀況檢查。如何爲Marathon任務創建健康檢查HTTP端點?

從我一直在讀什麼,馬拉松讓你在你的應用程序與捕捉什麼使您的應用健康的邏輯實現的端點創建自定義健康檢查的能力。

我明白如何通過馬拉松GUI連接到端點,但我不能找到如何實際創建一個馬拉松任務終點的任何資源。

回答

0

一般的文檔是在這裏: https://mesosphere.github.io/marathon/docs/

你的問題的具體文件,可以發現: https://mesosphere.github.io/marathon/docs/health-checks.html

例如,你可以開始健康檢查與應用(與泊塢窗容器相結合)以下馬拉松配置:

{ 
    "id":"app", 
    "cpus":0.25, 
    "mem":1024, 
    "instances":2, 
    "healthChecks":[ 
     { 
     "protocol":"HTTP", 
     "path":"/", 
     "portIndex":0, 
     "timeoutSeconds":10, 
     "gracePeriodSeconds":10, 
     "intervalSeconds":2, 
     "maxConsecutiveFailures":10 
     } 
    ], 
    "container":{ 
     "type":"DOCKER", 
     "docker":{ 
     "image":"nginx", 
     "network":"BRIDGE", 
     "portMappings":[ 
      { 
       "hostPort":0, 
       "containerPort":80, 
       "protocol":"tcp" 
      } 
     ] 
     } 
    } 
} 
+0

您好,我閱讀該文檔並瞭解如何連接到運行狀況點端點(/ pa但是,我的問題實際上是用邏輯來創建和設置http端點,以定義我的健康狀況檢查應該如何工作。 – Jason

+0

設置http端點的方式非常依賴您正在使用的技術。 考慮包括檢查什麼使您的應用健康: - 檢查是否所有本地的限制是好的,例如磁盤 - 連接到所有dependend其他應用,例如數據庫 – unterstein

+0

我的任務是用一個簡單的bash腳本啓動處理。然後,我將通過使用另一個使用grep的bash腳本來實現我的健康檢查邏輯,以確定進程是否正在運行。如果它沒有運行,那麼我的邏輯將確定它是不健康的。我試圖完成的是讓馬拉松調度程序運行狀況檢查連接到任務實例上的健康檢查邏輯。如果我使用HTTP,我是否需要其他技術來託管Web服務器,以便使用我的健康檢查邏輯創建端點?我是否應該通過其他方式實施我的健康檢查邏輯? – Jason