云计算(典藏版)课件 第6章 虚拟化技术_第1页
云计算(典藏版)课件 第6章 虚拟化技术_第2页
云计算(典藏版)课件 第6章 虚拟化技术_第3页
云计算(典藏版)课件 第6章 虚拟化技术_第4页
云计算(典藏版)课件 第6章 虚拟化技术_第5页
已阅读5页,还剩140页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章虚拟化技术6.1

虚拟化技术简介6.2服务器虚拟化6.3存储虚拟化6.4网络虚拟化of311习题6.5桌面虚拟化高级人工智能人才培养丛书6.6

OpenStack开源虚拟化平台6.7超融合技术6.1虚拟化技术简介第六章虚拟化技术of31220世纪60年代IBM公司推出虚拟化技术主要用于当时的IBM大型机的服务器虚拟化虚拟化技术的核心思想是利用软件或固件管理程序构成虚拟化层,把物理资源映射为虚拟资源。在虚拟资源上可以安装和部署多个虚拟机,实现多用户共享物理资源。6.1虚拟化技术简介第六章虚拟化技术of313虚拟化技术是伴随着计算机的出现而产生和发展起来的,虚拟化意味着对计算机资源的抽象。虚拟化技术已经成为构建云计算环境的一项关键技术。服务器虚拟化存储虚拟化网络虚拟化桌面虚拟化6.1虚拟化技术简介第六章虚拟化技术of314数据中心云计算技术规模不断增大成本逐渐上升管理日趋复杂6.1虚拟化技术简介第六章虚拟化技术of315采用了多种技术业务之间孤立网络结构复杂传统的数据中心高速扁平虚拟化虚拟数据中心6.1虚拟化技术简介第六章虚拟化技术of316实现资源的动态分配和调度,提高现有资源的利用率和服务可靠性提供自动化的服务开通能力,降低运维成本具有有效的安全机制和可靠性机制,满足公众客户和企业客户的安全需求方便系统升级、迁移和改造随着云计算的发展,传统的数据中心逐渐过渡到虚拟化数据中心,即采用虚拟化技术将原来数据中心的物理资源进行抽象整合。6.1虚拟化技术简介第六章虚拟化技术of317数据中心的虚拟化服务器虚拟化存储虚拟化网络虚拟化将一个或多个物理服务器虚拟成多个逻辑上的服务器把分布的异构存储设备统一为一个或几个大的存储池在底层物理网络和网络用户之间增加一个抽象层第六章虚拟化技术6.1

虚拟化技术简介6.2服务器虚拟化6.3存储虚拟化6.4网络虚拟化of318习题6.5桌面虚拟化高级人工智能人才培养丛书6.6

OpenStack开源虚拟化平台6.7超融合技术6.2

服务器虚拟化第六章虚拟化技术of3196.2.5案例分析6.2.4隔离技术6.2.3虚拟机迁移6.2.2服务器虚拟化的底层实现6.2.1服务器虚拟化的层次6.2.1服务器虚拟化的层次-寄居虚拟化第六章虚拟化技术of3110图6-1寄居虚拟化架构客户虚拟机客户虚拟机客户虚拟机虚拟机管理器(VMM)主机操作系统物理机(底层硬件)寄居虚拟化的虚拟化层一般称为虚拟机监控器(VMM)这类虚拟化架构系统损耗比较大就操作系统层的虚拟化而言,没有独立的Hypervisor层如果使用操作系统层虚拟化,所有虚拟服务器必须运行同一操作系统6.2.1服务器虚拟化的层次-裸机虚拟化第六章虚拟化技术of3111图7-2裸机虚拟化架构客户虚拟机客户虚拟机客户虚拟机Hypervisor物理机(底层硬件)架构中的VMM也可以认为是一个操作系统,一般称为HypervisorHypervisor实现从虚拟资源到物理资源的映射Hypervisor实现了不同虚拟机的运行上下文保护与切换,保证了各个客户虚拟系统的有效隔离6.2.1服务器虚拟化的层次第六章虚拟化技术of3112完全虚拟化具有很好的兼容性,在服务器虚拟化中得到广泛应用。半虚拟化技术降低了由于虚拟化而引入的系统性能损失。完全虚拟化VMM无法直接捕获特权指令解决方案半虚拟化6.2

服务器虚拟化第六章虚拟化技术of31136.2.5案例分析6.2.4隔离技术6.2.3虚拟机迁移6.2.2服务器虚拟化的底层实现6.2.1服务器虚拟化的层次6.2.2服务器虚拟化的底层实现-CPU虚拟化第六章虚拟化技术of3114虚拟CPU的正确运行是要保证虚拟机指令正确运行,现有的实现技术包括模拟执行和监控执行调度问题是指VMM决定当前哪个虚拟CPU在物理CPU上运行,要保证隔离性、公平性和性能。物理CPU虚拟CPU抽象客户操作系统物理CPU虚拟CPU抽象物理CPU虚拟CPU抽象126.2.2服务器虚拟化的底层实现-内存虚拟化第六章虚拟化技术of3115内存虚拟化技术把物理内存统一管理,包装成多个虚拟的物理内存提供给若干虚拟机使用,每个虚拟机拥有各自独立的内存空间。机器地址虚拟内存的管理包括3种地址物理地址虚拟地址6.2.2服务器虚拟化的底层实现-I/O设备虚拟化第六章虚拟化技术of3116I/O设备虚拟化技术把真实的设备统一管理起来,包装成多个虚拟设备给若干个虚拟机使用,响应每个虚拟机的设备访问请求和I/O请求。I/O设备虚拟化同样是由VMM进行管理的全虚拟化半虚拟化软件模拟6.2

