client consul.json配置信息:
{
"datacenter": "betaali",
"client_addr": "0.0.0.0",
"bind_addr": "{{ GetInterfaceIP \"eth0\" }}",
"data_dir": "/consul/data",
"retry_interval": "20s",
"retry_join": ["192.168.6.182","192.168.44.201","192.168.6.158","192.168.44.211","192.168.6.159"],
"enable_local_script_checks": true,
"log_file": "/var/log/",
"log_level": "trace",
"pid_file": "/var/run/consul.pid",
"performance": {
"raft_multiplier": 1
},
"telemetry": {
"prometheus_retention_time": "300s",
"disable_hostname": true
}
}
server端client.json配置
{
"datacenter": "betaali",
"data_dir": "./data",
"log_level": "ERR",
"server": false,
"bind_addr": "192.168.44.211",
"client_addr": "0.0.0.0",
"addresses": {
"dns": "192.168.44.211 127.0.0.1"
},
"ports": {
"dns": 53
},
"watches": [
{
"type": "checks",
"handler": ""
}
],
"dns_config": {
},
"domain": "consul",
"enable_script_checks": false,
"enable_local_script_checks": true,
"recursors": ["192.168.6.166","192.168.44.218"],
"rejoin_after_leave": true,
"ui": true
}
服务端启动脚本:
#客户信息
# consul info
agent:
check_monitors = 0
check_ttls = 0
checks = 9
services = 9
build:
prerelease =
revision = c463b1ef
version = 1.10.5
consul:
acl = disabled
known_servers = 6
server = false
runtime:
arch = amd64
cpu_count = 4
goroutines = 64
max_procs = 4
os = linux
version = go1.16.12
serf_lan:
coordinate_resets = 0
encrypted = false
event_queue = 0
event_time = 802
failed = 0
health_score = 0
intent_queue = 0
left = 1
member_time = 24788
members = 19
query_queue = 0
query_time = 33
查看各个server的情况
# consul members
Node Address Status Type Build Protocol DC Segment
BETAAS21 192.168.6.158:8301 alive server 1.10.3 2 betaali <all>
BETAAS22 192.168.6.159:8301 alive server 1.10.3 2 betaali <all>
BETAWS21 192.168.6.182:8301 alive server 1.10.3 2 betaali <all>
BETAWS22 192.168.6.164:8301 alive server 1.10.3 2 betaali <all>
BETAWS24 192.168.44.201:8301 alive server 1.10.3 2 betaali <all>
BETAWS25 192.168.44.203:8301 alive server 1.10.3 2 betaali <all>
BETAAS23 192.168.44.211:8301 alive client 1.10.3 2 betaali <default>
BETADS21 192.168.44.204:8301 alive client 1.10.3 2 betaali <default>
BETADS22 192.168.44.217:8301 alive client 1.10.3 2 betaali <default>
BETAWS27 192.168.44.218:8301 alive client 1.9.2 2 betaali <default>
BETAWS28 192.168.6.166:8301 alive client 1.9.2 2 betaali <default>
ZhBETAWS31 192.168.44.232:8301 alive client 1.10.3 2 betaali <default>
iZ1k28596up803Z 192.168.44.225:8301 alive client 1.10.3 2 betaali <default>
iZuf62yo0ig8a6drrftiugZ 192.168.44.249:8301 left client 1.9.5 2 betaali <default>
iZuf64q00wqx1bnj6gywb9Z 192.168.6.180:8301 alive client 1.10.5 2 betaali <default>
iZuf6afevqf9m9s8p3611pZ 192.168.44.248:8301 alive client 1.10.1 2 betaali <default>
iZuf6dkxzh9r8ycpxlzi0jZ 192.168.6.167:8301 alive client 1.10.3 2 betaali <default>
iZuf6fficzegugd01h8964Z 192.168.6.174:8301 alive client 1.10.1 2 betaali <default>
iZuf6g0vy2khd61vglmnavZ 192.168.6.173:8301 alive client 1.10.0 2 betaali <default>
#查看目前全部的consul的角色状态:
# consul operator raft list-peers
Node ID Address State Voter RaftProtocol
BETAWS22 b6391b09-63bb-9eeb-c7ef-fb9a915287fa 192.168.6.164:8300 follower true 3
BETAWS24 f0ad6acf-6453-da7a-16f2-4bbad711d161 192.168.44.201:8300 follower true 3
BETAWS25 11818423-2011-3d62-1e92-7065192236e2 192.168.44.203:8300 follower true 3
BETAAS21 bb581d13-ca07-f09f-6d8c-9b1201d340fe 192.168.6.158:8300 leader true 3
BETAWS21 059d5e71-8984-7bbf-6b56-68b249e4d16a 192.168.6.182:8300 follower true 3
BETAAS22 2c11fdd0-049d-7323-e251-e46498b4b584 192.168.6.159:8300 follower true 3
# can specify target point
# provide debug info
consul info [-http-addr=172.20.20.31:8500]
# get log message, 这样就可以在某一agent上查看任意其他的agent log了
consul monitor [-http-addr=172.20.20.31:8500]
其中一台client挂掉了
2022-01-10T10:47:23.589+0800 [INFO] agent: Joining cluster...: cluster=LAN
2022-01-10T10:47:23.589+0800 [INFO] agent: (LAN) joining: lan_addresses=[192.168.6.182, 192.168.44.201, 192.168.6.158, 192.168.44.211, 192.168.6.159]
2022-01-10T10:47:23.590+0800 [DEBUG] agent.client.memberlist.lan: memberlist: Initiating push/pull sync with: 192.168.6.182:8301
2022-01-10T10:47:23.590+0800 [WARN] agent.router.manager: No servers available
2022-01-10T10:47:23.590+0800 [ERROR] agent.anti_entropy: failed to sync remote state: error="No known Consul servers"
2022-01-10T10:47:23.590+0800 [INFO] agent: started state syncer