Docker技术入门与实战(第2版)1.3 Docker与虚拟化
虚拟化(Virtualization)技术是一个通用的概念,在不同领域有不同的理解。在计算领域,一般指的是计算虚拟化(Computing Virtualization),或通常说的服务器虚拟化。维基百科上的定义如下:“虚拟化是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。”
可见,虚拟化的核心是对资源的抽象,目标往往是为了在同一个主机上同时运行多个系统或应用,从而提高系统资源的利用率,并且带来降低成本、方便管理和容错容灾等好处。
从大类上分,虚拟化技术可分为基于硬件的虚拟化和基于软件的虚拟化。其中,真正意义上的基于硬件的虚拟化技术不多见,少数如网卡中的单根多IO虚拟化(Single Root I/O Virtualization and Sharing Specif?ication,SR-IOV)等技术,也超出了本书的讨论范畴。
基于软件的虚拟化从对象所在的层次,又可以分为应用虚拟化和平台虚拟化(通常说的虚拟机技术即属于这个范畴)。其中,前者一般指的是一些模拟设备或诸如Wine这样的软件。后者又可以细分为如下几个子类:
完全虚拟化。虚拟机模拟完整的底层硬件环境和特权指令的执行过程,客户操作系统无需进行修改。例如IBM p和z系列的虚拟化、VMware Workstation、VirtualBox、QEMU等。
硬件辅助虚拟化。利用硬件(主要是CPU)辅助支持(目前x86体系结构上可用的硬件辅助虚拟化技术包括Intel-VT和AMD-V)处理敏感指令来实现完全虚拟化的功能,客户操作系统无需修改,例如VMware Workstation、Xen、KVM。
部分虚拟化。只针对部分硬件资源进行虚拟化,客户操作系统需要进行修改。现在有些虚拟化技术的早期版本仅支持部分虚拟化。
准虚拟化(paravirtualization)。部分硬件接口以软件的形式提供给客户机操作系统,客户操作系统需要进行修改,例如早期的Xen。
操作系统级虚拟化。内核通过创建多个虚拟的操作系统实例(内核和库)来隔离不同的进程。容器相关技术即在这个范畴。
可见,Docker以及其他容器技术,都属于操作系统虚拟化这个范畴,操作系统虚拟化最大的特点就是不需要额外的supervisor支持。
Docker虚拟化方式之所以有众多优势,这与操作系统虚拟化技术自身的设计和实现是分不开的。
图1-2比较了Docker和常见的虚拟化方式的不同之处。
图1-2 Docker和传统的虚拟化方式的不同之处
传统方式是在硬件层面实现虚拟化,需要有额外的虚拟机管理应用和虚拟机操作系统层。Docker容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,因此更加轻量级。
《4天实战 轻松玩转docker》电子版下载 docker原理及在运维工作的地位和作用,运维工作进化论,docker、微服务、k8s的联系,devops和docker的关系,docker的前世今生。容器,镜像和仓库,容器和虚拟化,优势和劣势,底层核心;容器除了docker还有什么其他选择?docker的安装及三大核心:容器、镜像、仓库。
《4天实战 轻松玩转docker》电子版下载 docker原理及在运维工作的地位和作用,运维工作进化论,docker、微服务、k8s的联系,devops和docker的关系,docker的前世今生。容器,镜像和仓库,容器和虚拟化,优势和劣势,底层核心;容器除了docker还有什么其他选择?docker的安装及三大核心:容器、镜像、仓库。
《4天实战 轻松玩转docker》电子版 docker原理及在运维工作的地位和作用,运维工作进化论,docker、微服务、k8s的联系,devops和docker的关系,docker的前世今生。容器,镜像和仓库,容器和虚拟化,优势和劣势,底层核心;容器除了docker还有什么其他选择?docker的安装及三大核心:容器、镜像、仓库。
Docker命令实战 [root@localhost ~]# docker run --name=myningx -d nginx # 参数 -d 后台运行 # --name=[name] 指定容器名 # --restart=always 开机自启 # -p 88:80 74dc526cc20b617c5a1a49d56a679139109d45f5f56d1756e1ca6d2d49d513b4
阿里P8携手腾讯T4谈微服务架构实战:深入浅出Cloud+boot+Docker 微服务”架构在这几年被广泛传播,变得非常火热,以至于关于微服务架构相关的开源框架和工具都变得越来越活跃,比如: Netflix OSS. Dubbo. Apache Thrift等。Spring Cloud也因为Spring社区在企业应用领域的广泛知名度和强大影响力,受到了广大架构师与开发者的高度关注。
相关文章
- Docker入门之四搭建私有仓库
- 【Docker异常】docker-compose up throw UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 97: ordinal not in range(128)
- 【Docker】docker的安装和常用命令
- Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- GitLab - 以Docker方式启动GitLab
- GitLab - 以Docker方式启动GitLab
- Docker - 构建镜像:使用docker commit命令
- Docker 安装:入门案例带你了解容器技术原理
- 【docker】Docker快速入门总结笔记(命令大全)
- 【华为云技术分享】Docker容器+Phoronix-Test-Suite测试X86和ARM的ffmpeg转码性能
- 79.第十七章 企业级容器技术docker -- Docker 镜像制作和管理、Docker 数据管理(七)
- y24.第二章 Docker从入门到精通 -- docker镜像制作和管理(六)
- 【云原生之Docker实战】使用docker部署DokuWiki知识库系统
- 【云原生之Docker实战】使用docker部署mkdocs项目文档工具
- 【云原生之Docker实战】使用docker部署IT资产管理系统GLPI
- 【云原生之Docker实战】使用docker部署nginx服务
- Docker容器的使用方法
- Docker使用pipework配置本地网络
- Docker----对已经存在的docker如何修改时区
- Docker技术----docker-compose实战----快速搭建WordPress博客系统
- Docker学习笔记16:docker实例之安装 Nginx
- Docker学习笔记09:docker使用之容器连接
- s20.基于 Kubernetes v1.25 (kubeadm) 和 Docker 部署高可用集群(二)
- Docker学习笔记(五):Dockerfile生成历史查询、修改docker容器编码格式
- 云原生之部署Docker可视化管理工具docker.ui