国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

詳解consul的安裝和配置

2024-09-01 13:55:05
字體:
來源:轉載
供稿:網友

Consul 簡化了分布式環境中的服務的注冊和發現流程,通過 HTTP 或者 DNS 接口發現。支持外部 SaaS 提供者等。

consul提供的一些關鍵特性:

service discovery:consul通過DNS或者HTTP接口使服務注冊和服務發現變的很容易,一些外部服務,例如saas提供的也可以一樣注冊。

health checking:健康檢測使consul可以快速的告警在集群中的操作。和服務發現的集成,可以防止服務轉發到故障的服務上面。

key/value storage:一個用來存儲動態配置的系統。提供簡單的HTTP接口,可以在任何地方操作。

multi-datacenter:無需復雜的配置,即可支持任意數量的區域(數據中心)。

官方網站:https://www.consul.io/

系統環境:CentOS release 6.5 (Final) x64

consul最新版的下載地址

https://releases.hashicorp.com/consul/0.6.4/consul_0.6.4_linux_amd64.zip

下載解壓,里面只有一個consul可執行文件,執行

[root@localhost consul-0.6.4]# consul usage: consul [--version] [--help] <command> [<args>]  Available commands are:   agent     Runs a Consul agent   configtest   Validate config file   event     Fire a new event   exec      Executes a command on Consul nodes   force-leave  Forces a member of the cluster to enter the "left" state   info      Provides debugging information for operators   join      Tell Consul agent to join cluster   keygen     Generates a new encryption key   keyring    Manages gossip layer encryption keys   leave     Gracefully leaves the Consul cluster and shuts down   lock      Execute a command holding a lock   maint     Controls node or service maintenance mode   members    Lists the members of a Consul cluster   monitor    Stream logs from a Consul agent   reload     Triggers the agent to reload configuration files   rtt      Estimates network round trip time between nodes   version    Prints the Consul version   watch     Watch for changes in Consul 

其中,最常用到的命令是agent 

輸入consul agent -h 可以查看幫助。其中常見的參數解釋如下:

-advertise:通知展現地址用來改變我們給集群中的其他節點展現的地址,一般情況下-bind地址就是展現地址  
-bootstrap:用來控制一個server是否在bootstrap模式,在一個datacenter中只能有一個server處于bootstrap模式,當一個server處于bootstrap模式時,可以自己選舉為raft leader。  
-bootstrap-expect:在一個datacenter中期望提供的server節點數目,當該值提供的時候,consul一直等到達到指定sever數目的時候才會引導整個集群,該標記不能和bootstrap公用  
-bind:該地址用來在集群內部的通訊,集群內的所有節點到地址都必須是可達的,默認是0.0.0.0  
-client:consul綁定在哪個client地址上,這個地址提供HTTP、DNS、RPC等服務,默認是127.0.0.1  
-config-file:明確的指定要加載哪個配置文件  
-config-dir:配置文件目錄,里面所有以.json結尾的文件都會被加載  
-data-dir:提供一個目錄用來存放agent的狀態,所有的agent允許都需要該目錄,該目錄必須是穩定的,系統重啟后都繼續存在  
-dc:該標記控制agent允許的datacenter的名稱,默認是dc1  
-encrypt:指定secret key,使consul在通訊時進行加密,key可以通過consul keygen生成,同一個集群中的節點必須使用相同的key  
-join:加入一個已經啟動的agent的ip地址,可以多次指定多個agent的地址。如果consul不能加入任何指定的地址中,則agent會啟動失敗,默認agent啟動時不會加入任何節點。  
-retry-join:和join類似,但是允許你在第一次失敗后進行嘗試。  
-retry-interval:兩次join之間的時間間隔,默認是30s  
-retry-max:嘗試重復join的次數,默認是0,也就是無限次嘗試  
-log-level:consul agent啟動后顯示的日志信息級別。默認是info,可選:trace、debug、info、warn、err。  
-node:節點在集群中的名稱,在一個集群中必須是唯一的,默認是該節點的主機名  
-protocol:consul使用的協議版本  
-rejoin:使consul忽略先前的離開,在再次啟動后仍舊嘗試加入集群中。  
-server:定義agent運行在server模式,每個集群至少有一個server,建議每個集群的server不要超過5個  
-syslog:開啟系統日志功能,只在linux/osx上生效  
-ui-dir: 提供存放web ui資源的路徑,該目錄必須是可讀的  
-pid-file: 提供一個路徑來存放pid文件,可以使用該文件進行SIGINT/SIGHUP(關閉/更新)agent 

要想利用consul提供的服務實現服務的注冊與發現,我們需要建立consul cluster。

在consul方案中,每個提供服務的節點上都要部署和運行consul的agent,所有運行consul agent節點的集合構成consul cluster。

consul agent有兩種運行模式:server和client。這里的server和client只是consul集群層面的區分,與搭建在cluster之上的應用服務無關。

以server模式運行的consul agent節點用于維護consul集群的狀態,

官方建議每個consul cluster至少有3個或以上的運行在server mode的agent,client節點不限。

我們這里以安裝三個節點為例,環境配置如下

192.168.1.100 以server模式運行

192.168.1.101,192.168.1.102 以client模式運行

一:配置consul

把上面下載的文件解壓,并把consul拷貝到/opt/consul目錄,然后把/opt/consul目錄加入到環境變量(三個節點依次配置)

二:運行

1:在192.168.1.100節點上面進行

cd /opt/consulmkdir dataconsul agent -server -bootstrap -bind=0.0.0.0 -client=192.168.1.100 -data-dir=data -ui -node=192.168.1.100

這樣,就啟動了一個節點

2:在192.168.1.101節點上面進行

cd /opt/consulmkdir dataconsul agent -bind=0.0.0.0 -client=192.168.1.101 -data-dir=data -node=192.168.1.101 -join=192.168.1.100

3:在192.168.1.102節點上面進行

cd /opt/consulmkdir dataconsul agent -bind=0.0.0.0 -client=192.168.1.102 -data-dir=data -node=192.168.1.102 -join=192.168.1.100

全部節點啟動完之后

訪問http://192.168.1.100:8500/  即可查看consul集群的管理頁面

在任意節點執行consul members 即可查看集群節點信息

這里在192.168.1.100節點執行

[root@localhost consul-0.6.4]# consul members -rpc-addr=192.168.1.100:8400 Node      Address       Status Type  Build Protocol DC 192.168.1.101 192.168.1.101:8301 alive  client 0.6.4 2     dc1 192.168.1.102 192.168.1.102:8301 alive  client 0.6.4 2     dc1 192.168.1.100 192.168.1.100:8301 alive  server 0.6.4 2     dc1 

關閉節點

consul leave -rpc-addr=192.168.1.100:8400

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白沙| 湘西| 射阳县| 青海省| 岳西县| 巴楚县| 南华县| 新民市| 嘉荫县| 怀宁县| 琼中| 桑植县| 安陆市| 德阳市| 乌兰察布市| 齐河县| 和顺县| 翼城县| 金沙县| 黄梅县| 龙南县| 冀州市| 孟津县| 镇江市| 繁峙县| 湖北省| 赤壁市| 江津市| 西林县| 铜梁县| 凯里市| 怀仁县| 稻城县| 耒阳市| 伊春市| 赤城县| 米泉市| 临西县| 龙山县| 岑溪市| 阳朔县|