虚拟私有云和专有云的区别数据中心的区别是什么?

数据中心是一种物理设施,提供操作程序的计算能力,处理信息的存储,以及将人们连接到执行任务和支持企业运营所需的资源的网络。一、什么是数据中心?数据中心是一个房间、一座建筑物或一组建筑物,用于容纳后端计算机系统,设有用户界面和冷却能力、物理安全、网络设备等支持系统。远程数据中心为所有云基础设施提供动力。数据中心是一种物理设施,提供操作程序的计算能力,处理信息的存储,以及将人们连接到执行任务和支持企业运营所需的资源的网络。由于服务器的密集集中,有时数据中心被称为服务器场。它们提供信息存储、恢复和备份信息管理以及网络等基本服务。几乎每个企业和政府机构都需要自己的数据中心或访问第三方设施。一些企业在内部建造和运营服务器,还有一些企业从托管设施租用服务器。相比之下,其他人仍然利用谷歌、微软和亚马逊网络服务等主机提供的基于公共云的服务。一般来说,有四个公认的数据中心级别。分配给这些数据中心的数值层表示冗余基础设施、电源和冷却系统。通常分配给这些级别的是以下值或功能:第一层:不提供内置冗余,以确保最佳可用性和数小时的年度停机时间。第二层:由于合并了部分冗余,以确保电力和空调继续支持运营,因此减少了每年的停机时间。第三层:确保更大的正常运行时间和对电源和冷却问题的保护,每年的停机时间不到几个小时。第四层:每年提供99.995%的正常运行时间,每年停机时间不到1小时。应用、信息和内容的存储和计算能力都位于数据中心。在这个基于云计算、应用驱动的世界中,访问这些数据是一个主要问题。使用高速分组光通信,数据中心互连技术跨短、中或长距离连接两个或多个数据中心。此外,超融合数据中心建立在超融合基础设施之上,该基础设施是一种整合计算、网络和存储商品硬件的软件架构。将软件和硬件组件合并到一个数据中心,简化了处理和管理过程,并带来了降低组织IT基础设施和管理成本的额外好处。二、数据中心如何工作?数据中心的工作是建立在成功执行数据中心操作的基础上的。数据中心的运营包括日常维护数据中心的系统和流程。数据中心的运营包括建立和管理网络资源、保证数据中心的安全、监控电源和冷却系统。不同类型的数据中心在大小、可靠性和冗余方面存在差异,且是由运营数据中心的企业的IT需求定义的。云计算的扩展正在推动它们的现代化,包括自动化和虚拟化。数据中心包括通过通信和网络设备在外部和内部连接的真实或虚拟服务器,以存储、传输和访问数字数据。每台服务器都与家用计算机相当,因为它包含CPU、存储空间和内存,但功能更强大。数据中心使用软件将计算机集群,并在它们之间分配负载。为了保持所有这些正常运行,数据中心使用以下关键元素:1、高可用性系统和冗余数据中心中的可用性是指在任何时候都处于操作状态的组件。定期对系统进行维护,以保证未来的活动顺利进行。我们可以安排故障转移,其中服务器将职责切换到远程服务器以增加冗余。在IT基础设施中,冗余系统降低了单点故障的风险。2、网络运营中心网络运营中心是为负责监控、管理和维护数据中心计算机资源的员工或专职人员提供的工作空间。网络运营中心可以提供数据中心的所有信息并更新所有活动。其负责人可以查看和控制正在监控的网络可视化。3、不间断电源毫无疑问,电源是数据中心最关键的方面。托管设备或网络托管服务器使用数据中心内部的专用电源。每个数据中心都需要电源备份,以确保其服务器持续运行,并保持整体服务可用性。4、物理安全措施安全的数据中心需要实施安全机制。首先必须确定DC基础设施中的弱点。多因素身份识别、整个建筑的监控、金属探测器和生物识别系统是确保最高安全水平的一些措施,数据中心还需要现场安全人员。5、强大的冷却系统电源和冷却在数据中心中同样重要。主机托管设备和网络托管服务器需要足够的冷却以防止过热并保证其持续运行。数据中心的建设应该保证有足够的气流,并且系统始终保持凉爽。6、备用电源系统不间断电源和发电机都是备用系统的组成部分。在电力中断期间,发电机可以配置为自动启动。只要发电机有燃料,它们就会在停电期间继续运行。UPS系统应提供冗余,以便故障模块不会影响整个系统的能力。定期维护UPS和电池可降低停电期间发生故障的可能性。7、数据中心计算机化维护管理系统CMMS是监控、测量和增强维护计划的最有效方法之一。该计划使数据中心管理层能够跟踪对其资产执行的维护工作的进度和相关成本。该计划将有助于降低维护成本,提高内部效率。在现代数据中心中,人工智能也在其工作中发挥着重要作用。通过人工智能,算法可以实时监控能量分配、冷却能力、服务器流量和网络威胁,并自动调整效率,完成传统的DCIM任务。人工智能可以将工作负载转移到未充分利用的资源,识别可能的组件故障,并平衡池中的资源。它以最少的人为干预来实现这一点。三、数据中心类型1、企业级数据中心企业为其终端客户构建并拥有这些私有数据中心。它们可以放置在内部和外部,服务于单个企业的IT流程和基本应用。在自然灾害中,企业可以将业务活动与数据中心操作隔离开来。或者,它可以在较冷的环境中建造数据中心,以减少能源消耗。2、主机托管设施多租户数据中心,称为托管数据中心,为希望远程托管其计算机设备和服务器的企业提供数据中心空间。托管中心内的这些出租空间是其他方的财产。租赁公司负责提供硬件,而数据中心负责提供和管理基础设施,包括物理区域、连接、通风和安全系统。对于那些希望避免开发和运营自己的数据中心所涉及的高资本成本的企业来说,托管很有吸引力。3、边缘计算数据中心对即时连接的渴望、物联网的扩展以及对洞察力和机器人技术的需求正在推动边缘技术的出现,这些技术使处理能够更接近实际数据源。边缘数据中心是一种紧凑的设施,通过位于网络边缘和数据源附近来解决延迟问题。这些数据中心很小,而且靠近其服务的用户,允许与智能设备进行低延迟连接。通过处理尽可能接近终端用户的多种服务,边缘数据中心使企业能够减少通信延迟并增强客户体验。4、超大型数据中心超大规模数据中心旨在承载大规模的IT基础设施。这些超大规模计算基础设施是亚马逊、Meta和谷歌等大规模提供商的同义词,它们优化了硬件密度,同时降低冷却成本和管理开销。与业务数据中心一样,超大规模数据中心由其所服务的企业拥有和维护,尽管对于云计算和大数据保留平台而言,其范围更广。超大规模数据中心的最低要求是5000台服务器、500个机柜和10000平方英尺的占地面积。5、云数据中心这些分散的数据中心由AWS、MicrosoftAzure和Googlecloud等第三方或公共云提供商运营。租用的基础设施基于基础设施即服务的方法,允许用户在几分钟内建立虚拟数据中心。请记住,对于管理云数据中心的云提供商来说,云数据中心与任何其他类型的物理数据中心一样运行。6、模块化数据中心模块化数据中心是与即用即插即用数据中心元素捆绑在一起的模块或物理容器:服务器、存储、网络硬件、UPS、稳定器、空调等。在永久性的情况下,它们的实施是为了腾出空间或让组织快速发展,例如安装IT设备以支持教育机构的教室。7、托管数据中心在托管数据中心中,第三方提供商为企业提供处理、数据存储和其他相关服务,以帮助管理其IT运营。这种数据中心类型由服务提供者部署、监视和维护,服务提供者通过受控平台提供功能。也可以通过托管设施、基于云的数据中心或固定的托管位置获得托管数据中心服务。托管数据中心可能完全或部分托管,但与托管不同,默认情况下这些数据中心不是多租户的。四、数据中心架构现代数据中心的设计已经从本地基础设施,转变为将本地硬件与云环境混合在一起,其中网络、应用或工作负载跨多个私有和公共云进行虚拟化。这一创新彻底改变了数据中心的设计,因为所有组件不再位于同一位置,只能通过互联网访问。一般来说,数据中心结构有四种:网格结构、三层或多层结构、网格交付点结构和超级脊柱网格结构。而由基础层、聚合层和访问层组成的多层结构已成为企业数据中心最流行的体系结构方法。核心:它允许连接到多个聚合模块和网络,以便在多个聚合单元之间进行分组交换。聚合:它包括服务模块集成、第二层域的设置、跨树分析扩展和冗余默认网关。访问:它提供对系统资源的物理级访问,并以第2层和第3层模式运行。此外,它对于处理特定的服务器需求也是必不可少的。接下来是网状数据中心架构。网状网络模型是指通过链接交换机在组件之间交换数据的拓扑结构。由于其可靠的容量和最小的延迟,它可以提供基本的云服务。此外,由于其分散的网络拓扑结构,网格配置可以快速实现任何连接,并且构建成本更低。该网状传输点(PoD)包括连接在PoD内部的多个叶交换机。这是一种反复出现的设计模式,其中组件可以提高数据中心的模块化、可扩展性和管理能力。因此,数据中心经理可能会在其现有的三层拓扑结构中快速添加新的数据中心架构,以满足新云应用的极低延迟数据流。综上所述,超级脊柱架构适用于大型校园式数据中心。这种数据中心架构通过东西向的数据通道处理大量数据。数据中心将在这些替代架构中包含一个设施及其内部基础设施。站点是数据中心的物理位置。数据中心是一个巨大的开放空间,其中安装了基础设施。几乎每个地方都能容纳IT基础设施。基础设施是安装在设施内的大量IT设备。这是指负责运行应用程序并提供业务和用户服务的硬件。传统的IT基础设施包括服务器、存储、计算机网络和机架等。设计或建造数据中心没有强制性或必要的标准,数据中心旨在满足组织的独特需求。然而,任何标准的根本目的都是为最佳实践提供一致的基础。存在几种现代数据中心规范,企业可能采用其中的一些或全部。EN50600系列:IT电缆和网络标准化包括各种基础设施冗余和可靠性概念,前提是UptimeInstitute的Tier标准。UptimeInstituteTierStandard:通过数据中心的设计、建造和调试,建立了设施的恢复能力。ANSI/TIA942-B:包括建筑设计、规划、施工和调试、消防、信息技术和维护。五、数据中心最佳实践在设计、管理和优化数据中心时,可以遵循以下最佳实践:1、计划未来在开发数据中心时,提供增长空间是至关重要的。为了节省成本,数据中心设计人员可能会寻求限制设施容量以满足企业当前的需求,然而,从长远来看,这可能是一个代价高昂的错误。随着需求的变化,为新设备预留一个空间至关重要。2、通过测量PUE优化能源利用没有衡量的东西是无法规范的,因此,监控能源使用情况可以解释数据中心的系统效率。电力使用效率是用于减少非计算能源使用的统计数据,如冷却和电力传输。为了优化使用,需要经常测量PUE。由于季节天气变化对PUE有很大影响,因此收集全年的能源信息就显得尤为重要。3、投资于预测性维护检查和预防性维护通常按时间间隔进行,以防止部件和系统故障。尽管如此,该技术忽略了实际操作条件。利用分析和智能监控技术可能会改变维护程序。具有机器学习功能的强大分析平台可以预测维护需求。4、定期回顾和清理数据集即使计算机内存的价格不断下降,全球归档每年也要花费数十亿美元。通过删除和保留数据,数据中心的IT基础设施摆脱了负担,从而减少了调节费用和能耗,更有效地分配了计算资源和存储。5、通过建立冗余来提高正常运行时间对于数据中心来说,在发生故障时为网络设备和通信通道创建备份路径是一个巨大的挑战。这些冗余提供了一个备份系统,允许人员在不影响服务的情况下进行维护和执行系统升级,或者在主系统出现故障时切换到备份系统。数据中心内的层系统,编号从1到4,定义了客户可能期望的正常运行时间(4是最高的)。六、总结数据中心是现代计算的支柱。它们不仅存储信息,还支持分析和建模等资源密集型数据操作。通过投资数据中心架构,我们可以更好地支持IT和业务流程。一个运行良好的数据中心是一个停机时间最少、容量可扩展、同时将成本保持在最佳水平的数据中心。来源于:数据中心运维管理
虚拟化虚拟化本质上是软/硬件层的抽象#说起虚拟化,相信大家应该都不陌生,像虚拟内存、Java 虚拟机、Android 模拟器这些都是虚拟化技术的体现,为什么这样说,这个就要回到虚拟化技术的本质上——虚拟化就是由位于下层的软件模块,根据上层的软件模块的期待,抽象(虚拟)出一个虚拟的软件或硬件模块,使上一层软件直接运行在这个与自己期待完全一致的虚拟环境上。从这个意义上来看,虚拟化既可以是软件层的抽象,又可以是硬件层的抽象。所以说,像虚拟内存、Java 虚拟机、Android 模拟器这些都属于是软件虚拟化技术,而硬件虚拟化技术更多的应用就是在云计算领域。从提出至今,虚拟化技术已经出现了多种实现方式,这些不同的方式其实就是软件和硬件的不同组合。VMMVMM 全称是 Virtual Machine Monitor,虚拟机监控系统,也叫 Hypervisor,是虚拟化层的具体实现。主要是以软件的方式,实现一套和物理主机环境完全一样的虚拟环境,物理主机有的所有资源,包括 CPU、内存、网络 IO、设备 IO等等,它都有。这样的方式相当于 VMM 对物理主机的资源进行划分和隔离,使其可以充分利用资源供上层使用。虚拟出的资源以虚拟机的形式提供服务,一个虚拟机本质上和一台物理机没有什么区别,可以跑各种操作系统,在之上再跑各种应用。这种方式无疑是计算机历史上非常里程碑的一步,你想想,以前可能要买多台服务器才能解决的事,现在只用一台就解决了。虚拟机通常叫做客户机(guest),物理机叫宿主机(host),VMM 处在中间层,既要负责对虚拟资源的管理,包括虚拟环境的调度,虚拟机之间的通信以及虚拟机的管理等,又要负责物理资源的管理,包括处理器、中断、内存、设备等的管理,此外,还要提供一些附加功能,包括定时器、安全机制、电源管理等。VMM 分类VMM 根据平台类型和实现结构有两种不同的分类,按平台类型可以分为完全虚拟化和类虚拟化,完全虚拟化就是 VMM 完全模拟出一个跟物理主机完全一样的环境。但是这个是非常困难的,首先,这需要硬件的支持,而硬件在初期设计的时候,没有那么远的前瞻性,可以预想到为虚拟化提供支持,前次,指令的复杂性,即使通过模拟的方式也很难做到全部指令都模拟。所以,就需要借助其他的一些技术来辅助虚拟化。软件辅助虚拟化是通过优先级压缩(Ring Compression)和二进制代码翻译(Binary Translation)这两个技术来完成的。简单讲,RC 基于 CPU 特权级的原理,也就是 guest、VMM 和 host 分别处于不同的特权级上(这个后面讲 CPU 虚拟化的时候会详述),guest 要访问 host 就属于越级访问,会抛异常,这时 VMM 会截获这个异常,并模拟出其可能的行为,从而进行相应处理。但这个问题很明显,就是由于硬件设计的缺陷,有些指令并不能截获,从而导致“漏洞”。BT 可以弥补这个缺陷,它通过去扫描 guest 的二进制的代码,将难以虚拟化的指令转为支持虚拟化的指令,从而可以配合 VMM 完成虚拟化功能。这两种方式都是通过「打补丁」的方式来辅助虚拟化,很难再架构上保证完整性。所以,后期的硬件厂商就在硬件上对虚拟化提供了支持,有了硬件辅助的虚拟化。通过对硬件本身加入更多的虚拟化功能,就可以截获更多的敏感指令,填补上漏洞。在这一块,Intel 的 VT-x/d 技术和 AMD 的 AMD-V 技术是其中的代表。而类虚拟化则是另外一种通过软件来避免漏洞的方式,就是通过修改 guest 操作系统内核代码(API 级)来避免漏洞,这种方式好处就是可以自定义内核的执行行为,某种程度上对性能进行优化。上面这种分类仅供了解即可,重点掌握下面这种分类,就是根据 VMM 的实现结构分类,主要分类Hypervisor 模型(1 型)和宿主模型(2 型)Hypervisor 模型中 VMM 既是操作系统,也是虚拟化软件,也就是集成了虚拟化功能的操作系统,对上为 guest 提供虚拟化功能,对下管理着所有物理资源,它的优点就是效率高,虚拟机的安全性只依赖于 VMM,缺点就是管理所有的物理资源,意味着 VMM 要承担很多的开发工作,特别是驱动层面的开发,我们知道硬件的 I/O 设备是很多的,这些设备都要有对应的驱动来设配才能为虚拟机提供功能。宿主模型剥离了管理功能和虚拟化功能,虚拟化功能只是作为内核的一个模块来加载,比如 KVM 技术就是其中的佼佼者,KVM 技术可以说是云计算最核心的技术了,后面会经常用到。一般 KVM 只负责 CPU 和内存的虚拟化,I/O 的虚拟化则由另外一个技术来完成,即 Qemu。这些技术都是后面的重点,在这里只是提一下。典型虚拟化产品VMware
VMware 可以说是虚拟化的鼻祖,现在很多公司都是在模仿 VMware 的产品,相应用过 VMware 虚拟机的朋友应该不陌生了,VMware 提供了很多的虚拟化产品,从服务器到桌面都有很多应用。主要有面向企业级应用的 ESX Server,面向服务端的入门级产品 VMware Server,面向桌面的主打产品 VMware Workstation(这个相信大家经常用),面向苹果系统的桌面产品 VMware Fusion,还有提供整套虚拟应用产品的 VMware vSphere,细分的话还有 VMware vStorage(虚拟存储),VMware vNet(虚拟网络)等。Xen
Xen 是一款开源虚拟机软件,Xen 结合了 Hypervisor 模型和宿主模型,属于一种混合的虚拟化模型,基于 Xen 的虚拟化产品也有很多,比如 Ctrix、VirtualIron、RedHat 和 Novell 等都有相应的产品。这个一般是研究机构用得多一些,生产环境中大部分用的是 KVM。KVM
KVM 也是一款开源软件,于 2007 年 2 月被集成到了 Linux 2.6.20 内核中,成为了内核的一部分。KVM 采用的是基于 Intel VT 的硬件辅助虚拟化技术,以及结合 Qemu 来提供设备虚拟化,从实现上看,属于宿主模型。使用 KVM 的厂商很多啊,像我们比较熟悉 VMware Workstation 和 VirtualBox 都在使用,在此就不一一列举了。参考链接:https://www.cnblogs.com/bakari/p/7857967.html云计算简单地说,云计算就是计算服务的提供(包括服务器、存储、数据库、网络、软件、分析和智能)- 通过 Internet(云)提供快速创新、弹性资源和规模经济。对于云服务,通常你只需使用多少支付多少,从而帮助降低运营成本,使基础设施更有效地运行,并能根据业务需求的变化调整对服务的使用。云计算的三种主要类型包括基础设施即服务、平台即服务和软件即服务。每种类型的云计算都提供不同级别的控制、灵活性和管理。云计算的分层架构任何技术,总少不了会采用分层的架构(貌似是这样的~),这也验证了某位科学先驱所说的,任何问题,都可以通过增加一个间接的中间层来解决。云计算的分层架构可以从技术和使用者,也就是租户的角度,分为两种不同的架构,如下图,左边是技术视角架构,右边租户视角架构。从技术视角看,计算、存储、网络等底层基础设施构成硬件资源层,虚拟化层通过虚拟化技术,并根据上层应用需求分配、编排和管理着这些资源,为了让资源具备高可用、高可靠,以及可扩展等特性,增加相应的中间层来支持,最上层则提供 Web 等友好控制台给用户,以 RESTful API 的方式展示资源,提高用户体验。而从租户视角来看,租户根据自身业务的需求,如高可用,和所属业务领域,如游戏,依据不同的业务逻辑,来申请使用资源。这种方式能够很好隔离资源的提供者和使用者,提高了灵活性,让资源能够得到最大化的利用。公有云、私有云、混合云公有云公有云为第三方云服务提供商所拥有和运营,他们通过 Internet 提供其计算资源(如服务器和存储空间)。Microsoft Azure 是公有云的一个示例。在公有云中,所有硬件、软件和其他支持性基础结构均为云提供商所拥有和管理。使用 Web 浏览器访问这些服务和管理你的帐户。私有云私有云是指专供一个企业或组织使用的云计算资源。私有云可以实际位于公司的现场数据中心之上。某些公司还向第三方服务提供商付费托管其私有云。在私有云中,在专用网络上维护服务和基础结构。混合云混合云组合了公有云和私有云,通过允许在这二者之间共享数据和应用程序的技术将它们绑定到一起。混合云允许数据和应用程序在私有云和公共云之间移动,使你能够更灵活地处理业务并提供更多部署选项,有助于你优化现有基础结构、安全性和符合性。云计算和虚拟化的区别容器技术早期,大家都认为硬件抽象层基于hypervisor的虚拟化方式可以最大程度上提供虚拟化管理的灵活性。各种不同操作系统的虚拟机都能通过hypervisor(KVM、XEN等)来衍生、运行、销毁。然而,随着时间推移,用户发现hypervisor这种方式麻烦越来越多。为什么?因为对于hypervisor环境来说,每个虚拟机都需要运行一个完整的操作系统以及其中安装好的大量应用程序。但实际生产开发环境里,我们更关注的是自己部署的应用程序,如果每次部署发布我都得搞一个完整操作系统和附带的依赖环境,那么这让任务和性能变得很重和很低下。基于上述情况,人们就在想,有没有其他什么方式能让人更加的关注应用程序本身,底层多余的操作系统和环境我可以共享和复用?换句话来说,那就是我部署一个服务运行好后,我再想移植到另外一个地方,我可以不用再安装一套操作系统和依赖环境。这就像集装箱运载一样,我把货物一辆兰博基尼跑车(好比开发好的应用APP),打包放到一容器集装箱里,它通过货轮可以轻而易举的从上海码头(CentOS7.2环境)运送到纽约码头(Ubuntu14.04环境)。而且运输期间,我的兰博基尼(APP)没有受到任何的损坏(文件没有丢失),在另外一个码头卸货后,依然可以完美风骚的赛跑(启动正常)。Linux Container容器技术的诞生(2008年)就解决了IT世界里“集装箱运输”的问题。Linux Container(简称LXC)它是一种内核轻量级的操作系统层虚拟化技术。Linux Container主要由Namespace和Cgroup两大机制来保证实现。那么Namespace和Cgroup是什么呢?刚才我们上面提到了集装箱,集装箱的作用当然是可以对货物进行打包隔离了,不让A公司的货跟B公司的货混在一起,不然卸货就分不清楚了。那么Namespace也是一样的作用,做隔离。光有隔离还没用,我们还需要对货物进行资源的管理。同样的,航运码头也有这样的管理机制:货物用什么样规格大小的集装箱,货物用多少个集装箱,货物哪些优先运走,遇到极端天气怎么暂停运输服务怎么改航道等等… 通用的,与此对应的Cgroup就负责资源管理控制作用,比如进程组使用CPU/MEM的限制,进程组的优先级控制,进程组的挂起和恢复等等。容器技术的特点容器的特点其实我们拿跟它跟硬件抽象层虚拟化hypervisor技术对比就清楚了,我们之前也提到过,传统的虚拟化(虚拟机)技术,创建环境和部署应用都很麻烦,而且应用的移植性也很繁琐,比如你要把vmware里的虚拟机迁移到KVM里就很繁琐(需要做镜像格式的转换)。那么有了容器技术就简单了,总结下容器技术主要有三个特点:\1. 极其轻量:只打包了必要的Bin/Lib;
\2. 秒级部署:根据镜像的不同,容器的部署大概在毫秒与秒之间(比虚拟机强很多);
\3. 易于移植:一次构建,随处部署;
\4. 弹性伸缩:Kubernetes、Swam、Mesos这类开源、方便、好使的容器管理平台有着非常强大的弹性管理能力。
容器的标准化容器的标准化当前,docker几乎是容器的代名词,很多人以为docker就是容器。其实,这是错误的认识,除了docker 还有coreos。所以,容器世界里并不是只有docker一家。既然不是一家就很容易出现分歧。任何技术出现都需要一个标准来规范它,不然各搞各的很容易导致技术实现的碎片化,出现大量的冲突和冗余。因此,在2015年,由Google,Docker、CoreOS、IBM、微软、红帽等厂商联合发起的OCI(Open Container Initiative)组织成立了,并于2016年4月推出了第一个开放容器标准。标准主要包括runtime运行时标准和image镜像标准。标准的推出,有助于替成长中市场带来稳定性,让企业能放心采用容器技术,用户在打包、部署应用程序后,可以自由选择不同的容器Runtime;同时,镜像打包、建立、认证、部署、命名也都能按照统一的规范来做。两种标准主要包含以下内容:容器运行时标准 (runtime spec)
a). creating:使用 create 命令创建容器,这个过程称为创建中 b). created:容器创建出来,但是还没有运行,表示镜像和配置没有错误,容器能够运行在当前平台 c). running:容器的运行状态,里面的进程处于 up 状态,正在执行用户设定的任务 d). stopped:容器运行完成,或者运行出错,或者 stop 命令之后,容器处于暂停状态。这个状态,容器还有很多信息保存在平台中,并没有完全被删除容器镜像标准(image spec)
a). 文件系统:以 layer 保存的文件系统,每个 layer 保存了和上层之间变化的部分,layer 应该保存哪些文件,怎么表示增加、修改和删除的文件等; b). config 文件:保存了文件系统的层级信息(每个层级的 hash 值,以及历史信息),以及容器运行时需要的一些信息(比如环境变量、工作目录、命令参数、mount 列表),指定了镜像在某个特定平台和系统的配置。比较接近我们使用 docker inspect <image_id> 看到的内容; c). manifest 文件:镜像的 config 文件索引,有哪些 layer,额外的 annotation 信息,manifest 文件中保存了很多和当前平台有关的信息; d). index 文件:可选的文件,指向不同平台的 manifest 文件,这个文件能保证一个镜像可以跨平台使用,每个平台拥有不同的 manifest 文件,使用 index 作为索引容器的主要应用场景容器技术的诞生其实主要解决了PAAS的层的技术实现。像OpenStack、Cloudstack这样的技术是解决IAAS层的问题。IAAS层和PAAS层大家估计也听得很多了,关于他们的区别和特性我这里不在描述。那么容器技术主要应用在哪些场景呢?目前主流的有以下几种:==\1. 容器化传统应用 ==容器不仅能提高现有应用的安全性和可移植性,还能节约成本。每个企业的环境中都有一套较旧的应用来服务于客户或自动执行业务流程。即使是大规模的单体应用,通过容器隔离的增强安全性、以及可移植性特点,也能从 Docker 中获益,从而降低成本。一旦容器化之后,这些应用可以扩展额外的服务或者转变到微服务架构之上。==\2. 持续集成和持续部署 (CI/CD) ==通过 Docker 加速应用管道自动化和应用部署,交付速度提高至少 13 倍。现代化开发流程快速、持续且具备自动执行能力,最终目标是开发出更加可靠的软件。通过持续集成 (CI) 和持续部署 (CD),每次开发人员签入代码并顺利测试之后,IT 团队都能够集成新代码。作为开发运维方法的基础,CI/CD 创造了一种实时反馈回路机制,持续地传输小型迭代更改,从而加速更改,提高质量。CI 环境通常是完全自动化的,通过 git 推送命令触发测试,测试成功时自动构建新镜像,然后推送到 Docker 镜像库。通过后续的自动化和脚本,可以将新镜像的容器部署到预演环境,从而进行进一步测试。\3. 微服务 加速应用架构现代化进程。应用架构正在从采用瀑布模型开发法的单体代码库转变为独立开发和部署的松耦合服务。成千上万个这样的服务相互连接就形成了应用。Docker 允许开发人员选择最适合于每种服务的工具或技术栈,隔离服务以消除任何潜在的冲突,从而避免“地狱式的矩阵依赖”。这些容器可以独立于应用的其他服务组件,轻松地共享、部署、更新和瞬间扩展。Docker 的端到端安全功能让团队能够构建和运行最低权限的微服务模型,服务所需的资源(其他应用、涉密信息、计算资源等)会适时被创建并被访问。\4. IT 基础设施优化 充分利用基础设施,节省资金。Docker 和容器有助于优化 IT 基础设施的利用率和成本。优化不仅仅是指削减成本,还能确保在适当的时间有效地使用适当的资源。容器是一种轻量级的打包和隔离应用工作负载的方法,所以 Docker 允许在同一物理或虚拟服务器上毫不冲突地运行多项工作负载。企业可以整合数据中心,将并购而来的IT资源进行整合,从而获得向云端的可迁移性,同时减少操作系统和服务器的维护工作。参考:https://www.cnblogs.com/qcloud1001/p/9273549.html

我要回帖

更多关于 私有云和专有云的区别 的文章

 

随机推荐