目录
十.Docker的架构(Docker architecture)
前言
通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。
虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。
Docker 是一个开源的应用容器引擎,基于go语言并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口的,更重要的是容器性能开销极低。
一.虚拟化概述
虚拟化:将应用程序和系统内核资源进行解耦,以操作系统级别进行隔离,目的是提高资源利用率
二.耦合与解耦合
耦合性是程序结构中各个模块之间相互关联的度量。它取决于各个模块之间的接口的复杂程度、调用模块的方式以及哪些信息通过接口。
1.耦合
耦合是指两个或两个以上的体系或两种运动形式间通过相互作用而彼此影响以至联合起来的现象。
对象之间的耦合度就是对象之间的依赖性。
对象之间的耦合越高,维护成本越高
2.解耦合
字面意思就是解除耦合关系。
在软件工程中,降低耦合度即可以理解为解耦,模块间有依赖关系必然存在耦合,理论上的绝对零耦合是做不到的,但可以通过一些现有的方法将耦合度降至最低。
三.虚拟化的作用
1.虚拟化节省了对IT硬件的投资
在虚拟化中,您将多个物理机转换为虚拟机,并将所有虚拟机转换为托管在单个(或少数)物理机上。这将减少您购买多个硬件资源的需求。通过这种方式,它可以集中您的运营环境,还可以显着节省购买硬件设备的投资成本。
2、虚拟化可以节省过多的电力成本
服务器,台式机和存储单元等设备必然会耗费大量电力来保持运行。但如果是虚拟化环境,从长远来看,能够节省大量的能源费用。
3、虚拟化具有更轻松,更具成本效益的维护
虚拟化基础架构可以节省人力和服务器生命周期维护费用。使用较少的物理服务器,手动配置,监视和维护的次数较少。物理服务器数量的减少还会降低硬件维护成本并增加可用的工作空间量。
4、虚拟化确保更好的可靠性和安全性
虚拟化通过使其更具流动性和上下文感知来提高安全性。使用基于软件的安全解决方案时,与传统的物理安全性相比,安全性变得更加准确,易于管理且部署成本更低。
虚拟化环境还可以节省IT基础架构中安全漏洞期间发生的意外成本,因为IT工作人员拥有的机器较少,而且基础设施较小。这使得解决安全威胁变得更加容易和快捷。
四.虚拟化工作原理
虚拟机管理器功能:调用资源
两大核心组件:QEMU、KVM
1.QEMU
QEMU是I/O控制的模块,可以理解为队列,核心目的是调用资源内核中的资源,需要把KVM逻辑分割出来的资源运输给QEMU,再给虚拟机。
QEMU它并不是直