Docker虚拟化概念

这篇具有很好参考价值的文章主要介绍了Docker虚拟化概念。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Docker虚拟化概念

1、虚拟化技术的概念

  • 虚拟化技术主要是将物理资源转变为逻辑上可以管理的资源;
  • 用以打破物理资源结构之间的壁垒;
  • 让计算的原件运行在虚拟的基础之上;而不是直接运行在硬件设备资源上;

说白了就是硬件资源转变成虚拟资源;

虚拟化技术的底层是要进行虚拟的硬件设备物理机,通过虚拟化技术可以将物理机虚拟生成N台虚拟机、应用程序、软件服务是运行在虚拟机上的,而不是直接运行在物理设备机上

应用程序:

  • Nginx、MySQL、Redis 、MQ、ZK、Kafka;

当下主流技术:

  • 虚拟化、:
    • -虚拟化技术允许一个平台同时运行多个操作系统,
    • 并且应用程序都可以在相互独立的空间内运行而互不影响,
    • 从而显著提高计算机的工作效率,是一个为了简化管理,优化资源的解决方案。
  • 云计算:
  • 大数据

2、虚拟化技术的意义

虚拟化技术主要是为了最大化利用高配硬件设备的资源,提供机器资源利用率;

  • 如果物理资源已经全部用完了,其他的程序就无法使用

可以对软件服务、进程资源进行隔离、限制;

  • 限制内存分配、硬盘、CPU的分配

可以淘汰老、旧服务器资源,对老、旧、服务器资源进行重组、重用、加快企业自动化运维&DevOps脚步进程

  • 硬件整合,

3、虚拟化技术的种类

  • VMware ESXI
    • VMware workstations:
    • vmware公司的产品
  • XEN
  • KVM:
    • 最终的产物就是虚拟环境、虚拟机
    • 用于业务,
    • 虚拟机也可以理解为云主机
  • Open-vz
  • Hyper-V:
    • 微软的虚拟化软件
  • Podman:
    • 比较火?就是docker 的命令?
    • 很相似–>掌握思想,学习思路
      • podman pull nginx
      • docker pull nginx
  • Docker:
    • Docker被淘汰了?
    • K8S不用docker用于底层管理;
    • 运维都很焦虑?

4、Docker简介

  • Docker 是众多虚拟化技术中的一种,是目前企业中使用最多的虚拟化技术软件;
  • Docker是一款轻量级、高性能的虚拟化技术,是目前互联网使用最多的虚拟化技术
  • Docker虚拟化 是一个开源的应用容器引擎,
  • Docker容器是完全使用沙箱机制,相互之间不会有任何接口,几乎没有性能开销,可以很容易地在机器和数据中心中运行
  • Docker的基础是 Linux 容器(LXC)等技术。

5、Docker虚拟化技术特点:

  • 轻量级、高性能、安全、稳定、管理方便;
  • Docker虚拟化技术的产物就是Docker容器;
  • 那么Docker容器与KVM的虚拟机有什么不同?
    • Docker容器也被称为轻量级的虚拟机,
    • 比传统的KVM虚拟机更加轻巧
  • 容器共享宿主机的资源、内核
  • 不管是什么的虚拟化技术都会共享宿主机的资源;

6、Docker架构:

  • Server(硬件资源)–>Host OS(宿主机操作系统)–>VMware(虚拟软件)–>APP(应用服务)
  • 效率高,启动快
  • 轻量级虚拟化:
  • 开源免费
    • Docker虚拟化技术是在硬件的基础上,基于现有的操作系统层面上实现虚拟化,直接复用本地主机的操作系统,直接虚拟生成Docker容器,
    • Docker容器上部署相关的APP应用(Apache、MYSQL、PHP、JAVA)。
  • Docker虚拟化的优点:
    • 操作启动快
    • 轻量级虚拟化
    • 开源免费
    • 前景好,云支持多
  • Docker虚拟化的缺点
    • 难度高、技术资料不多;
    • Go语言还没有完全成熟;

Docker虚拟化概念

传统虚拟化架构:

  • Server(硬件资源)–>Host OS(宿主机操作系统)–>VMware(虚拟软件)–>Guest OS(虚拟机系统)–>APP(应用服务)
  • 完全虚拟化技术
  • 半虚拟化技术
    • KVM、XEN、ESXI传统虚拟化(完全、半虚拟化)是在硬件的基础上,
    • 基于现有的操作系统层面上实现虚拟化,但是不能复用本地主机的操作系统
    • 而是必须虚拟出自己的Guest OS系统,
    • 然后在Guest OS系统上部署相关的APP应用(Apache、MYSQL、PHP、JAVA)。

