W
e
l
c
o
m
e
: )

容器与虚拟化

1:什么是容器?

  容器就是在隔离的环境运行的一个进程,如果进程停止,容器就会销毁。隔离的环境拥有自己的系统文件,ip地址,主机名等

程序:

  代码,命令
进程:

  正在运行的程序,就是一个进程

 

2:容器和虚拟化的区别

  容器:共用宿主机内核,容器的第一个进程直接运行服务,损耗少,启动快,性能高

  kvm虚拟化: 需要硬件的支持,需要模拟硬件,可以运行不同的操作系统,启动时间分钟级(开机启动流程)

 

linux开机启动流程:

bios开机硬件自检
根据bios设置的优先启动项boot 网卡 硬盘 u盘 光驱
读取mbr引导 UEFI(gpt分区) mbr硬盘分区信息,内核加载路径
加载内核
启动第一个进程/sbin/init(centos6的第一个进程) systemd(centos7的第一个流程)
系统初始化完成
运行服务

容器的启动流程:

........
启动第一个进程/sbin/init(centos6的第一个进程) systemd(centos7的第一个流程) 系统初始化完成

容器虚拟化:不需要硬件的支持。不需要模拟硬件,共用宿主机的内核,启动时间秒级(没有开机启动流程)

总结:
(1)与宿主机使用同一个内核,性能损耗小;
(2)不需要指令级模拟;
(3)容器可以在CPU核心的本地运行指令,不需要任何专门的解释机制;
(4)避免了准虚拟化和系统调用替换中的复杂性;
(5)轻量级隔离,在隔离的同时还提供共享机制,以实现容器与宿主机的资源共享。

 

2):linux容器(lxc) linux container(namespaces 命名空间 隔离环境 及cgroups 资源限制)

cgroups 限制一个进程能够使用的资源。cpu,内存,硬盘io
kvm虚拟机:资源限制(1c 1G 20G)

了解就好!

 

posted @ 2020-02-07 16:35  水一RAR  阅读(190)  评论(0)    收藏  举报