服务器虚拟化第六章虚拟化技术of31176.2.5案例分析6.2.4隔离技术6.2.3虚拟机迁移6.2.2服务器虚拟化的底层实现6.2.1服务器虚拟化的层次6.2.3虚拟机迁移第六章虚拟化技术of3118虚拟机迁移是将虚拟机实例从源宿主机迁移到目标宿主机,并且在目标宿主机上能够将虚拟机运行状态恢复到其在迁移之前相同的状态,以便能够继续完成应用程序的任务。从虚拟机迁移的源与目的地角度可分为物理机到虚拟机的迁移(P2V)虚拟机到虚拟机的迁移(V2V)虚拟机到物理机的迁移(V2P)6.2.3虚拟机迁移第六章虚拟化技术of3119云计算中心的物理服务器有时候需要定期进行升级维护,当升级维护服务器时,管理员可以将其上面的虚拟机迁移到其他服务器,等升级维护完成之后,再把虚拟机迁移回来实时迁移(LiveMigration),就是保持虚拟机运行的同时,把它从一个计算机迁移到另一个计算机,并在目的计算机恢复运行的技术。云计算中心的物理服务器负载经常处于动态变化中,当一台物理服务器负载过大时,若此刻不可能提供额外的物理服务器,管理员可以将其上面的虚拟机迁移到其他服务器,达到负载平衡第二第一6.2.3虚拟机迁移第六章虚拟化技术of3120硬件HypervisorVMVM硬件HypervisorVMVM服务器1服务器26.2.3虚拟机迁移-迁移步骤第六章虚拟化技术of3121步骤1预迁移(Pre-Migration)步骤2预定资源(Reservation)步骤3预复制(InterativePre-Copy)步骤4停机复制(Stop-and-Copy)步骤5提交(Commitment)步骤6启动(Activation)6.2.3虚拟机迁移-内存迁移第六章虚拟化技术of3122第一阶段,Push阶段。第二阶段,Stop-and-Copy阶段。第三阶段,Pull阶段。实际上,迁移内存没有必要同时包含上述三个阶段,目前大部分的迁移策略只包含其中的一个或者两个阶段。内存的迁移是虚拟机迁移最困难的部分6.2.3虚拟机迁移-内存迁移第六章虚拟化技术of3123迁移方案优势与劣势Stop-and-Copy方法比较简单总迁移时间也最短停机时间无法接受Stop-and-Copy和Pull阶段结合停机时间很短总迁移时间很长Pull阶段复制造成的性能下降Push和Stop-and-Copy阶段结合平衡了停机时间和总迁移时间之间的矛盾需要有一种算法能够测定工作集,以避免反复重传可能会占用大量的网络带宽,对其他服务造成影响6.2.3虚拟机迁移-网络资源迁移第六章虚拟化技术of3124虚拟机这种系统级别的封装方式意味着迁移时VM的所有网络设备,包括协议状态(如TCP连接状态)以及IP地址都要随之一起迁移。在局域网内,可以通过发送ARP重定向包,将VM的IP地址与目的机器的MAC地址相绑定,之后的所有包就可以发送到目的机器上。6.2.3虚拟机迁移-存储设备迁移第六章虚拟化技术of3125迁移存储设备的最大障碍在于需要占用大量时间和网络带宽,通常的解决办法是以共享的方式共享数据和文件系统,而非真正迁移。目前大多数集群使用NAS(NetworkAttachedStorage,网络连接存储)作为存储设备共享数据。NAS实际上是一个带有瘦服务器的存储设备,其作用类似于一个专用的文件服务器。在局域网环境下,NAS已经完全可以实现异构平台之间,如NT、UNIX等的数据级共享。基于以上的考虑,Xen并没有实现存储设备的迁移,实时迁移的对象必须共享文件系统。6.2

服务器虚拟化第六章虚拟化技术of31266.2.5案例分析6.2.4隔离技术6.2.3虚拟机迁移6.2.2服务器虚拟化的底层实现6.2.1服务器虚拟化的层次6.2.4隔离技术第六章虚拟化技术of3127虚拟机隔离是指虚拟机之间在没有授权许可的情况下,互相之间不可通信、不可联系的一种技术。软件角度硬件角度网络角度互相隔离的虚拟机之间保持独立,如同一个完整的计算机被隔离的虚拟机相当于一台物理机,有自己的CPU、内存、硬盘、I/O等,它与宿主机之间保持互相独立的状态被隔离的虚拟机如同物理机一样,既可以对外提供网络服务,也一样可以从外界接受网络服务6.2.4隔离技术-内存隔离第六章虚拟化技术of3128管理虚拟存储器的控制线路管理物理存储器的控制线路负责将虚拟地址映射为物理地址提供硬件机制的内存访问授权MMUMemoryManagementUnit6.2.4隔离技术-内存隔离第六章虚拟化技术of3129虚拟内存与机器内存的映射关系虚拟内存伪物理内存机器内存Xen将这层中间地址真正地映射到机器地址上却可以是不连续的,这样保证了所有的物理内存可被任意分配给不同的GuestOS6.2.4隔离技术-内存隔离第六章虚拟化技术of3130虚拟机监控器使用分段和分页机制对自身的物理内存进行保护。x86体系结构提供了支持分段机制的虚拟内存,这能够提供另一种形式的特权级分离。基址段限属性位基址和虚拟地址相加形成线性地址段限决定了这个段中所能访问的线性空间的长度属性位则标记了该段是否可读写,可执行,是代码段还是数据段等6.2.4隔离技术-网络隔离第六章虚拟化技术of3131在于系统对通信数据的控制即通过不可路由的协议来完成网间的数据交换关键机密性完整性可用性可控性抗抵赖安全要素访问控制身份认证加密签名安全机制6.2.4隔离技术-网络隔离第六章虚拟化技术of3132实现原理专用通信设备专有安全协议加密验证机制应用层数据提取和鉴别认证技术不同安全级别网络之间的数据交换彻底阻断了网络间的直接TCP/IP连接保证了网间数据交换的安全、可控杜绝了由于操作系统和网络协议自身漏洞带来的安全风险6.2

