为了上openshift,传统应用进行无状态化改造的过程中,有哪些特别需要注意的地方或者经验分享?

参与9

2同行回答

eximbankeximbank联盟成员系统架构师某金融企业
梳理传统应用的交互内容数据集,如果是大而全的紧耦合数据集交互,现将梳理和拆分可以微服务化的松耦合分布式数据集,再进行应用改造;如此这样可以分步骤、分阶段进行改造;完全颠覆性重构,付出的代价估计比较大,投入成本和相应的运维体系、支撑体系、工具链体系都得配套随着业务改...显示全部

梳理传统应用的交互内容数据集,如果是大而全的紧耦合数据集交互,现将梳理和拆分可以微服务化的松耦合分布式数据集,再进行应用改造;
如此这样可以分步骤、分阶段进行改造;完全颠覆性重构,付出的代价估计比较大,投入成本和相应的运维体系、支撑体系、工具链体系都得配套随着业务改造而增加,不仅学习成本高,维护粒度反而增加,为业务运维人员增加不小的工作量。
1,先梳理传统业务应用服务的特点;
2,针对改造中涉及的工具链支撑平台先行建设;
3,转型服务团队技能和运维体系;
4,持续增加技术投入
5,适时借鉴第三方厂商经验和技术赋能,是掌握和改造业务-应用服务的关键要素。

收起
保险 · 2019-12-24
浏览2108
davidsajaredavidsajare副首席解决方案架构师Red Hat
OpenShift既可以支持无状态应用,也可以支持有状态应用(使用statefulset),如redis、mysql等。整体上看,运行的无状态应用会多一些。已建立了清晰的可自动化的编译及构建流程应用使用了如Maven、Gradle、Make或Shell等工具实现了构建编译步骤的自动化。这将方便应用在容器平台上...显示全部

OpenShift既可以支持无状态应用,也可以支持有状态应用(使用statefulset),如redis、mysql等。整体上看,运行的无状态应用会多一些。

已建立了清晰的可自动化的编译及构建流程
应用使用了如Maven、Gradle、Make或Shell等工具实现了构建编译步骤的自动化。这将方便应用在容器平台上实现自动化的编译及构建。

已实现应用配置参数外部化
应用已将配置参数外部化与配置文件或环境变量中,以便于应用容器能适配不同的运行环境。

已提供合理可靠的健康检查接口
容器平台将通过健康检查接口判断容器状态,对应用服务进行状态保持。

已实现状态外部化,实现应用实例无状态化
应用状态信息存储于数据库或缓存等外部系统,应用实例本身实现无状态化。

不涉及底层的操作系统依赖及复杂的网络通信机制
应用以处理业务为主,不强依赖于底层操作系统及组播等网络通信机制以提高可移植性。

部署交付件及运行平台的大小在2GB以内
轻量级的应用便于在大规模集群中快速传输分发,更符合容器敏捷的理念。

启动时间在5分钟以内
过长的启动时间将不能发挥容器敏捷的特性。

收起
互联网服务 · 2019-12-24
浏览2403

提问者

Jerry Miku
其它The Global 500
擅长领域: 存储备份灾备

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2019-12-18
  • 关注会员:4 人
  • 问题浏览:3353
  • 最近回答:2019-12-24
  • X社区推广