基于confd和etcd的tuxedo中间件容器化方案
作为传统中间件的tuxedo有着广泛的应用,那么就不可避免有着传统架构的一些不足:
1、按照应用类型及用途,以物理机为单位划分资源,存在资源未能高效利用的情况,资源扩容容易回收难。
2、现有应用弹性扩缩容能力不够便利,部署及实施时间较长,人工参与较多。
那么容器却恰恰可以很好地解决这些问题:
1、物理计算资源虚拟化后分配,可以灵活调配计算资源,打破专机专用的限制,有效提高基础资源使用效率。
2、统一的容器调度界面,可实现按照策略自动或手工的进行弹性扩缩容,更好应对高峰业务压力。
针对以上问题及结合容器的优势我们做了如下设计:
1、使用的组件
confd:用于生成dbb、ubb文件,通过参数的初始化可以利用模板快速生成相应的ubb、dbb配置。
etcd:存放dongtai和静态参数,也作为服务发现的工具来支持ejb服务的注册。
2、脚本编写
etcdinit.sh:实现静态参数的初始化。
keepalive.sh:在etcd中设置key的生存时间。
mkxbb.sh:调用confd来生成ubb、dbb。
wtcreload.sh:服务发现和注册的实现。