开发/测试环境治理
开发/测试环境治理
开发测试环境如何快速克隆部署?docker平台给我们快速克隆测试环境提供了便利, 不过因为环境的复杂性(根据不同项目而言),仍需要提前进行一些开发规范的约定,而这个提前布局的约定,对之后效率的提升才是显而易见的。
目前困难点主要是下面3点。
1) 互联网服务复杂性和各种服务的多元化,是制约快速部署的主要原因。
2) 内部服务之间的连接配置复杂。 服务的多元化导致了内部的互连配置也同样是复杂的。 解决连接配置的问题, 同样可以利用docker 容器的compose或者stack部署 + 域名化配置(不用动态ip地址) + 域名反向代理管理。
3) 初始化数据的动态增长和变化。
随着不断的迭代, 创建一套新的环境初始化的数据内容也是变化的。 通常传统做法,是克隆目前已有的一套数据库中的数据。
针对于以上3点具体谈一下可能的解决方案。
1)使用docker等容器虚拟化产品,可以解决服务多样化。 一次镜像完成后, 之后的部署可以很快的实现。 docker 容器化我们用到的服务。 通常互联网应用主要会用到如下几个组件。 负载均衡(api网关),服务实例(如tomcat等),缓存(内存数据库 redis,memcache),数据持久(mysql,oracle),消息队列(mq)。 我们使用或者构建自己需要的镜像。
2)我们编写compose ,利用compose或者stack 进行部署一套环境。 需要注意的是, 一套新的测试环境的互相配置的ip地址等,全部需要用域名进行配置。 docker stack 内部是可以通过service name 作为domain直接进行访问的。 为了进行动态的管理,我们可以在service name 之前再加上域名反向代理进行管理。 这样我们可以动态修改连接配置。
3) 通过约定开发规范,sql递增增加和分支号关联。
此篇文章已被阅读1144 次