服务器虚拟化第六章虚拟化技术of31336.2.5案例分析6.2.4隔离技术6.2.3虚拟机迁移6.2.2服务器虚拟化的底层实现6.2.1服务器虚拟化的层次6.2.5案例分析第六章虚拟化技术of3134VMware云基础架构及管理云应用平台终端用户计算企业级组织机构云计算环境虚拟机迁移工具VMotion存储迁移工具StorageVMotionVMware公司推出了面向云计算的一系列产品和解决方案……数据中心服务器虚拟化技术6.2.5案例分析-VMotion第六章虚拟化技术of3135VMotion是VMware用于在数据中心的服务器之间进行虚拟机迁移的技术。虚拟机迁移过程中主要采用三项技术:①将虚拟机状态信息压缩存储在共享存储器的文件中②将虚拟机的动态内存和执行状态通过高速网络在源ESX服务器和目标ESX服务器之间快速传输③虚拟化网络以确保在迁移后虚拟机的网络身份和连接能保留6.2.5案例分析-VMwareStorageVMotion第六章虚拟化技术of3136VMwareStorageVMotion用于实时迁移虚拟机磁盘文件,以便满足对虚拟机磁盘文件的升级、维护和备份。原理存储之间的转移核心技术磁盘快照REDO记录父/子磁盘关系快照整合第六章虚拟化技术6.1

虚拟化技术简介6.2服务器虚拟化6.3存储虚拟化6.4网络虚拟化of3137习题6.5桌面虚拟化高级人工智能人才培养丛书6.6

OpenStack开源虚拟化平台6.7超融合技术6.3存储虚拟化第六章虚拟化技术of3138存储虚拟化将系统中分散的存储资源整合起来提高了存储资源利用率降低了单位存储空间的成本降低了存储管理的负担和复杂性在虚拟层通过使用数据镜像、数据校验和多路径等技术提高了数据的可靠性及系统的可用性利用负载均衡、数据迁移、数据块重组等技术提升系统的潜在性能整合和重组底层物理资源得到多种不同性能和可靠性的新的虚拟设备满足多种存储应用的需求6.3

存储虚拟化-存储虚拟化的一般模型第六章虚拟化技术of3139虚拟化层底层存储物理存储设备物理服务器或者虚拟机一般来说,虚拟化存储系统在原有存储系统结构上增加了虚拟化层,将多个存储单元抽象成一个虚拟存储池,存储单元可以是异构,可以是直接的存储设备,也可以是基于网络的存储设备或系统。减少存储系统的管理开销实现存储系统数据共享提供透明的高可靠性和可扩展性。6.3

存储虚拟化-存储虚拟化的实现方式第六章虚拟化技术of3140目前,实现存储虚拟化的方式主要有三种:基于主机的存储虚拟化基于存储设备的存储虚拟化基于网络的存储虚拟化6.3

存储虚拟化-存储虚拟化的实现方式第六章虚拟化技术of3141基于主机的存储虚拟化,也称基于服务器的存储虚拟化或者基于系统卷管理器的存储虚拟化,其一般是通过逻辑卷管理来实现的。性价比比较高性能下降可扩展性差不支持异构平台数据存储共享存储资源管理数据复制及迁移集群系统远程备份灾难恢复优势劣势6.3

存储虚拟化-存储虚拟化的实现方式第六章虚拟化技术of3142基于存储设备的存储虚拟化主要是在存储设备的磁盘、适配器或者控制器上实现虚拟化功能。有很多的存储设备的内部都有功能比较强的处理器存储设备带有专门的嵌入式系统,可以在存储子系统的内部进行存储虚拟化,对外提供虚拟化磁盘这类存储子系统与主机无关,对系统性能的影响比较小,也比较容易管理对于包含有多家厂商提供异构的存储设备的SAN存储系统,基于存储设备的存储虚拟化方法的效果不是很好这种设备往往规模有限并且不能进行级联,这就使得虚拟存储设备的可扩展性比较差6.3

存储虚拟化-存储虚拟化的实现方式第六章虚拟化技术of3143基于网络的存储虚拟化方法是在网络设备上实现存储虚拟化功能,包括基于互连设备和基于路由器两种方式。相对于上述几种方式,基于路由器的虚拟化在性能、效果和安全方面都要好一些如果连接主机到存储网络的路由器出现故障,也可能会使主机上的数据不能被访问,但是只有与故障路由器连接在一起的主机才会受到影响,其余的主机还是可以用其他路由器访问存储系统,且路由器的冗余还能够支持动态多路径。优点缺点6.3

存储虚拟化-存储虚拟化的实现方式-案例分析第六章虚拟化技术of3144VMFS的功能主要包括以下3点。磁盘锁定技术故障一致性和恢复机制裸机映射(RDM)锁定已启动的虚拟机的磁盘,以避免多台服务器同时启动同一虚拟机用于快速识别故障的根本原因,帮助虚拟机、物理主机和存储子系统从故障中恢复RDM使得虚拟机能够直接访问物理存储子系统(iSCSI或光纤通道)上的LUN(LogicalUnitNumber)6.3

存储虚拟化-存储虚拟化的实现方式-案例分析第六章虚拟化技术of3145VMwarevSphere存储架构由各种抽象层组成,这些抽象层隐藏并管理物理存储子系统之间的复杂性和差异VMware虚拟存储架构第六章虚拟化技术6.1

虚拟化技术简介6.2服务器虚拟化6.3存储虚拟化6.4网络虚拟化of3146习题6.5桌面虚拟化高级人工智能人才培养丛书6.6

OpenStack开源虚拟化平台6.7超融合技术6.4

网络虚拟化第六章虚拟化技术of3147传统的数据中心服务器之间操作系统和上层软件异构、接口与数据格式不统一数据中心内网络传输效率低使用云计算后数据同步传送的大流量、备份大流量、虚拟机迁移大流量采用统一的交换网络减少布线、维护工作量和扩容成本引入虚拟化技术之后数据中心网络虚拟化分为核心层、接入层和虚拟机网络虚拟化三个方面6.4

