一.关于Consul
Consul 是一种服务网格解决方案,提供具有服务发现,配置和分段功能的全功能控制平面。 这些功能可以根据需要单独使用,也可以一起使用以构建完整的服务网格。
Consul 需要一个数据平面,并支持代理和本机集成模型。
Consul 附带了一个简单的内置代理,因此开箱即用,但也支持Envoy等第三方代理集成。
二. 快速安装方式
Consul 应用已分享到Rainbond应用市场,通过 Rainbond社区开源商店 即可一键安装。
三. 应用制作流程
制作过程使用官方提供的Docker镜像,对启动脚本进行修改,实现扩展实例数后,新增实例自动加入集群
if [ "${HOSTNAME#*-}" = '0' ];then
shift
set -- consul agent \
-data-dir="$CONSUL_DATA_DIR" \
-config-dir="$CONSUL_CONFIG_DIR" \
$CONSUL_BIND \
-server \
-bootstrap \
-ui \
-node=${HOSTNAME} \
-client='0.0.0.0'
else
shift
set -- consul agent \
-data-dir="$CONSUL_DATA_DIR" \
-config-dir="$CONSUL_CONFIG_DIR" \
$CONSUL_BIND \
-server \
-ui \
-node=${HOSTNAME} \
-client='0.0.0.0' \
-join="${SERVICE_NAME}-0.${SERVICE_NAME}"
fi
使用镜像方式进行部署,设置部署服务类型为有状态多实例,扩展实例数为3,启动组件。
四. 访问web界面
Consul 服务默认web界面访问端口为8500,访问对应地址,确定node数和实例数相同
具体使用及验证方式请参考Consul官方文档