梳理传统应用的交互内容数据集,如果是大而全的紧耦合数据集交互,现将梳理和拆分可以微服务化的松耦合分布式数据集,再进行应用改造;
如此这样可以分步骤、分阶段进行改造;完全颠覆性重构,付出的代价估计比较大,投入成本和相应的运维体系、支撑体系、工具链体系都得配套随着业务改造而增加,不仅学习成本高,维护粒度反而增加,为业务运维人员增加不小的工作量。
1,先梳理传统业务应用服务的特点;
2,针对改造中涉及的工具链支撑平台先行建设;
3,转型服务团队技能和运维体系;
4,持续增加技术投入
5,适时借鉴第三方厂商经验和技术赋能,是掌握和改造业务-应用服务的关键要素。
OpenShift既可以支持无状态应用,也可以支持有状态应用(使用statefulset),如redis、mysql等。整体上看,运行的无状态应用会多一些。
已建立了清晰的可自动化的编译及构建流程
应用使用了如Maven、Gradle、Make或Shell等工具实现了构建编译步骤的自动化。这将方便应用在容器平台上实现自动化的编译及构建。
已实现应用配置参数外部化
应用已将配置参数外部化与配置文件或环境变量中,以便于应用容器能适配不同的运行环境。
已提供合理可靠的健康检查接口
容器平台将通过健康检查接口判断容器状态,对应用服务进行状态保持。
已实现状态外部化,实现应用实例无状态化
应用状态信息存储于数据库或缓存等外部系统,应用实例本身实现无状态化。
不涉及底层的操作系统依赖及复杂的网络通信机制
应用以处理业务为主,不强依赖于底层操作系统及组播等网络通信机制以提高可移植性。
部署交付件及运行平台的大小在2GB以内
轻量级的应用便于在大规模集群中快速传输分发,更符合容器敏捷的理念。
启动时间在5分钟以内
过长的启动时间将不能发挥容器敏捷的特性。