2017-10-19 74 views
0

我有一個領事堆棧2主機(用於測試)。 1主機只在引導模式下運行領事,另一個主機運行客戶端模式和註冊器,以自動註冊服務(均在Docker上運行)。現在,如果我啓動一個應用程序(例如端口8080)容器,註冊器將檢測到,然後將其註冊到consul,但它沒有http-check,因爲我想要。我發現註冊者有自動註冊健康檢查的選項是添加SERVICE_8080_CHECK_HTTP: '/'到應用程序容器,它工作得很好。在這一點上,我有一個問題,如果我docker stop應用程序容器,沒有健康檢查這個應用程序,所以我不能得到狀態,寫一些東西警報或更換失敗的應用程序。所以問題是,我如何獲得動態健康檢查服務,但仍然得到狀態passing or failed or warning or critical 謝謝配置領事動態健康檢查服務

回答

1

當您停止容器時,註冊服務器註銷服務。如果您有該服務的多個實例,它不應該是一個問題。

如果這是您的用例,請不要使用註冊器進行服務註冊,您可以使用Consul的HTTP API來註冊服務或爲代理添加服務定義文件。

無論如何,你真的不應該運行一個領事服務器 - https://www.consul.io/intro/index.html