容器和VMM(Hypervisor或VMM,Virtual Machine Monitor)的对比:
容器:操作系统层虚拟化,把应用和运行库打包在一起。
1.占用资源少,启动快速:没有运行Guest OS所需的内存开销,无需为虚拟机预留运行内存,无需安装、运行App不需要的运行库/操作系统服务,内存占用、存储空间占用都小的多。
2.共用内核,应用之间的隔离是不如虚拟机彻底,如果某个应用运行时导致内核崩溃,所有的容器都会崩溃。而虚拟机内的应用崩溃,理论上是不会影响其它虚拟机上的应用。
VMM:硬件虚拟化,在模拟的硬件上设置完整的操作系统。要把虚拟硬件初始化。
linux采用宏内核,且内核和各种运行库耦合松散,很方便实现容器不同。
Windows采用微内核,且内核与各种运行库耦合紧密,容器支持差。
Docker技术的三大核心概念:镜像(Image)、容器(Container)、仓库(Repository)
K8S是管理容器集群的平台,全称是kubernetes。