草庐IT

云计算技术架构-云计算四种模式(公有云、私有云、混合云、行业云)

knighthood2001 2023-04-14 原文

接下来几篇主要从技术角度介绍云计算的架构:

 云计算四种模式:公有云、私有云、混合云和行业云(本文讲述)
云计算架构:基础架构层、云平台层、业务应用层和业务管理层
云计算服务模式:IaaS、PaaS和SaaS
云计算关键技术:虚拟化、分布式数据存储、云计算管理平台和其它技术

目录

云计算的四种模式

公有云

公有云概述:

优势:

私有云

私有云概述:

优势:

劣势:

公有云和私有云对比

混合云

混合云概述:

优势:

劣势:

行业云

行业云概述

优势

劣势

云计算的四种模式

        虽然从技术或者架构角度看,云计算都是比较单一的,但是在实际情况下,为了适应用户不同的需求,它会演变为不同的模式。在NIST(National Institude of Standards and Technology)相关关于云计算概念的文章中,其定义了云的4种模式,它们分别是: 公有云、私有云、混合云以及行业云

 

分类特点说明适合行业
公有云
规模化、运维可靠、
弹性强
公有云是为大众建的,所有入驻用户都称租户,不仅同时有很多租户,而且一个租户离开,其 资源可以马上释放给下一个租户
游戏、视频、
教育等
私有云
自主可控、数据私
密性好
基础基础设施被单个组织所独享的一种云。私有云可由组织自行管理,也可以委托给第三方管理。
金融、医疗、
政务
混合云
弹性、灵活但架构
复杂
混合云是以上几种的任意混合,这种混合可以是计算的、存储的,也可以两者兼而有之。在公有云尚不完全成熟、而私有云存在运维难、部署实践长、动态扩展难的现阶段, 混合云是一种较为理想的平滑过渡方式
金融、医疗

公有云

公有云概述:

        公有云一般可通过 Internet 使用。可能是免费或成本低廉的。这样的云有很多实例,可在当今整个开放的公有网络中提供服务。外部用户通过互联网访问服务,并不拥有云计算资源,意义在于可以以低廉的价格,提供有吸引力的服务给终端用户,创造新的业务价值。
        在公有云中,用户不清楚与其共享和使用资源的还有其他哪些用户,整个平台是如何实现的,甚至无法控制实际的物理设施。

优势:

规模大 一方面,构建公有云的基础架构往往有几十万甚至上百万台服务器的规模,另一方面,由于公有云的公开性,它能聚集来自于整个社会并且规模庞大的工作负载,从而产生巨大的规模效应,来降低每个负载的运行成本或者为海量的工作负载作更多优化。
成本低 由于对用户而言,公有云完全是按需使用的,基本无需任何前期投入,所以与其他模式相比, 公有云在初始成本方面有非常大的优势
灵活 对用户而言,公有云往往提供了非常灵活的入口,同时在容量方面几乎是无限的,即使用户所需求的量近乎疯狂,公有云也能非常快地满足。
可扩展性强 当应用程序的使用或数据增长时,用户不必考虑何时要增添计算实例或存储,这一切都将自动完成,提供了强大的自动扩展功能。
功能全面 公有云在功能方面非常丰富。比如,支持多种主流的操作系统和成千上万个应用。

私有云

私有云概述:

         私有云主要为企业组织内部提供云服务,不对公众开放 ,在企业的防火墙内工作,并且企业IT人员能对其数据、安全性和服务质量进行有效地控制。与传统的企业数据中心相比,私有云可以支持动态灵活的基础设施,降低IT架构的复杂度,使各种IT资源得以整合和标准化。

优势:

支持定制和遗留应用现有公有云所支持应用的范围都偏主流,如x86架构等。而对于一些定制化程度高的应用和遗留应用就很有可能束手无策,但是这些有一部分属于一个企业最核心的应用,比如大型机、Unix等平台的应用。公有云提供的是最常见、最典型、最普遍的服务,而对于企业的个性化需求,并不一定满足得很好。而如果企业使用自建的私有云,完全可以根据自己的需要进行定制开发,满足其特殊的业务需求。
不影响现有IT管理的流程对大型企业而言,流程是其管理的核心,如果没有完善的流程,企业将会成为一盘散沙。实际情况是,不仅企业内部和业务有关的流程非常多,而且IT部门的自身流程也不少,而且大多都不可或缺,比如那些和 Sarbanes-Oxley相关的流程。在这方面,私有云的适应性比公有云好很多,因为IT部门能完全控制私有云,这样他们有能力使私有云比公有云更好地与现有流程进行整合。

劣势:

部署成本高因为建立私用云需要很高的初始成本,特别是如果需要购买大厂家的解决方案时更是如此。
持续运营成本高由于需要在企业内部维护一支专业的云计算团队,所以其持续运营成本也同样偏高。

公有云和私有云对比

功能私有云公有云
服务提供根据客户的需求提供由服务提供商设置
运维管理负责运维管理的是云服务提供商、客户自己或第三方,或是是上述的组合由云服务提供上负责运维管理
安全管理,监控与认证由云服务提供商、客户自己或第三方,也或者是它们的不同组合由云服务提供商负责安全管理
弹性与可扩展可扩展,但受计算资源规模的限制无限可扩展,有服务等级保证
准备时间需要初始化建立数分钟

混合云

混合云概述:

         混合云是指公有云+私有云,即:将企业的IT分成两部分,分别部署到两朵云上。
        通常,企业会将公开访问的应用部署到公有云上来降低成本,而将安全性要求更高、更关键或敏感的核心应用部署到自建的私有云上。

优势:

架构综合,部署灵活混合云结合了公有云/私有云两种架构,可根据企业实际情况,灵活地搭配。将内部重要数据保存在本地数据中心,同时其它业务及数据则借助公有云的计算资源来运行,更高效快捷地完成工作。
更好的安全性重要数据保存在私有云中,也就是保存在本地数据中心,企业对重要数据有完全的掌控能力,相对于单纯使用公有云来说安全性更好。

劣势:

架构复杂混合云=公有云+私有云,企业需要协调两朵云之间的协作关系,决策什么业务数据应该放置什么云上。随着业务的开展,数据可能还需要在两朵云之间迁移切换。当涉及到容灾备份等数据冗余时, 架构的复杂性 也会带来新的挑战。
成本高于公有云 混合云意味着企业需要在本地部署一套私有云,并且将两朵云同时融入业务系统。而企业自建私有云的成本是庞大的,后续的升级维护、管理运维工作也有很高的成本。总体来看, 成本将明显高于公有云

行业云

行业云概述

        由行业内或某个区域内起主导作用或者掌握关键资源的组织建立和维护,以公开或者半公开的方式,向行业内部或相关组织和公众提供有偿或无偿服务的云平台,如金融云、政务云、医疗云、卫生云等。

优势

能为行业的业务作专门的优化。和其他的云计算模式相比,这不仅能进一步方便用户,而且能进一步降低成本。

劣势

支持的范围较小,只支持某个行业,同时建设成本较高。