Docker虚拟化概念

什么是LXC技术?

  • LXC(Linux Container)linux容器概念
    • LXC是基于是内核级的虚拟化技术

7、Docker 虚拟化技术结构:

  • LXC(Linux Container)+AUFS(Another Union File System)结构组合
  • Docker虚拟化技术是在LXC技术上进一步的封装提供了一系列完整的功能
    • LXC主要负责资源管理
    • AUFS主要负责镜像管理
    • LXC包括Cgroup、NameSpace、Chroot等组件,并通过Cgroup进行资源管理。
  • Docker、LXC、Cgroup三者的关系
    • Cgroup在最底层落实资源管理,
      • Cgroups又名Control groups,是Linux内核提供的一种可以限制、记录、隔离进程组所使用的物理资源(CPU、 Memory、IO、NET)的机制。
    • LXC在cgroup上封装了一层,
      • Linux Container容器技术可以提供轻量级的虚拟化,以便隔离进程和资源
      • LXC是建立在CGroup基础上,可以理解为:LXC = Cgroup+ namespace + Chroot + veth +用户态控制脚本
    • Docker又在LXC封装了一层
      • Docker容器的文件系统最早是建立在Aufs基础上的

Aufs文件系统

  • Aufs将挂载到同一虚拟文件系统下的多个目录分别设置成read-only,read-write以及whiteout-able权限
    • read-only:只读权限
    • read-write以:写操作
    • whiteout-able:

Device Mapper文件系统

  • Device Mapper 是 Linux2.6 内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。
  • 内核架构:
    • Device Mapper 进一步体现了在 Linux 内核设计中策略和机制分离的原则,
    • 将所有与策略相关的工作放到用户空间完成,
    • 内核中主要提供完成这些策略所需要的机制。
    • Device mapper 用户空间相关部分主要负责配置具体的策略和控制逻辑,
    • 整个Device Mapper机制由两部分组成-内核空间的Device mapper 驱动、用户空间的Device mapper 库以及它提供的Dmsetup工具。

OverlayFS文件系统

  • OverlayFS是目前使用比较广泛的层次文件系统,是一种类似Aufs的一种堆叠文件系统
  • Docker虚拟化Overlay存储驱动利用了很多OverlayFS特性来构建和管理镜像与容器的磁盘结构
  • 在真实使用中,OverlayFS代表整个文件系统,而Overlay/Overlay2表示Docker的存储驱动

Docker引擎架构

  • docker引擎是一个C/S结构的应用;
    • Docker使用C/S架构,Client 通过接口与Server进程通信实现容器的构建,运行和发布

8、Docker的三大概念:

  • Docker镜像、
    • Docker虚拟化最基础的组件为镜像
    • Docker镜像是静止的、只读的,不能对镜像进行写操作。
  • Docker容器、
    • Docker容器是Docker虚拟化的产物
    • 基于镜像运行,并且在镜像最上层添加一层容器层之后的实体,容器层是可读、可写的
  • Docker仓库
    • Docker仓库是用于存放Docker镜像的地方,
    • Docker仓库分为两类:
      • 公共仓库(Public)
      • 私有仓库(Private)

Docker镜像原理:

  • Docker镜像是分层的;有多个层级组成;每个层级实现某个功能;
    • Docker镜像是分层的,由多个层级组成
    • 编写Dockerfile和基于容器Commit实现镜像制作
    • Docker引擎默认通过镜像ID来识别镜像;
    • 每个镜像层都是只读,即使启动成容器
  • Docker容器是一个或者是多个运行的进程,
    • 消耗CPU、内存的资源
    • json文件可以反映运行的进程;

Docker组件说明文章来源地址https://www.toymoban.com/news/detail-452502.html

  • Docker Server是一个常驻进程
  • REST API 实现了client和server间的交互协议
  • Docker CLI 实现容器和镜像的管理,为用户提供统一的操作界面;
  • Images为容器提供了统一的软件、文件底层存储;
  • Container是Docker虚拟化的产物,直接作为生产使用;
  • Network为Docker容器提供完整网络通信;
  • Volume为Docker容器提供额外磁盘、文件存储对象。

