项目 - 环境治理
2020-07-21
现状
环境列表:
-
开发环境(dev)
-
描述:主要是负责各服务联调开发测试
-
环境子类
-
d1(10.1.0.0/16)
-
d2(10.2.0.0/16)
-
d3(10.3.0.0/16)
-
d4(10.4.0.0/16)
-
colorful(10.9.0.0/24)
-
测试环境
-
描述:主要是测试部门上线前测试
-
环境子类
-
t1(10.21.0.0/16)
-
t2(10.22.0.0/16)
-
t4(10.24.0.0/16)
-
colorful (10.29.0.0/16)
当前存在的问题:
- 开发环境、测试环境,中间件使用混乱,存在相互调用的情况,未做网络隔离。
- 开发人员配置中间件的时候容易配错 复制配置的时候 跨域调用情况普遍存在
- t1环境的A应用可能会调用d1环境的redis,B应用调用d2环境的redis,很混乱。
- t1环境可能访问d1环境的应用。
- 对测试人员造成很大的困扰。
目标
中间件(redis、rocketmq等)
-
开发环境,各子环境:
-
有专属于本环境的一个redis。
-
有专属于本环境的一个rocketmq。
-
测试环境,各子环境:
-
redis实例数与生产环境保持一致。
-
有专属于本环境的一个rocketmq。
-
所有子环境,redis密码一致。
-
dns解析
-
在原有阿里云提供的域名基础上,封装一层DNS。
-
相比于阿里云提供的域名,封装一层DNS对肉眼识别非常友好,非常直观。
-
会减少在无心的情况下,t1的应用调用d1的redis这种现象。
-
优势:
-
测试环境的redis与生产环境模式高度一致,让潜在的风险可尽早的暴露。
-
密码一致可以降低维护成本。
-
封装DNS增加可读性。
-
域名CNAME可提升灵活性。
网络隔离
-
各子环境之间,网络隔离。
-
优势
-
完全杜绝t1调用d1 redis的可能性。
-
可以理解为:每个子环境是个集装箱,自身闭环。
降本/提效
-
按子环境-业务域维度,购买服务器
-
采用混部模式。
-
优势:
-
部署效率大大提升,减少了每个子环境都需要阿里云购买服务器的操作成本。
-
降低了服务器成本,提升了资源利用率。
-
减少了对新购服务器的初始化成本。
-
每部署一个应用子环境,预计可节约5-10分钟。
-
降低了开发小伙伴的理解成本。
-
让运维小伙伴有更多的时间去做更有意义的事。