1)容器技术介绍

1)容器技术介绍

[!important] 重点

  • 容器技术的核心不是“轻量虚拟机”,而是进程隔离、资源限制和镜像分发组合出来的运行环境。
  • 先把容器要解决的问题拆清楚:环境一致性、交付速度、资源利用率和应用隔离。

1 什么是容器技术

容器技术的本质其实就是一种轻量级的虚拟化解决方案

2 容器技术的诞生是为了解决什么问题的?容器技术的发展历程是什么?

====》单机时代
特点:一个计算机硬件之上只能启动/运行一个操作系统
问题:如何提升单机的资源使用
解决:
计算机硬件---》操作系统----》运行多个应用程序

新问题:
操作系统---》篮子
应用程序---》鸡蛋
此时就相当于把所有鸡蛋都放到了一个篮子里
一旦操作系统挂掉,则其上运行的所有应用程序都会一起挂掉,可用差

如何解决(如何提升可用性)?

====》集群时代
特点:一个计算机硬件之上只能启动/运行一个操作系统,但是多台计算机硬件构成一个集群

要有多个篮子,然后把鸡蛋放到不同的篮子里,那如何创建出多个篮子

解决:
计算机硬件1---》操作系统----》应用1,应用2
计算机硬件2---》操作系统----》应用3,应用4
计算机硬件3---》操作系统----》应用5

陷入了一个两难的境地:
1、单机时代,为了提升单机资源利用率,在一个机器上运行更多应用程序,导致可用性变差
2、集群时代,为了提升可用性,采用多台机器,每台机器有一个独立的操作系统,
鸡蛋可以分散到不同的篮子里,可用性提升,导致单机资源利用率又不足

梳理现在的诉求:
1、提升单机资源利用率
2、提升可用性:不同的应用程序要放到自己的独立操作系统里,不要都放在一起

====》虚拟化时代
特点:一个计算机硬件之上可以运行多个虚拟机,每个虚拟机里运行隔离独立且完整的操作系统,多个机器构成一个集群

总结虚拟化技术的精髓就是虚拟机,虚拟机实现的效果:
1、隔离
2、限定虚拟机对资源的使用,不要干扰其他虚拟机
ps:虚拟化技术实现资源限制的思路是通过在创建虚拟机时,提前设定好虚拟机硬件的资源指标

常见的虚拟化技术:
1、kvm
2、exsi
3、xen

问题:
虚拟机太臃肿了,不够轻量级,对于一台虚拟机来说,除了应用程序耗费的资源之外
虚拟机本身也会占用很多资源

====》容器时代

容器技术需要实现
1、隔离:namespace
2、限定容器对资源的使用,不要干扰其他容器:cgroup

3、UnionFS联合文件系统

补充:一个完整的操作系统大致分为两大部分:
1、bootfs:内核、启动文件
2、rootfs:文件系统

posted @ 2026-07-12 14:27  是绘梨衣呀  阅读(1)  评论(0)    收藏  举报