美文网首页
容器基础

容器基础

作者: 萧何爱英语 | 来源:发表于2019-03-07 00:33 被阅读0次

    什么是容器

    虚拟机 vs 容器

    • 传统虚拟机技术通过Hypervisor层抽象底层基础设施资源,提供相互隔离的虚拟机,在其上运行一个完整的操作系统,在该系统上再运行所需的应用进程
    • 容器是通过Linux内核技术对进程的资源,运行环境进行相对的限制和隔离,容器没有自己的内核,没有完整的操作系统,也没有对硬件虚拟化,所以更轻量化
    • 虚拟机是为提供系统环境而生,容器则是为提供应用环境

    性能对比

    特性 虚拟机 容器
    操作系统 非常广泛 Linux 为主
    隔离策略 Hypervisor Namespace
    启动时间 分钟级 秒级
    资源损耗 5-15% 0-5%
    镜像存储 GB-TB KB-MB
    集群规模 数百 近万

    思考:上面是现象结果,本质原因是什么?

    技术本质

    • 虚拟机的实现方式是对底层设备的抽象虚拟,实现方式是 Hypervisor,本质实际上是 CPU 等硬件的 VT 技术,使用 VMware/VirtualBox 一定要在 BIOS 里开启 VT 设置,GPU 目前虚拟化支持的不太好,公有云或 Kubernetes 的 GPU 都是独占的,即资源配置只能设置为个位数,不能有小数
    • 容器的实现方式是通过内核技术进行形式上的模拟,本质上容器还是一个进程,技术支撑是 Cgroup/Namespace/Capability,主要从资源限制,环境隔离,权限管理三个维度进行模拟

    为什么要用容器

    1. 更高效的利用系统资源 --- 性能损耗少,调度颗粒细
    2. 更快速的启动时间 --- 进程形式,秒级启动
    3. 一致的运行环境 --- 镜像
    4. 持续交付和部署
    5. 更轻松的迁移 --- 云原生目标,开箱即用,比IaaS更轻松
    6. 更轻松的维护和扩展

    总结:任何 IT 技术兴起都可从三个维度来分析:提高稳定性,提升效率,节省资源成本,基于云原生来说就是编排

    相关文章

      网友评论

          本文标题:容器基础

          本文链接:https://www.haomeiwen.com/subject/votqpqtx.html