consul簡(jiǎn)介
在 GitHub 上托酸,Consul 被稱為“一種用于服務(wù)發(fā)現(xiàn)各淀、監(jiān)控和配置的工具”醉箕。Consul 是由 Vagrant 的開(kāi)發(fā)公司 HashiCorp 開(kāi)發(fā)的開(kāi)源項(xiàng)目之一羽德。 它可以提供一個(gè)具有高可用性的分布式系統(tǒng)父叙,用以注冊(cè)服務(wù)神郊、存儲(chǔ)共享配置并保持多個(gè)數(shù)據(jù)中心的準(zhǔn)確視圖。此外趾唱,它作為一個(gè)簡(jiǎn)單的 Go 程序涌乳,因此不需要部署。
下載&安裝
下載地址:https://www.consul.io/downloads.html
安裝: 截止解壓即可運(yùn)行
[slview@EPCBJWEB consul]$ pwd
/usr/local/tool/consul
[slview@EPCBJWEB consul]$ ls
conf consul data cript
運(yùn)行
- 在conf添加配置文件
[slview@EPCBJWEB consul]$ cd conf/
[slview@EPCBJWEB conf]$ ls
iot_user_app.json
[slview@EPCBJWEB conf]$
[slview@EPCBJWEB conf]$ more iot_user_app.json
{
"service": {
"name": "iot_user_app",
"tags": ["master"],
"address": "xxx.xxx.xxx.xxx",
"port": 20000,
"checks": [
{
"http": "http://xxx.xxx.xxx.xxx:20000/getuserinfo?Type=3gaaa&MDN=86xxxxxxxxxxx",
"interval": "5s"
}
]
}
}
- 啟動(dòng),目前是單機(jī)
nohup consul agent -ui -server -bootstrap -bind=172.16.0.3 -client=172.16.0.3 -data-dir=./data -config-dir=./conf -ui -node=web_serv 2>&1 &
- 監(jiān)控服務(wù)若不同調(diào)用腳本進(jìn)行重啟服務(wù)
文檔:https://www.consul.io/docs/agent/watches.html
可以監(jiān)控的類(lèi)型如下:
Paste_Image.png
consul watch -http-addr 172.16.0.3:8500 -type service -service iot_user_app /usr/local/tool/consul/script/HttpAPP_ReStart.sh
UI界面
Paste_Image.png