流行的各种容器集群管理系统都支持服务编排,用yml格式的文件进行描述,但Swarm、K8S、Rancher Cattle等各自的服务编排语法并不统一。如果直接使用这些系统的编排语法,当未来重新选择容器管理系统的类型时,已经积累的应用编排就都会成为限制,或者需要根据新的容器管理系统进行重新编排,这非常不利于复用已有的IT资产,也是不愿意看到的技术上的锁定。
所以建议设计自己的编排语法,同时开发一个翻译模块,把自己的编排信息翻译成容器平台能够处理的编排语法。当未来更换底层容器管理平台时,上层积累的应用编排资产不会受到影响,只需要开发新的翻译模块对接新的容器管理平台即可。