初识容器技术

一、什么是容器

当一个应用程序组件变小变多,就不再适合使用虚拟机了,容器就是更好的解决方案。容器允许在容易太机器上运行多个服务,不仅给不同服务提供环境,并且让他们相互隔离。

容器中的进程相当于运行在宿主机操作系统上,容器中的进程与其他进程隔离。

二、虚拟机与容器

每个虚拟机需要运行的全套系统进程,会造成额外资源消耗,而容器更加轻量,因为他只是运行在宿主机上的一个被隔离的单独进程,仅消耗应用容器消耗的资源。

当主机上运行了三个虚拟机时,会有三个完全分离的操作系统,它们运行并共享一台裸机。宿主机操作系统与管理程序将物理硬件资源分成小份,以供每个虚拟机的操作系统使用。虚拟机里的应用汇执行虚拟机操作系统的系统调用,虚拟机内核可通过管理程序在宿主机执行x86命令。

        ps:管理程序有使用宿主机os和不使用宿主机os之分。

容器则完全执行运行在宿主机上的同一个内核的系统调用,这个内核是唯一一个在宿主机操作系统上执行x86指令的内核。

相比于容器,虚拟机提供完全隔离的环境,并且运行在自己的内核上,而容器则调用一个内核。

三、容器隔离机制

多个进程运行在一套操作系统上,需要有技术来实现隔离。

1、linux命名空间:每个进程只能看到自己的系统视图

linux最初只有一个命名空间,所有系统资源属于这个命名空间,但可以创建额外的命名空间,并且在它们之间组织资源。一个进程可以在其中一个命名空间运行,进程只能看见统一命名空间的资源。

进程都有自己的命名空间,因此只能看见自己的一组网络接口

2、linux控制组:限制进程使用的资源量。 

cgroup实现,这是一个linux内核功能,限制进程使用,使其不超过分配的量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值