有关云计算技术架构-云计算四种模式(公有云、私有云、混合云、行业云)的更多相关文章

  1. ruby - 为什么我可以在 Ruby 中使用 Object#send 访问私有(private)/ protected 方法? - 2

    类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc

  2. ruby - 具有身份验证的私有(private) Ruby Gem 服务器 - 2

    我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..

  3. ruby-on-rails - 使用一系列等级计算字母等级 - 2

    这里是Ruby新手。完成一些练习后碰壁了。练习:计算一系列成绩的字母等级创建一个方法get_grade来接受测试分数数组。数组中的每个分数应介于0和100之间,其中100是最大分数。计算平均分并将字母等级作为字符串返回,即“A”、“B”、“C”、“D”、“E”或“F”。我一直返回错误:avg.rb:1:syntaxerror,unexpectedtLBRACK,expecting')'defget_grade([100,90,80])^avg.rb:1:syntaxerror,unexpected')',expecting$end这是我目前所拥有的。我想坚持使用下面的方法或.join,

  4. Unity 热更新技术 | (三) Lua语言基本介绍及下载安装 - 2

    ?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------

  5. MIMO-OFDM无线通信技术及MATLAB实现(1)无线信道:传播和衰落 - 2

     MIMO技术的优缺点优点通过下面三个增益来总体概括:阵列增益。阵列增益是指由于接收机通过对接收信号的相干合并而活得的平均SNR的提高。在发射机不知道信道信息的情况下,MIMO系统可以获得的阵列增益与接收天线数成正比复用增益。在采用空间复用方案的MIMO系统中,可以获得复用增益,即信道容量成倍增加。信道容量的增加与min(Nt,Nr)成正比分集增益。在采用空间分集方案的MIMO系统中,可以获得分集增益,即可靠性性能的改善。分集增益用独立衰落支路数来描述,即分集指数。在使用了空时编码的MIMO系统中,由于接收天线或发射天线之间的间距较远,可认为它们各自的大尺度衰落是相互独立的,因此分布式MIMO

  6. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  7. ruby - 如何计算 Liquid 中的变量 +1 - 2

    我对如何计算通过{%assignvar=0%}赋值的变量加一完全感到困惑。这应该是最简单的任务。到目前为止,这是我尝试过的:{%assignamount=0%}{%forvariantinproduct.variants%}{%assignamount=amount+1%}{%endfor%}Amount:{{amount}}结果总是0。也许我忽略了一些明显的东西。也许有更好的方法。我想要存档的只是获取运行的迭代次数。 最佳答案 因为{{incrementamount}}将输出您的变量值并且不会影响{%assign%}定义的变量,我

  8. ruby - 使用 Ruby,计算 n x m 数组的每一列中有多少个 true 的简单方法是什么? - 2

    给定一个nxmbool数组:[[true,true,false],[false,true,true],[false,true,true]]有什么简单的方法可以返回“该列中有多少个true?”结果应该是[1,3,2] 最佳答案 使用转置得到一个数组,其中每个子数组代表一列,然后将每一列映射到其中的true数:arr.transpose.map{|subarr|subarr.count(true)}这是一个带有inject的版本,应该在1.8.6上运行,没有任何依赖:arr.transpose.map{|subarr|subarr.in

  9. Ruby - 如何处理子类意外覆盖父类(super class)私有(private)字段的问题? - 2

    假设您编写了一个类Sup,我决定将其扩展为SubSup。我不仅需要了解你发布的接口(interface),还需要了解你的私有(private)字段。见证这次失败:classSupdefinitialize@privateField="fromsup"enddefgetXreturn@privateFieldendendclassSub问题是,解决这个问题的正确方法是什么?看起来子类应该能够使用它想要的任何字段而不会弄乱父类(superclass)。编辑:equivalentexampleinJava返回"fromSup",这也是它应该产生的答案。 最佳答案

  10. ruby - 从另一个私有(private)方法中使用 self.xxx() 调用私有(private)方法 xxx,导致错误 "private method ` xxx' called” - 2

    我正在尝试获得良好的Ruby编码风格。为防止意外调用具有相同名称的局部变量,我总是在适当的地方使用self.。但是现在我偶然发现了这个:classMyClass上面的代码导致错误privatemethodsanitize_namecalled但是当删除self.并仅使用sanitize_name时,它会起作用。这是为什么? 最佳答案 发生这种情况是因为无法使用显式接收器调用私有(private)方法,并且说self.sanitize_name是显式指定应该接收sanitize_name的对象(self),而不是依赖于隐式接收器(也是

随机推荐