对于新开发的应用可能会好操作,对于在运行的要迁移到docker,建议先进行一些试点poc验证,我们在进行迁移的过程中,发现有如下问题需要考虑
1.应用服务器:docker需要承载应用服务器的运行,对于使用WAS或者weblogic的应用,如果跑在docker上面可能得转移到tomcat之类的轻量级容器;
2.应用系统规模:如果过去的单体应用,一个系统要完成很多功能,现在迁移到docker,得考虑应用规模是不是过于庞大,需不需要拆分
3.应用逻辑状态:运行在docker的应用一般考虑是stateless的形式,需要分析应用在业务逻辑层会不会有和本地存储绑定的一些逻辑
收起1、先看是怎么看待迁移,是把现在的应用“硬”迁入容器,还是会对目前应用根据容器的特性进行改造。如果是针对容器特性进行改造应用那问题不大,但对应用开发团队会有比较大的挑战,包括思想和工作量。如果把现有应用“硬”迁入容器其实是可以解决一些部署、扩容便利性的问题,而且感觉实现也比较简单,但很可能单个容器需要配置较高的CPU、内存,总体来说意义并部署特别大。建议先对容器的特性进行了解,并对现有应用进行摸底,评估看要的是什么解决什么问题,而开销是多少。
2、如果没有进行二次开发,docker可能并不能很好的帮助到生产应用,对于维护方式和问题查找都会带来较大的改变,所以建议先少量试点,评估整个运维模式的改变对生产的影响。
3、docker对于原有的权限管理、网络策略、软硬件版本可能都会带来冲击,还是建议先充分进行试点和评估。这些方面带来的问题可能会比单纯的应用更麻烦。
收起1、先看是怎么看待迁移,是把现在的应用“硬”迁入容器,还是会对目前应用根据容器的特性进行改造。如果是针对容器特性进行改造应用那问题不大,但对应用开发团队会有比较大的挑战,包括思想和工作量。如果把现有应用“硬”迁入容器其实是可以解决一些部署、扩容便利性的问题,而且感觉实现也比较简单,但很可能单个容器需要配置较高的CPU、内存,总体来说意义并部署特别大。建议先对容器的特性进行了解,并对现有应用进行摸底,评估看要的是什么解决什么问题,而开销是多少。
2、如果没有进行二次开发,docker可能并不能很好的帮助到生产应用,对于维护方式和问题查找都会带来较大的改变,所以建议先少量试点,评估整个运维模式的改变对生产的影响。
3、docker对于原有的权限管理、网络策略、软硬件版本可能都会带来冲击,还是建议先充分进行试点和评估。这些方面带来的问题可能会比单纯的应用更麻烦。