网络虚拟化-核心层网络虚拟化第六章虚拟化技术of3148核心层网络虚拟化,主要指的是数据中心核心网络设备的虚拟化。要求核心层网络具备超大规模的数据交换能力足够的万兆接入能力提供虚拟机箱技术简化设备管理提高资源利用率提高交换系统的灵活性和扩展性为资源的灵活调度和动态伸缩提供支撑6.4

网络虚拟化-接入层网络虚拟化第六章虚拟化技术of3149接入层虚拟化,可以实现数据中心接入层的分级设计。根据数据中心的走线要求,接入层交换机要求能够支持各种灵活的部署方式和新的以太网技术。拥塞通知(IEEE802.1Qau)增强传输选择ETS(IEEE802.1Qaz)优先级流量控制PFC(IEEE802.1Qbb)链路发现协议LLDP(IEEE802.1AB)6.4

网络虚拟化-虚拟机网络虚拟化第六章虚拟化技术of3150802.1QbgEVB(EdgeVirtualBridging)802.1QbhBPE(BridgePortExtension)扩展虚拟数据中心中交换机和虚拟网卡的功能802.1Qbg外部网络能够支持虚拟交换功能,对于虚拟交换网络范围内VM动态迁移、调度信息,均通过LLDP扩展协议得到同步以简化运维802.1Qbh将远程交换机部署为虚拟环境中的策略控制交换机,而不是部署成邻近服务器机架的交换机,通过多个虚拟通道,让边缘虚拟桥复制帧到一组远程端口6.4

网络虚拟化-虚拟机网络虚拟化第六章虚拟化技术of3151虚拟机网络交互需要实现以下功能:1虚拟机的双向访问控制和流量监控,包括深度包检测、端口镜像、端口远程镜像、流量统计。2虚拟机的网络属性应包括VLAN、QoS、ACL、带宽等。3虚拟机的网络属性可以跟随虚拟机的迁移而动态迁移,不需要人工干预或静态配置,从而在虚拟机扩展和迁移过程中,保障业务的持续性。4虚拟机迁移时,与虚拟机相关的资源配置,如存储、网络配置也随之迁移。同时保证迁移过程中业务不中断。6.4

网络虚拟化-案例分析第六章虚拟化技术of3152VMware的网络虚拟化技术主要是通过VMwarevSphere中的vNetwork网络元素实现的,其虚拟网络架构如图所示。6.4

网络虚拟化-案例分析第六章虚拟化技术of3153每个虚拟机都可以配置一个或者多个虚拟网络接口卡vNIC。安装在虚拟机上的客户操作系统和应用程序利用通用的设备驱动程序与vNIC进行通信。在虚拟机的外部,vNIC拥有独立的MAC地址以及一个或多个IP地址,且遵守标准的以太网协议。虚拟网络接口卡6.4

网络虚拟化-案例分析第六章虚拟化技术of3154虚拟交换机用来满足不同的虚拟机和管理界面进行互连。每台服务器都有自己的虚拟交换机。虚拟交换机的一端是与虚拟机相连的端口组,另一端是与虚拟机所在服务器上的物理以太网适配器相连的上行链路。虚拟机通过与虚拟交换机上行链路相连的物理以太网适配器与外部环境连接。虚拟交换机可将其上行链路连接到多个物理以太网适配器以启用网卡绑定。通过网卡绑定,两个或多个物理适配器可用于分摊流量负载,或在出现物理适配器硬件故障或网络故障时提供被动故障切换。虚拟交换机vSwitch6.4

网络虚拟化-案例分析第六章虚拟化技术of3155vNetwork分布式交换机(dvSwitch)是vSphere的新功能。每个dvSwitch都是一种可供虚拟机使用的网络集线器。在虚拟机之间进行内部流量路由连接物理以太网适配器链接外部网络为每个vSwitch分配一个或多个dvPort组分布式交换机6.4

网络虚拟化-案例分析第六章虚拟化技术of3156端口组端口组是一种策略设置机制,这些策略用于管理与端口组相连的网络。将端口组配置为执行策略,以提供增强的网络安全、网络分段、更佳的性能、高可用性及流量管理。6.4

网络虚拟化-案例分析第六章虚拟化技术of3157VLAN支持将虚拟网络与物理网络VLAN集成。专用VLAN可以在专用网络中使用VLANID,而不必担心VLANID在较大型的网络中会出现重复。流量调整定义平均带宽、峰值带宽和流量突发大小的QOS策略,设置策略以改进流量管理。网卡绑定为个别端口组或网络设置网卡绑定策略,以分摊流量负载或在出现硬件故障时提供故障切换。VLAN第六章虚拟化技术6.1

虚拟化技术简介6.2服务器虚拟化6.3存储虚拟化6.4网络虚拟化of3158习题6.5桌面虚拟化高级人工智能人才培养丛书6.6

OpenStack开源虚拟化平台6.7超融合技术6.5

桌面虚拟化-简介第六章虚拟化技术桌面虚拟化是一种基于中心服务器的计算机运作模型第一代桌面虚拟技术实现了在同一个独立的计算机硬件平台上,同时安装多个操作系统,并同时运行这些操作系统第二代桌面虚拟化技术进一步将桌面系统的运行环境与安装环境、应用与桌面配置文件进行了拆分,从而大大降低了管理复杂度与成本,提高了管理效率。6.5

桌面虚拟化-技术现状第六章虚拟化技术桌面虚拟化技术还面临着很多问题:集中管理问题集中存储问题虚拟化产品缺乏统一标准网络负载压力虚拟化的服务器合并程度越高,此风险也越大。若是服务器出现了致命的故障,用户的数据可能丢失,整个平台将面临灾难。各虚拟化产品厂商的产品间无法互通,一旦这个产品系列停止研发或其厂商倒闭,用户系统的持续运行、迁移和升级将会极其困难。如果用户使用的网络出现问题,桌面虚拟化发布的应用程序不能运行。一二三四6.5

