微服务(入门一):netcore安装部署consul(windows)
环境准备
vs开发环境:vs2017
consul版本: 1.4.4
netcore版本:2.1
安裝Consul
1.从官网下载consul到本地,选择系统对应的版本进行下载到本地,下载地址:https://www.consul.io/downloads.html
2.下载到本地之后解压压缩文件,并且配置环境变量(不需要每次都得到文件所在的目录文件夹下进行启动consul)
3.配置完成之后打开cmd输入consul,出现以下页面代表配置成功!~
4.输入consul agent -dev 启动consul服务(dev该节点的启动不能用在正式环境,因为该模式下不会持久化任何状态,只是为了方便调试)
5.启动后访问localhost:8500进入可视化管理页面
1.单机通过docker创建consul集群
1.拉取docker镜像
docker pull consul
2.运行docker 容器
docker run --name consul1 -d -p 8500:8500 -p 8300:8300 -p 8301:8301 -p 8302:8302 -p 8600:8600 consul:latest agent -server -bootstrap-expect 2 -ui -bind=0.0.0.0 -client=0.0.0.0 -datacenter=dc1
参数介绍
-bootstrap-expect:最小的集群数
-bind=0.0.0.0:绑定地址
-e CONSUL_BIND_INTERFACE=eth0 :自动绑定eth0端口的ip地址
--net=host :将容器需要映射的端口全部也映射到物理机上
-ui :开启视图
-client=0.0.0.0 :Consul服务侦听地址默认是127.0.0.1不对外提供服务,如果要对外提供服务改为0.0.0.0
-bind
:该地址用来在集群内部的通讯,集群内的所有节点到地址都必须是可达的,默认是0.0.0.0
-datacenter=dc2:指定数据中心名称
3.获取consul服务器的ip地址
docker inspect --format \'{{ .NetworkSettings.IPAddress }}\' consul1
4.Cilent 加入到Consul服务器集群节点当中
docker run --name consul3 -d -p 8501:8500 consul agent -server -ui -bind=0.0.0.0 -client=0.0.0.0 -join 172.17.0.2
5.查看集群状态
docker exec consul1 consul operator raft list-peers
6.查看数据中心
docker exec node1 consul members
7.列出所有节点
docker exec consul1 consul catalog nodes
8.移除节点
docker exec consul1 consul operator raft remove-peer -id=172.17.0.4:8301
2.多台物理服务器Docker集群部署
一般在部署的时候是多台物理机实现consul的高可用集群,此时可以进行如下操作跟单机部署差不多
1.创建server层
docker run -d –name=consul1 -p 8500:8500 -p 8300:8300 -p 8301:8301 -p 8302:8302 -p 8600:8600 -e CONSUL_BIND_INTERFACE=eth0 consul agent -server=true -client=0.0.0.0 -ui -bootstrap-expect=2 -datacenter=dc1
2.其他节点加入集群当中
docker run –name=consul2 -d -p 7300:8300 -p 7301:8301 -p 7302:8302 -p 7600:8600 -e CONSUL_BIND_INTERFACE=eth0 consul agent -datacenter=dc1 -server -client=0.0.0.0 -join 10.30.61.81:8301
错误描述
如果出现: connect: no route to host错误,添加如下代码
firewall-cmd --zone=public --add-port=8301/tcp --permanent
firewall-cmd --reload
快速入口:微服务(入门一):netcore安装部署consul
快速入口: 微服务(入门二):netcore通过consul注册服务