suging 的註冊中心支持consul跟zookeeper。因為consul跟zookeeper的配置都差不多,所以只是consul的配置 consul下載地址:https://www.consul.io/downloads.html consul agent 命令的常用選項,如下: -data- ...
suging 的註冊中心支持consul跟zookeeper。因為consul跟zookeeper的配置都差不多,所以只是consul的配置
consul下載地址:https://www.consul.io/downloads.html
consul agent
命令的常用選項,如下:
- -data-dir
- 作用:指定agent儲存狀態的數據目錄
- 這是所有agent都必須的
- 對於server尤其重要,因為他們必須持久化集群的狀態
- -config-dir
- 作用:指定service的配置文件和檢查定義所在的位置
- 通常會指定為”某一個路徑/consul.d”(通常情況下,.d表示一系列配置文件存放的目錄)
- -config-file
- 作用:指定一個要裝載的配置文件
- 該選項可以配置多次,進而配置多個配置文件(後邊的會合併前邊的,相同的值覆蓋)
- -dev
- 作用:創建一個開發環境下的server節點
- 該參數配置下,不會有任何持久化操作,即不會有任何數據寫入到磁碟
- 這種模式不能用於生產環境(因為第二條)
- -bootstrap-expect
- 作用:該命令通知consul server我們現在準備加入的server節點個數,該參數是為了延遲日誌複製的啟動直到我們指定數量的server節點成功的加入後啟動。
- -node
- 作用:指定節點在集群中的名稱
- 該名稱在集群中必須是唯一的(預設採用機器的host)
- 推薦:直接採用機器的IP
- -bind
- 作用:指明節點的IP地址
- 有時候不指定綁定IP,會報
Failed to get advertise address: Multiple private IPs found. Please configure one.
的異常
- -server
- 作用:指定節點為server
- 每個數據中心(DC)的server數推薦至少為1,至多為5
- 所有的server都採用raft一致性演算法來確保事務的一致性和線性化,事務修改了集群的狀態,且集群的狀態保存在每一臺server上保證可用性
- server也是與其他DC交互的門面(gateway)
- -client
- 作用:指定節點為client,指定客戶端介面的綁定地址,包括:HTTP、DNS、RPC
- 預設是127.0.0.1,只允許迴環介面訪問
- 若不指定為-server,其實就是-client
- -join
- 作用:將節點加入到集群
- -datacenter(老版本叫-dc,-dc已經失效)
- 作用:指定機器加入到哪一個數據中心中
使用 -client {ip} 可以指定特定的ip的去訪問 ,-advertise {公網ip} 用戶公網訪問
啟動開發環境之後 直接可以在在8500埠看到consul的web管理頁面
在surging中的配置:
如果要使用zookeeper,需要在nuget上面安裝Surging.Core.Zookeeper包,並且使用usezookeeperManager()方法。
至此,suging的配置工作就完成了,下麵就開始我們的第一個服務。