这个问题比较广泛,一个个来回答。
问题一:容器云和openstack的网络差异。可以这么多,容器引擎发展到目前的阶段,在网络组件和功能的使用方面已经大大的简化,和openstack相比, Docker的网络更加简单。基于本章节所描述,docker的网络模式有五种, bridge桥接模式网络、 Host模式、 使用Open vSwitch(OVS)打通网络、 other container网络模式、 none模式,其中常用的是 bridge桥接模式网络和 Host模式,但是由于brige太过于简单,所以目前逐步在往switch的方面转移,功能和安全性也逐渐丰富。而 OpenStack的网络由于太复杂和不容易debug正在变得轻量化,更像是Docker的第一种组网方式,不过是多了一层Linux bridge,所以这两者的网络模式在趋于融合,技术栈也逐渐的在靠拢。
问题二:容器解决的主要场景有哪些,缺点是什么。 Docker相对于虚拟机来说的优势十分明显,那就是轻量和高性能和便捷性,是云计算的重要组成部分。主要优点有快、敏捷、轻量、便宜和有完善的生态。缺陷其实也明显,首先资源方面做不到完全的隔离,不过好在Linux内核经针对Container做了很多改进,以支持更好的隔离。第二个方面GO语言还没有完全成熟,Docker由 Go语言开发,但GO语言对大多数开发者来说比较陌生,而且还在不断改进,距离成熟还有一段时间。此半git、半包管理的方式让一些人产生不适。
问题三:未来容器云是否会取代openstack。个人觉得,不存在取代不取代的问题,双方的技术栈有一定的差异性,场景也存在差异化,很多场景不适合容器来部署,如数据库,IO密集型和CPU密集型的系统。 目前有几个可能看得到的方向,1.是把docker封装一层,变成类似kvm的虚拟机引擎。2.是把docker运行到openstack管理的虚拟机中。3.是把openstack用到的各个组件装到docker容器,方便部署。