桌面虚拟化-案例分析第六章虚拟化技术ViewConnectionServer(View连接服务器)ViewManagerSecurityServer(View安全连接服务器)ViewAdministratorInterface(View管理接口程序)接收到的远程桌面用户请求重定向到相应的虚拟桌面、物理桌面或终端服务器。可选组件用于配置ViewConnectionServer、部署和管理虚拟桌面、控制用户身份验证。View代理安装在虚拟桌面依托的虚拟机、物理机或终端服务器上,安装后提供服务,可由ViewManagerServer管理。6.5

桌面虚拟化-案例分析第六章虚拟化技术ViewClient(View客户端程序)ViewClientwithOfflineDesktop(View客户端程序)安装在需要使用“虚拟桌面”的计算机上,通过它可以与ViewConnectionServer通信,从而允许用户连接到虚拟桌面。支持View脱机桌面,可以让用户“下载”vSphereServer中的虚拟机到“本地”运行。ViewComposer安装在vCenterServer上的软件服务,可以通过ViewManager使用“克隆链接”的虚拟机第六章虚拟化技术6.1

虚拟化技术简介6.2服务器虚拟化6.3存储虚拟化6.4网络虚拟化of3163习题6.5桌面虚拟化高级人工智能人才培养丛书6.6

OpenStack开源虚拟化平台6.7超融合技术既是一个社区,也是一个项目和一个开源软件,提供了一个部署云的操作平台或工具集。用OpenStack易于构建虚拟计算或存储服务的云,既可以为公有云、私有云,也可以为大云、小云提供可扩展、灵活的云计算。OpenStackRackspace公司美国宇航局NASA“云文件”平台(Swift)“星云”平台(Nova)6.6

OpenStack开源虚拟化平台第六章虚拟化技术of31656.6.4镜像服务Glance6.6.3对象存储服务Swift6.6.2计算服务Nova6.6.1OpenStack背景介绍6.6.1

OpenStack背景介绍第六章虚拟化技术of3166OpenStack是一个管理计算、存储和网络资源的数据中心云计算开放平台,通过一个仪表板,为管理员提供了所有的管理控制,同时通过Web界面为其用户提供资源。6.6.1

OpenStack背景介绍第六章虚拟化技术of3167计算资源管理存储资源管理网络资源管理OpenStack可以规划并管理大量虚拟机,从而允许企业或服务提供商按需提供计算资源OpenStack可以为云服务或云应用提供所需的对象及块存储资源IP地址的数量、路由配置、安全规则将爆炸式增长;传统的网络管理技术无法真正高扩展、高自动化地管理下一代网络6.6.1

OpenStack背景介绍第六章虚拟化技术of3168OpenStack的主要服务OpenStack有三个主要的服务成员:计算服务(Nova)、存储服务(Swift)、镜像服务(Glance)计算服务(Nova)管理虚拟机镜像管理组件(Nova)管理镜像通过Glance创建和管理镜像快照通过Swift存储快照对象存储组件(Swift)用标准的硬件进行PB级的安全、可靠的存储通过API调用openStack用户管理员6.6.1

OpenStack背景介绍第六章虚拟化技术of3169OpenStack的主要服务1.计算服务Nova2.对象存储服务Swift3.镜像服务Glance4.身份认证服务keystone5.网络管理服务Quantum6.存储管理服务Cinder7.仪表盘Horizon6.6

