传统应用如何平滑迁移至容器云,需要从哪里方面进行考量?应用的容器话,对运维带来的改变?需要具备哪些技能。
容器云是构建在服务器之上,还是 构建在虚拟机之上。之前建设的虚拟化平台存在意义? 如何将2者结合发,发挥大的益处?
opentack 管理laas层,容器云管理方面采用什么方式?
传统应用要迁移到容器云需要考虑以下几点:
(1) 应用是否适合于容器化,进而适合于微服务化,比如有些weblogic的应用,非常庞大就不适合,但是今年来也有所改变,比如sap正在把它的应用变小,进而适合于容器化;
(2)应用是否无状态,容器上的应用都是无状态的单一应用;
(3)迁移到虚机,还是实体机, 这涉及成本,如果迁移到虚机,也就是vmware vcenter的虚机或openstack上,这样做,你将不得不再养一些虚机基础架构工程师,openstack的网络同样负载,这里我建议用vmware的虚机,生产上安全可靠点。
(4)如果是往公有云上迁移的话,那必然大部分情况是虚机,我还没有看到过有公司放几十台物理“裸金属”机器在公有云厂商的机房,搭建k8s的场景;
(5)如在公有云上建议使用全托管的Kubernetes集群,为什么? 疫情之下,节约为本,何况master节点安全啊
(6)如果在IDC机房,就看你们公司是不是vmware或ctrix的重度用户了,如果是的话,有完整庞大的虚机集群,有boss这种自动化虚机分配工具,用虚机也是可以的,就是性能会损耗点。如果就是小规模的虚机,建议还是实体机来部署Kubernetes,性能能得到保障,底层网络也简单点。openstack不推荐,因为太不稳定了,测试集群还可以,生产集群要小心有坑,openstack毕竟是开源的半成品。有很多坑,不靠人来填是不现实的。
平滑迁移是有些困难的,传统应用为了适应容器化,需要做很多改造,也会带来一些问题。运维上对应用的问题定位肯定比传统的困难,另外容器层面出现问题,需要运维有这个能力来定位。
容器云构建在服务器还是虚机上没有太大区别,都可以。
容器云平台可以使用k8s/openshift等相关产品