到了这里,关于Docker虚拟化概念的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker容器与虚拟化技术:Docker架构、镜像管理

    目录 一、理论 1.Doker概述 2.Docker核心概念 3.Docker安装 4.Docker的镜像管理命令 二、实验 1.Docker安装 2.查看Docker信息 3.Docker的镜像管理命令 三、问题 1.如何注册Docker账号  2.如何设置Docker公共存储库 四、总结 (1) IT架构 裸金属 → 虚拟机 → 容器→ 函数化、代码化 云计算涌现出很

    2024年02月13日
    浏览(52)
  • Docker容器与虚拟化技术:Docker架构、镜像操作

    目录 一、理论 1.Doker概述 2.Docker核心概念 3.Docker安装 4.Docker的镜像管理命令 二、实验 1.Docker安装 2.查看Docker信息 3.Docker的镜像管理命令 三、问题 1.如何注册Docker账号  2.如何设置Docker公共存储库 四、总结 (1) IT架构 裸金属 → 虚拟机 → 容器→ 函数化、代码化 云计算涌现出很

    2024年02月10日
    浏览(54)
  • 【玩转Docker小鲸鱼叭】虚拟化技术简介

    Docker 是一款基于容器虚拟化技术构建的软件,那到底什么虚拟化技术呢?在学习 Docker 之前,先简单了解下虚拟化技术。 虚拟化是云原生的实现基础,它能够帮助我们更加有效地利用物理计算机硬件。 虚拟化技术 是一种将物理资源抽象为虚拟资源,并将虚拟的计算机资源提

    2024年02月10日
    浏览(43)
  • 1-Docker虚拟化平台技术概述及简介

    通俗的说,虚拟化就是把物理资源转变为逻辑上可以管理的资源,以打破物理结构间的壁垒,计算元件运行在虚拟的基础上而不是真实的基础上,可以扩大硬件的容量,简化软件的重新配置过程。允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内

    2024年02月06日
    浏览(46)
  • Docker容器与虚拟化技术:Docker-Compose

    目录 一、理论 1.Docker-Compose 二、实验 1. Docker Compose 安装部署 2.Docker Compose撰写nginx 镜像 3.Docker Compose撰写tomcat 镜像 三、问题 1.Docker Compose 和 Dockerfile 的区别 四、总结 (1)使用场景 使用一个Dockerfile模板文件可以定义一个单独的应用容器,如果需要定义多个容器就需要服务

    2024年02月12日
    浏览(51)
  • Docker容器与虚拟化技术:Docker compose部署LNMP

    目录    一、理论 1.LNMP架构 2.背景 3.Dockerfile部署LNMP 3.准备Nginx镜像 4.准备MySQL容器 5.准备PHP镜像 6.上传wordpress软件包 7.编写docker-compose.yml 8.构建与运行docker-compose 9.启动 wordpress 服务  10.浏览器访问 11.将运行中的 docker容器保存为 docker 镜像并保存到本地tar包 二、实验  1.环境

    2024年02月11日
    浏览(45)
  • Docker容器与虚拟化技术:Docker镜像创建、Dockerfile实例

    目录 一、理论 1.Docker镜像的创建方法 2.Docker镜像结构的分层 3.Dockerfile 案例 4.构建Systemctl镜像(基于SSH镜像) 5.构建Tomcat 镜像 6.构建Mysql镜像 二、实验 1.Docker镜像的创建 2. Dockerfile 案例 3.构建Systemctl镜像(基于SSH镜像) 三、问题 1.nginx网页打不开  2.Apache容器启动一直为Ex

    2024年02月12日
    浏览(67)
  • Docker容器与虚拟化技术:Dockerfile部署LNMP

    目录 一、理论 1.LNMP架构 2.背景 3.Dockerfile部署LNMP 3.构建Nginx镜像 4.构建MySQL容器 5.构建PHP镜像 6.启动 wordpress 服务  二、实验  1.环境准备 2.构建Nginx镜像 3.构建MySQL容器 4.构建PHP镜像 5.启动 wordpress 服务  三、问题 1.构建nginx镜像报错 2.构建php镜像报错 2.生成PHP镜像一直为Exit

    2024年02月04日
    浏览(52)
  • 【Docker】Docker中Linux 容器、网络虚拟化与虚拟局域网的技术特点详细讲解

    前言 Docker 是一个 开源的应用容器引擎 ,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux或Windows 操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 📕作者简介: 热爱跑步的恒川 ,致力于

    2024年02月09日
    浏览(49)
  • Docker容器与虚拟化技术:Docker consul 实现服务注册与发现

    目录 一、理论 1.Docker consul 二、实验 1.consul部署 2. consul-template部署 三、总结 (1)服务注册与发现 服务注册与发现是微服务架构中不可或缺的重要组件。起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。直到后来出现

    2024年02月11日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包