• 虚拟化与容器区别


    虚拟化特点:

    1.虚拟化需要单独安装操作系统

    2.运行在R3中,与硬件交互通过vmm(Hypervisor)进行转换。

    3.目前主流的三种:

    • 全虚拟化(通过二进制翻译 R3指令交互到R0中的vmm由vmm将指令与硬件设备交互)对操作系统没有任何更改
    • 操作系统辅助的半虚拟化(直接将虚拟化主机系统运行于R0中与虚拟化层进行交互,可以提高效率改善性能)需要修改操作系统内核。
    • 硬件辅助虚拟化(cpu支持虚拟化,cpu支持多个系统工作Ring0,vmm工作在根模式下根模式是为了执行特定的cpu指令增加的模式)需要硬件支持

    4.使用两种镜像

    容器特点:

    1.容器不需要创建额外开销的系统(容器基础镜像相对于传统系统来说要小很多,因为在操作系统中分为bootfs,rootfs。大多数发行版的区别在于rootfs的不同包括etc bin root proc等目录,所以容器会共用宿主机bootfs文件。将镜像分成pull的时候一一加载进基础镜像的文件目录中,无依赖关系的称之为基础镜像。在其之上构建的分层镜像属于父子关系)

    2.容器的网络,pid,cgroup,mount namespace等都是通过linux内核中自带的namespace来实现(通过pid创建namespace将其他资源挂载到该pid中,pid之下的namespace中生成的子进程可以与其他pid之下的子进程号一样。所以k8s中监测的很重要一环就是pod中进程为0的程序,mount exec等操作都是/proc/父进程id/目录/ ,网络创建虚拟网卡并link到docker0中,docker0与etcd共享网络空间,通过nat实现对外通信。)

  • 相关阅读:
    【bzoj4399】魔法少女LJJ 并查集+权值线段树合并
    【bzoj4059】[Cerc2012]Non-boring sequences 分治
    【bzoj4390】[Usaco2015 dec]Max Flow LCA
    【bzoj4127】Abs 树链剖分+线段树
    【bzoj1222】[HNOI2001]产品加工 背包dp
    【bzoj4966】总统选举 随机化+线段树
    protected internal == internal
    框架的一点小随笔
    WPF 的 数据源属性 和 数据源
    Python 运算符重载
  • 原文地址:https://www.cnblogs.com/dahuige/p/15177429.html
Copyright © 2020-2023  润新知