OpenStack开源虚拟化平台第六章虚拟化技术of31706.6.4镜像服务Glance6.6.3对象存储服务Swift6.6.2计算服务Nova6.6.1OpenStack背景介绍6.6.2计算服务Nova第六章虚拟化技术of3171Nova处理OpenStack云中实例(instances)生命周期的所有活动。这样使得Nova成为一个负责管理计算资源、网络、认证、所需可扩展性的平台。但是,Nova并不具有虚拟化能力,相反它使用LibvirtAPI来与被支持的Hypervisors交互。Nova通过一个与AmazonWebServices(AWS)EC2API兼容的WebServicesAPI来对外提供服务。Nova是OpenStack云中的计算组织控制器6.6.2计算服务Nova-Nova组件介绍第六章虚拟化技术of31721.APIServer(Nova-Api)2.MessageQueue(RabbitMQServer)APIServer对外提供一个与云基础设施交互的接口,也是外部可用于管理基础设施的唯一组件。OpenStack节点之间通过消息队列使用AMQP(AdvancedMessageQueueProtocol)完成通信。6.6.2计算服务Nova-Nova组件介绍第六章虚拟化技术of31733.ComputeWorker(Nova-Compute)4.NetworkController(Nova-Network)ComputeWorker管理实例生命周期,通过MessageQueue接收实例生命周期管理的请求,并承担操作工作。NetworkController处理主机的网络配置,包括IP地址分配、为项目配置VLAN、实现安全组、配置计算节点网络。6.6.2计算服务Nova-Nova组件介绍第六章虚拟化技术of31745.VolumeWorkers(Nova-Volume)6.Scheduler(Nova-Scheduler)VolumeWorkers用来管理基于LVM(LogicalVolumeManager)的实例卷。VolumeWorkers有卷的相关功能,例如新建卷、删除卷、为实例附加卷、为实例分离卷。调度器Scheduler把Nova-API调用映射为OpenStack组件。调度器作为一个Nova-Schedule守护进程运行,通过恰当的调度算法从可用资源池获得一个计算服务。随机算法可用域算法简单算法6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3175Nova通过独立的软件管理模块实现XenServer、Hyper-V和VMWareESX的调用与管理同时对于其他的Hypervisor,如KVM、LXC、QEMU、UML和Xen则通过Libvirt标准接口统一实现为了更好地理解在Nova环境下Libvirt如何管理底层的Hypervisor,先要基本了解Libvirt的体系架构与实现方法。6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3176什么是Libvirt虚拟化技术实现集群资源管理(云管理)虚拟云实现的三部曲虚拟机管理6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3177什么是Libvirt各种不同的虚拟化技术都提供了基本的管理工具,比如启动、停用、配置、连接控制台等。这样在构建云管理的时候就存在两个问题。12如果采用混合虚拟技术,上层就需要对不同的虚拟化技术调用不同管理工具,很是麻烦。可能有新的虚拟化技术更加符合现在的应用场景,需要迁移过去。这样管理平台就需要大幅改动。Libvirt的主要目标是为各种虚拟化工具提供一套方便、可靠的编程接口,用一种单一的方式管理多种不同的虚拟化提供方式。6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3178虚拟机管理远程机器支持存储管理网络接口管理虚拟NAT和基于路由的网络包括不同的领域生命周期操作,,支持多种设备类型的热插拔操作只要机器上运行了LibvirtDaemon,所有的Libvirt功能就都可以访问和使用任何运行了LibvirtDaemon的主机都可以用来管理不同类型的存储,创建不同格式的文件镜像任何运行了LibvirtDaemon的主机都可以用来管理物理和逻辑的网络接口。任何运行了LibvirtDaemon的主机都可以用来管理和创建虚拟网络。Libvirt主要支持的功能6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3179Libvirt体系结构没有使用Libvirt的虚拟机管理方式虚拟机(guestOS)虚拟机(guestOS)HypervisorLinux主机(Domain0)物理机节点6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3180Libvirt体系结构LibvirtQEMUdriverLibvirtAPILinux主机(Domain0)物理机节点XendriverQEMUXenDomainDomainLibvirtAPI与相关驱动程序的层次结构6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3181HypervisorHypervisorLibvirt体系结构(1)管理位于同一节点上的应用程序和域管理应用程序通过Libvirt工作,以控制本地域Linux主机(Domain0)物理机节点LibvirtMgmtappDomainDomain6.6.2计算服务Nova-Libvirt简介第六章虚拟化技术of3182HypervisorLibvirt体系结构(2)管理位于不同节点上的应用程序和域该管理应用程序通过一种通用协议从本地Llibvirt连接到远程LibvirtLinuxhost(Domain0)物理机节点LibvirtDomainLibvirtLinuxhost(Domain0)物理机节点LibvirtMgmtappNetwork6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3183RabbitMQ是一种处理消息验证、消息转换和消息路由的架构模式,它协调应用程序之间的信息通信,并使得应用程序或者软件模块之间的相互意识最小化,有效实现解耦。OpenStackNova系统信息交换中枢RabbitMQ6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3184AMQP是应用层协议的一个开放标准,为面向消息的中间件而设计RabbitMQ是AMQP协议的一个开源实现OpenStackNova各软件模块通过AMQP协议实现信息通信AMQP协议的设计理念可归纳为基于状态的面向无连接通信系统模式对于AMQP来讲,消息队列的状态信息决定通信系统的转发路径IP数据包根据路由表实现报文的本地存储与逐级转发AMQP6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3185AMQP是应用层协议的一个开放标准,为面向消息的中间件而设计RabbitMQ是AMQP协议的一个开源实现OpenStackNova各软件模块通过AMQP协议实现信息通信AMQP协议的设计理念可归纳为基于状态的面向无连接通信系统模式对于AMQP来讲,消息队列的状态信息决定通信系统的转发路径IP数据包根据路由表实现报文的本地存储与逐级转发AMQP6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3186AMQPAMQP目标实现端到端的信息通信AMQP实现通信的因素是什么两个基本的概念AMQP实现通信的实体以及机制是什么6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3187AMQP交换器(Exchange)交换器由消费者应用程序创建,并且可与其他应用程序实现共享服务接收消息之后通过路由表将消息准确且安全地转发至相应的消息队列每个交换器通过唯一的ExchangeID进行识别持久交换器临时交换器自动删除交换器持久交换器并不会因为系统重启或者应用程序终止而消除驻留在内存中,随着系统的关闭而消失随着宿主应用程序的中止而自动消亡6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3188队列(Queue)AMQP主要用于实现存储与转发交换器发送来的消息,队列同时也具备灵活的生命周期属性配置,可实现队列的持久保存、临时驻留与自动删除。消息队列交换器AMQP的三个关键组件任何一个组件的失效都会导致信息通信的中断,因此鉴于三个关键组件的重要性,系统在创建三个组件的同时会打上“Durable”标签,表明在系统重启之后立即恢复业务功能。6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3189AMQP构成AMQP的三个关键要素的工作方式如图所示。消息生产者消息生产者交换器消息队列-1消息队列-2消息队列-3……消息队列-N消息消费者消息消费者6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3190AMQP三种不同类型的交换器广播式交换器(FanoutExchange)直接式交换器(DirectExchange)主题式交换器(TopicExchange)6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3191Nova中的RabbitMQ应用目前Nova中的各个模块通过RabbitMQ服务器以RPC(远程过程调用)的方式实现通信,而且各模块之间形成松耦合关联关系,在扩展性、安全性以及性能方面均体现优势。Nova系统信息中枢RabbitMQ6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3192Nova中的RabbitMQ应用1)交换器2)队列3)绑定接受消息并且将消息转发给队列。应用程序在它的权限范围之内可以创建、删除、使用和共享交换器实例。交换器可以是持久的、临时的或者自动删除的“消息队列”,它是一个具名缓冲区,它代表一组消费者应用程序保存消息。这些应用程序在它们的权限范围内可以创建、使用、共享消息队列。可以理解为交换器和消息队列之间的一种关系,绑定之后交换器会知道应该把消息发给哪个队列,绑定的关键字称为binding_key。6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3193Nova中的RabbitMQ应用该类交换器不分析所接收到消息中的RoutingKey,默认将消息转发到所有与该交换器绑定的队列中去。广播式交换器转发效率最高,但是安全性较低,消费者应用程序可获取本不属于自己的消息。广播交换器是最简单的一种类型,就像我们从字面上理解到的一样,它把所有接收到的消息广播到所有它所知道的队列中去,不论消息的关键字是什么,消息都会被路由到和该交换器绑定的队列中去。1)广播式交换器类型(fanout)6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3194Nova中的RabbitMQ应用在程序中申明一个广播式交换器的代码如下:PX1)广播式交换器类型(fanout)channel.exchange_declare(exchange='fanout',type='fanout')6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3195Nova中的RabbitMQ应用直接式交换器的转发效率较高,安全性较好,但是缺乏灵活性,系统配置量较大。相对广播交换器来说,直接交换器可以给我们带来更多的灵活性。直接交换器的路由算法很简单:一个消息的routing_key完全匹配一个队列的binding_key,就将这个消息路由到该队列。绑定的关键字将队列和交换器绑定到一起。当消息的routing_key和多个绑定关键字匹配时消息可能会被发送到多个队列中。2)直接式交换器类型(direct)6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of3196Nova中的RabbitMQ应用PXC2C2Q1Q2orangegreenblackType=direct直接交换器的工作方式2)直接式交换器类型(direct)6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of319797Nova中的RabbitMQ应用PXC2C2Q1Q2*.orange*Lazy.#*.*rabbitType=topic3)主题式交换器(TopicExchange)6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of319898Nova中的RabbitMQ应用Nova基于RabbitMQ实现两种RPC调用RPC.CALLRPC.CAST基于请求与响应方式只是提供单向请求Nova的各个模块在逻辑功能上可以划分为两种Invoker模块Worker模块主要功能是向消息队列中发送系统请求消息,如Nova-API和Nova-Scheduler;从消息队列中获取Invoker模块发送的系统请求消息以及向Invoker模块回复系统响应消息,如Nova-Compute、Nova-Volume和Nova-Network。6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of319999Topic消息生产者Nova中的RabbitMQ应用Direct消息消费者Direct消息队列点对点消息队列共享消息队列交换机Direct消息生产者Topic消息生产者1Topic消息生产者2Topic消息生产者3交换器RoutingKey=NODE-TYPE.NODE-IDRoutingKey=NODE-TYPE.Topic交换域Direct交换域RabbitMQ服务器InvokerWorker6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of31100100Nova中的RabbitMQ应用Topic消息生产者Direct消息消费者Direct消息队列点对点消息队列交换机Direct消息生产者Topic消息消费者1交换器RoutingKey=NODE-TYPE.NODE-IDTopic交换域Direct交换域RabbitMQ服务器InvokerWorkerRoutingKey=MSG-ID6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of31101101Nova中的RabbitMQ应用Invoker端生成一个Topic消息生产者和一个Direct消息消费者。其中,Topic消息生产者发送系统请求消息到Topic交换器,Direct消息消费者等待响应消息。Topic交换器根据消息的RoutingKey转发消息,Topic消费者从相应的消息队列中接收消息,并传递给负责执行相关任务的Worker。Worker根据请求消息执行完任务之后,分配一个Direct消息生产者,Direct消息生产者将响应消息发送到Direct交换器。Direct交换器根据响应消息的RoutingKey转发至相应的消息队列,Direct消费者接收并把它传递给Invoker。6.6.2计算服务Nova-RabbitMQ第六章虚拟化技术of31102102Nova中的RabbitMQ应用Topic消息生产者共享消息队列Topic消息消费者1交换器RoutingKey-NODE-TYPETopic交换域RabbitMQ服务器InvokerWorkerTopic消息消费者2RPC.CAST的远程调用流程与RPC.CALL类似,只是缺少了系统消息响应流程。6.6

