Consul 學習筆記(八)之 配置說明


一、背景

     consul 在啟動的時候可通過命令指定 其啟動配置所在目錄,如:consul agent -config-dir conf ,其中 conf 目錄 就是存放 consul 所有啟動所需配置文件的目錄,文件格式可以是 json,也可以是 HCL。

    在 官網 https://www.consul.io/docs/agent/options#configuration_files  已經提供說明,本文主要說明這些配置項在使用的時候一些注意事項,其具體用法還是參照官網。

二、說明

1、retry_join

     在配置文件中 通過 retry_join 可以列出本結點需要加入的集群中的結點。

     該配置項值是一個列表,如:retry_join:["192.168.149.128:8301","192.168.149.130:8301"],其中 8301 是 serf_lan_port。

     consul 結點在啟動的時候,會自動循環遍歷加入 retry_join 中列出的每個結點,但是只要有一個成功加入,則后面的就不再執行加入。若整個列表遍歷完等沒有成功加入,此時默認會等待 30s之后再次遍歷列表嘗試加入。

     在遍歷不成功之后,可以看到其日志顯示:

2020-11-13T11:20:13.956+0800 [INFO]  agent: Retry join is supported for the following discovery methods: cluster=LAN discovery_methods="aliyun aws azure digitalocean gce k8s linode mdns os packet scaleway softlayer tencentcloud triton vsphere"
2020-11-13T11:20:13.956+0800 [INFO]  agent: Joining cluster...: cluster=LAN
2020-11-13T11:20:13.956+0800 [INFO]  agent: (LAN) joining: lan_addresses=[192.168.149.128:8301]  #本示例中,retry_join列表項就這個一個
2020-11-13T11:20:13.958+0800 [DEBUG] agent.server.memberlist.lan: memberlist: Failed to join 192.168.149.128: dial tcp 192.168.149.128:8301: connect: connection refused
2020-11-13T11:20:13.958+0800 [WARN]  agent: (LAN) couldn't join: number_of_nodes=0 error="1 error occurred: #不成功 
    * Failed to join 192.168.149.128: dial tcp 192.168.149.128:8301: connect: connection refused

"
2020-11-13T11:20:13.958+0800 [WARN]  agent: Join cluster failed, will retry: cluster=LAN retry_interval=30s error=<nil>    #顯示嘗試間隔時間為 30s
2020-11-13T11:20:21.221+0800 [ERROR] agent.anti_entropy: failed to sync remote state: error="No cluster leader"
2020-11-13T11:20:23.546+0800 [WARN]  agent.server.raft: no known peers, aborting election

PS:

 (1)  retry_join 並不影響 consul 啟動;

 (2) 要修改 retry 的間隔時間,可以使用配置項:retry_interval  (具體見官方文檔)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM