一、虚拟机VM的组成
服务器-HostOS-虚拟化层-GustOS-libs-App
1、此时存在几个问题:
1、资源消耗大
2、扩展APP副本时到重复资源浪费(GustOS-libs)
3、当你开发在本地但要移植到云端,就会出现各种兼容性问题。
4、很难集成到DevOps管道中,因为CD阶段没有标准。
二、容器Container的组成
服务器-HostOS-RunTime-App
1、容器镜像因为不可变文件系统基于层级概念以及全球都遵循open container标准,他可以运行在任何地方。
2、因为都共享一个Linux内核,不会出现重复的GustOS消耗且APP依赖的Libs都打包在了镜像中节约了资源。
1、此时存在几个问题:
1、容器本质上是被namespace以及cgroup隔离和限制资源的进程。在容器之间的隔离相比虚拟机OS之前的安全性较差。
2、学习成本高