一篇容器的前世今生说的清楚的文章
容器的前世今生 物理机
虚拟机 物理资源的限定和调度,设置指定VM的内存,cpu,硬盘根据应用来进行控制,方便扩展,欢迎可以统一化,方便管理。可以使物理资源的最大化利用。
虚拟机的局限性 每个虚拟机就是一个操作系统,每个操作系统都要分配对应的操作系统资源,大家都用window系统,真正的生产环境一般都是用linux操作系统其中一部分原因就是因为linux系统消耗资源比较少。如果在一个物理服务器上放入10个虚拟机,每个虚拟机系统占用1g资源,等于浪费了10g的内存资源。所以当操作系统越来越多的时候消耗在系统上的资源也就越来越大。 开发和运维面临的问题 上边是开发人员,下面是运维。 开发人员选择了不同语言和环境来进行开发,运维人员为了使应用正常的跑起来需要配置尽量和开发人员开发一样的环境来满足应用的正常使用。 开发人员/运维人员 容器解决了什么问题 docker进行了容器的打包,打包好的容器,可以运行在任何的环境,解决了开发和运维直接的矛盾。开发和运维之间建立了桥梁,这也是时间devops拿手的解决方案。 容器解决了什么 什么是容器 对软件和其依赖的标准化打包 应用之间相互隔离(肯定没有虚拟机和物理机隔离的那么完全) 共享同一个OS Kernel(同一个操作系统上) 可以运行在很多主流的操作系统上(unix,linux,windows等) 容器里面可以放入什么? 虚拟机和容器的区别 虚拟机是物理资源层面的隔离,容器是应用层面的隔离 虚拟化和容器的结合 在国内很多场景都是虚拟化和容器结合来使用的,将物理机进行虚拟化出来多个VM,在VM内部在使用容器化。 3个虚拟机,其中一个虚拟机里面跑这3个Docker
(编辑:ASP站长网) |