OpenStack开源虚拟化平台第六章虚拟化技术of311036.6.4镜像服务Glance6.6.3对象存储服务Swift6.6.2计算服务Nova6.6.1OpenStack背景介绍6.6.3

对象服务Swift第六章虚拟化技术of31104SwiftOpenStack开源云计算项目的子项目之一可扩展的对象存储系统比如复制和存档数据,图像或视频服务,存储次级静态数据,开发数据存储整合的新应用,存储容量难以估计的数据,为Web应用创建基于云的弹性存储。扩展性冗余性持久性6.6.3

对象服务Swift-Swift特性第六章虚拟化技术of311051.高数据持久性数据的可靠性,是指数据存储到系统中后,到某一天数据丢失的可能性。2.完全对称的系统架构“对称”意味着Swift中各节点可以完全对等,能极大地降低系统维护成本。3.无限的可扩展性一是数据存储容量无限可扩展,二是Swift性能(如QPS、吞吐量等)可线性提升。4.无单点故障整个Swift集群中,也没有一个角色是单点的,并且在架构和设计上保证无单点业务是有效的。5.简单、可依赖简单体现在实现易懂、架构优美、代码整洁;可依赖是指Swift经测试、分析之后,可以放心大胆地将Swift用于最核心的存储业务上6.6.3

对象服务Swift-应用场景第六章虚拟化技术of31106网盘类产品的存储引擎为Glance存储镜像文件存储日志文件数据备份仓库Swift提供的服务与AmazonS3相同,适用于许多应用场景。6.6.3

对象服务Swift-应用场景第六章虚拟化技术of31107其中Storage和Consistency服务均允许在StorageNode上。Swift主要有三个组成部分:ProxyServer、StorageServer和ConsistencyServer。6.6.3

对象服务Swift-应用场景第六章虚拟化技术of31108使用OpenStack的认证服务Keystone,目的在于实现统一OpenStack各个项目间的认证管理。6.6.3

对象服务Swift-主要组件第六章虚拟化技术of31109在涉及查询Account(账户)、Container(容器)、Object(对象)信息时,就需要查询集群的Ring信息。Ring使用Zone、Device、Partition和Replica来维护这些映射信息。Ring中每个Partition在集群中都(默认)有3个Replica。每个Partition的位置由Ring来维护,并存储在映射中。每次增减存储节点时,需要重新平衡一下Ring文件中的项目。Ring是Swift最重要的组件,用于记录存储对象与物理位置间的映射关系。1Ring6.6.3

