Consul监控
Consul支持众多监控工具进行对自身监控。我们这里使用Prometheus进行监控。
前提条件
-
有一个consul server集群及agent。集群搭建及配置请参考Consul安装备份升级
-
需要在配置文件中指定telemetry选项。如下所示
~]# cat /usr/local/consul/consul.d/consul.json { "datacenter": "dc1", "client_addr": "0.0.0.0", "bind_addr": "{ { GetInterfaceIP \"eth0\" }}", "data_dir": "/usr/local/consul/data", "retry_interval": "20s", "retry_join": ["10.111.67.1","10.111.67.2","10.111.67.3","10.111.67.4","10.111.67.5"], "enable_local_script_checks": true, "log_file": "/usr/local/consul/logs/", "log_level": "debug", "enable_debug": true, "pid_file": "/var/run/consul.pid", "performance": { "raft_multiplier": 1 }, "telemetry": { "prometheus_retention_time": "120s", "disable_hostname": true } }
-
启动成功后,使用如下命令测试
~]# curl 127.0.0.1:8500/v1/agent/metrics?format=prometheus # HELP consul_fsm_register consul_fsm_register # TYPE consul_fsm_register summary consul_fsm_register{ quantile="0.5"} NaN consul_fsm_register{ quantile="0.9"} NaN consul_fsm_register{ quantile="0.99"} NaN consul_fsm_register_sum 3.396029010415077 consul_fsm_register_count 8 # HELP consul_http_GET_v1_agent_metrics consul_http_GET_v1_agent_metrics # TYPE consul_http_GET_v1_agent_metrics summary consul_http_GET_v1_agent_metrics{ quantile="0.5"} 0.5403839945793152 consul_http_GET_v1_agent_metrics