01-docker容器技术基础入门

首先,我们将传统的虚拟化和容器架构相比较,如下:
在这里插入图片描述
虚拟化分类:

  • 主机级虚拟化:

    Type-I:直接在硬件平台上面张一个虚拟机管理器(hypivisor),然后在hypvisiror上面安装虚拟机
    Tyoe-II:在硬件宿主机上面安装操作系统,然后安装hypirvisiror,然后在hypvisiror上面安装虚拟机
    需要隔离的资源:UTS(主机机域名,k可以以名称空间为单位隔离),Mount(文件系统),IPC,PID(进程),User,Net,这六种资源可以通过linux内核中的namespace来隔离:
    在这里插入图片描述

  • 容器级虚拟化:

    • Cgroups:资源限制

    • LXC(linux container)

      门槛:学会LXC工具,还要定制template,批量创建容器不容易,
      好处:可以让每个用户空间进程使用宿主机,相比虚拟机,中间减少了不必要的开销。
      于是,后来出现了docker,严格来说docker是LXC的增强版,或者叫二次封装发行版。

    • Docker与LXC解决了:

      ① 创建容器时,不用之前LXC的template技术,而是用镜像技术,将所需要的一些资源打包成镜像,然后用镜像起容器,类似于kvm技术;
      ②docker是一个容器里面就运行一个进程,而LXC是把一个容器当用户空间,里面可以运行多个进程;
      ③docker容器技术的出现,大大降低了软件开发的难度,是研发人员的福音,但却是运维人员的噩梦。

    • Docker

      每个image都是read-only,所以,最底下的base镜像可以被多个容器共享的;
      Docker 编排工具:
      Swarm + compose :docker 公司自己的,swarm是多集群,compose是单机的;
      Mesos+marathon:
      K8s:目前最流行容器编排工具。

  • 总结
    所以流行出一句话:docker公司已死,但是docker技术永生。就是来说,docker 一手好牌,但是docker 在容器编排领域毫无建树,但是docker技术已经流行起来。下一篇。让我们实实在在开始玩起docker。

猜你喜欢

转载自blog.csdn.net/weixin_38753143/article/details/98506635