对象服务Swift-主要组件第六章虚拟化技术of31110Proxy提供了Rest-fullAPI,并且符合标准的HTTP协议规范,这使得开发者可以快捷构建定制的Client与Swift交互。2ProxyServerProxyServer是提供SwiftAPI的服务器进程,负责Swift其余组件间的相互通信。6.6.3

对象服务Swift-主要组件第六章虚拟化技术of311113StorageServerStorageServer提供了磁盘设备上的存储服务。Swift中有三类存储服务器AccountContainerObject6.6.3

对象服务Swift-主要组件第六章虚拟化技术of311124ConsistencyServers目的是查找并解决由数据损坏和硬件故障引起的错误。主要存在三个ServerAuditorUpdaterReplicator6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31113数据一致性模型(ConsistencyModel)为了实现这一目标,Swift采用Quorum仲裁协议N为数据的副本总数W为写操作被确认接受的副本数量R为读操作的副本数量(2)强一致性:强一致性R+W>N,以保证对副本的读写操作会产生交集,从而保证可以读取到最新版本弱一致性R+W<=N,如果读写操作的副本集合不产生交集,就可能会读到脏数据6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31114数据一致性模型(ConsistencyModel)写操作读操作v2v2v1YYNY?6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31115一致性散列(ConsistentHashing)P0P1P2P3P4P5P6P7散列空间(0,232-1)位移量m=29(0,2m-1)(2m,2m+1-1)右移m位对象键散列函数虚拟节点将散列结果右移m位,可产生232-m个虚拟节点,例如m=29时可产生8个虚拟节点。6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31116数据模型AccountAAccountBAccountCContainer1Container2Container1Container2Container1Container2叶子节点Account账户Container容器Object对象租户,用来做顶层的隔离机制代表封装一组对象,类似文件夹或目录由元数据和内容两部分组成6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31117环的数据结构(2)分区到设备映射关系环是为了将虚拟节点(分区)映射到一组物理存储设备上,并提供一定的冗余度而设计的,其数据结构由以下信息组成。(1)存储设备列表、设备信息包括唯一标识号(id)、区域号(zone)、权重(weight)、IP地址(ip)、端口(port)、设备名称(device)、元数据(metadata)(3)计算分区号的位移replica2part2dev_id数组part_shift整数6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31118环的数据结构P0d0d8d16P1d1d9d17P2d2d10d18P3d3d11d19…………P7d7d15d23设备编号列表分区到设备映射z1z2z3z4z5设备与区域映射(存在设备信息里)分区000向右移除分区索引MD5散列账户名/容器名/对象名区域6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31119Replica如果集群中的数据在本地节点上只有一份,一旦发生故障就可能会造成数据的永久性丢失。因此,需要有冗余的副本来保证数据安全。Swift中引入了Replica的概念,其默认值为3,理论依据主要来源于NWR策略(也叫Quorum协议)。6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31120Replica一种在分布式存储系统中用于控制一致性级别的策略。在Amazon的Dynamo云存储系统中,使用了NWR来控制一致性。NWR代表同一份数据的Replica的份数更新一个数据对象时需要确保成功更新的份数代表读取一个数据需要读取的Replica的份数6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31121Replica公式W+R>N,保证某个数据不被两个不同的事务同时读和写,公式W>N/2保证两个事务不能并发写某一个数据。N12345非常危险比较危险N>2,N越大,成本越高工业界通常把N设置为3Swift的N=3、W=2、R=2,完全符合NWR策略,Swift系统是可靠的,没有单点故障。6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31122Zone如果所有的节点都在一个机架或一个机房中,那么一旦发生断电、网络故障等事故,都将导致用户无法访问需要一种机制对机器的物理位置进行隔离,以满足分区容忍性Ring中引入了Zone的概念,把集群的节点分配到每个Zone中,其中,同一个Partition的Replica不能同时放在同一个节点上或同一个Zone内。6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31123Weight权重Ring引入权重的目的是解决未来添加存储能力更大的节点时,分配到更多的Partition。例如,2TB容量的节点的Partition数为1TB的两倍,那么就可以设置2TB的权重为200,而1TB的权重为100。6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31124系统架构完全对称面向资源组件可扩展非阻塞式I/O模式6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31125系统架构认证服务节点代理节点缓存服务ObjectRingAccountRingControlleContainerRing对象服务容器服务账户服务ObjectFileContainerDBAccountDBEventualconsistencyObjectUpdaterObjectReplicatorObjectAuditorContainerUpdaterContainerReplicatorContainerAuditorAccountUpdaterAccountReplicatorAccountAuditorEventualconsistencyIntegritycheckingSwiftAPI6.6.3

对象服务Swift-基本原理第六章虚拟化技术of31126实例分析Proxy

serverObjectServerContainerServerAccountServerProxy

serverObjectServerContainerServerAccountServerProxy

serverObjectServerContainerServerAccountServerProxy

serverObjectServerContainerServerAccountServerZone1Zone2Zone3Zone4负载均衡器CET.abc.pngPUT.abc.png6.6

OpenStack开源虚拟化平台第六章虚拟化技术of311276.6.4镜像服务Glance6.6.3对象存储服务Swift6.6.2计算服务Nova6.6.1OpenStack背景介绍6.6.4

镜像服务Glance第六章虚拟化技术of31128Glance提供了一个虚拟磁盘镜像的目录和存储仓库,并且可以提供对虚拟机镜像的存储和检索。这些磁盘镜像常常广泛应用于OpenStackCompute组件之中。三种形式加以配置利用OpenStack对象存储机制来存储镜像利用Amazon的简单存储解决方案(简称S3)直接存储信息将S3存储与对象存储结合起来,作为S3访问的连接器6.6.4

镜像服务Glance-作用第六章虚拟化技术of31129Glance作为OpenStack的虚拟机的Image(镜像)服务,提供了一系列的RESTAPI,用来管理、查询虚拟机的镜像,它支持多种后端存储介质可以看出,通过Glance,Opentack的3个模块被链接成了一个整体,Glance

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论