2016-07-04 75 views
0

簡介

我正在運行多個,我稱他們爲領事堆棧。他們總是看起來像: - 1領事服務器 - 9領事節點遠程控制幾個領事堆棧的概念

每個節點提供了一些服務 - 只是一個典型的網絡堆棧和以上(不感興趣了這個問題)。 八卦用於保護服務器獲得任意節點的查詢並顯示數據。 幾位領事模板/耕者有其田「觀察家」正在等待動態配置節點/對KV服務改變

目標

可以說我有這些堆棧(數量是動態的)的10,我想建立一個web應用程序使用特定的邏輯

我有什麼權利現在

我創建了一個雷神+外交官工具包,我需要創建特定KV條目的邏輯控制每個堆棧的領事-KV。我在堆棧中的「控制器」容器上運行它時,實現了它,與localhost:8500進行通信,然後使用八卦進行身份驗證並寫入服務器。

問題

什麼概念將我現在用移動該工具的遠程服務器(未領事堆棧的一部分),同時能夠寫入各領事棧KV。

當然,我可以使用外交官來連接到stack1.tld:8500 - 但這意味着我打開HTTP端口,需要以某種方式保護它(不受八卦保護?不知何故,只有RPC?),並保護/ UI。

  • 有沒有更好的方法來連接到每個堆棧?
  • 在8500的前提下使用帶有基本認證的nginx代理服務器來保護訪問?
  • 也在此端口上使用ssl-interception並仍然使用8500或者使用配置的https端口(在consul HTTPS API中)
  • 使用ACL來保護訪問? (很多設置允許堆棧成員訪問 - 需要TLS?)

一般來說,如果不使用TLS(需要爲客戶端安裝需要大量工作),那麼什麼概念適合這種需要與堆棧服務器通信以安全地寫入其KV。

如果我錯過了什麼,高興地添加任何你問

回答

0

這個答案是

  1. 領事的服務器上

{ "acl_datacenter": "stable", "acl_default_policy": "deny", "acl_down_policy": "deny" }

  • 用寫/寫/寫創建一個通用acl令牌
  • consul-cli acl create --management=false --name="general_node" --rule "key::write" --rule "event::write" --rule "service::write" --token=<master-token> 確保到主令牌在這裏使用時,服務器過程中創建啓動

  • 任選地還配置閒話讓你的客戶端通信加密的(否則的ACL種沒有意義)

  • 添加量一般令牌使用遠程成爲談得來遠程領事領事客戶端 - 因爲這領事將無法再公開做任何事情(無令牌)