`
kevinwu
  • 浏览: 57411 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

开源代码及Linux系统在云计算中应用

阅读更多
云计算和存储将物理资源(例如处理器和存储)转换成 Internet 上可伸缩、可共享的资源(“作为服务”的计算和存储)。虽然虚拟化不是一个新概念,但是通过服务器虚拟化实现的物理系统共享,的确能使资源的可伸缩性大得多,效率也高得多。云计算使用户可以访问大规模计算和存储资源,而且他们不必知道那些资源的位置及其是如何配置的。正如您预期的一样,Linuxreg;在此扮演着极为重要的角色。探索云计算,了解其中的奥秘。 最近,没有哪家技术性网站不提到所谓的云计算(cloud computing)的。云计算其实就是以服务的形式提供计算资源(计算机和存储)。这又涉及到以一种简单、透明的方式动态地将服务延伸到更多的计算机和存储的能力。所有这些都类似于效用计算(utility computing)背后的思想。在效用计算中,计算资源被看作一种计量服务,就像更传统的公共设施(例如水或电)一样。它们的区别不在于这些思想背后的目标,而在于组合到一起、使这些思想成为现实的现有技术。 云计算背后最重要的概念之一就是可伸缩性,而实现它的关键则是虚拟化(virtualization)。虚拟化在一台共享计算机上聚集多个操作系统和应用程序,以便更好地利用服务器。虚拟化还允许在线迁移,因此,当一个服务器超载时,可以将一个操作系统的一个实例(以及它的应用程序)迁移到一个新的、不那么繁忙的服务器上。 从外部看,云计算只是将计算和存储资源从企业迁出,并迁入到云中。用户定义资源需求(例如计算和广域网、带宽需求),云提供者在它的基础设施中虚拟地装配这些组件。 云计算在 Internet 中迁移资源 云计算的目标是使这些资源比您自己所能提供和管理的资源更廉价。云计算除了降低成本外,还有更大的灵活性和可伸缩性。云计算提供者可以轻松地扩展虚拟环境,以通过提供者的虚拟基础设施提供更大的带宽或计算资源。 云计算在环保方面的优势是,它可以在不同的应用程序之间虚拟化和共享资源,以提高服务器的利用率。下图显示了一个例子。在这个例子中,不同的应用程序使用了 3个独立的平台,每个应用程序都在它自己的服务器上运行。在云中,可以在多个操作系统和应用程序之间共享(虚拟化)服务器,从而减少服务器的数量。更少的服务器意味着需要更少的空间(减少数据中心占用的空间)和更少用于制冷的电力(减少碳足迹)。 虚拟化和资源使用 现在让我们来探索一下,Linux 和开源社区如何为云计算领域做出贡献。您可能已经猜到,Linux 和开放源代码扮演着极其重要的角色。 Software-as-a-Service SaaS 就是以服务的形式访问 Internet 上的软件。一种早期的 SaaS 方法是 Application Service Provider(ASP)。ASP 提供对 Internet 上存放或交付的软件的订阅。ASP 交付软件,并根据软件的使用收费。这样一来,您就不必购买软件,只需随需租用软件。 SaaS 的另一个方面是在 Internet 上使用远程执行的软件。这种软件可以是本地应用程序所使用的服务(并定义为 Web服务),也可以是通过 Web 浏览器看到的远程应用程序。远程应用程序服务的一个例子是 Google Apps,它通过一个标准的 Web浏览器提供一些企业应用。要远程地执行应用程序,通常需要依赖于一个应用服务器来公布所需的服务。应用服务器 是一个软件框架,它公布软件服务的API(例如事务管理或数据库访问)。具体的例子有 Red Hat JBoss Application Server、Apache Geronimo 和 IBMreg; WebSpherereg; Application Server 等。另外还有很多其他的应用服务器,参考资料 小节给出了一份详细的列表。 SaaS 的另一个最近的例子是 Google 的 Chrome 浏览器。这个浏览器是作为新桌面的理想环境,除了具有传统的 Web 浏览体验外,还可以通过它来(以本地或远程方式)交付应用程序。(要了解更多信息,请参阅 参考资料)。 Platform-as-a-Service PaaS 可描述为一个完整的虚拟平台,它包括一个或多个服务器(在一组物理服务器上虚拟而成)、操作系统以及特定的应用程序(例如用于基于Web 的应用程序的 Apache 和 MySQL)。在某些情况下,这些平台可以预先定义和选择。而在另一些情况下,可以提供一个 VM镜像,该镜像包含所有的特定于用户的应用程序。 PaaS 一个有趣的例子是 Google App Engine。App Engine 是一个服务,通过它可以在 Google的可伸缩性极佳的架构上部署 Web 应用程序。App Engine 为可通过 Internet 引用的 Python应用程序提供一个沙盒(将来还会支持更多的语言)。除了支持用户认证、镜像操作和电子邮件发送外,App Engine 还提供了 PythonAPI,用于持久地存储和管理数据(使用 Google Query Language 或 GQL)。Web应用程序运行时所在的沙盒将限制对底层操作系统的访问。虽然 App Engine 限制了应用程序可用的功能,但是它支持有用的 Web服务的构造。请参阅 参考资料 小节,了解更多信息。 注意: 在一定的带宽和存储约束范围内,在 App Engine 中部署应用程序是免费的。但是,如果要用 App Engine 构建生产 Web 站点,则需要评估使用费。 PaaS 的另一个例子是 10gen,它既是一个云平台,又是一个可下载的开放源代码包,可用于创建您自己的私有云。10gen 是类似于App Engine 的一个软件栈,它提供与 App Engine 类似的功能 — 但有一些不同之处。通过 10gen,可以使用 Python以及 JavaScript. 和 Ruby编程语言开发应用程序。该平台还使用沙盒概念隔离应用程序,并且使用它们自己的应用服务器的许多计算机(当然,是在 Linux上构建)提供一个可靠的环境。 Infrastructure-as-a-Service IaaS 是以服务的形式交付计算机基础设施。这一层与 PaaS 的不同之处在于,只提供虚拟硬件,而没有软件栈。客户提供一个 VM镜像,该镜像在一个或多个虚拟服务器上被调用。IaaS 是作为服务的计算的最原始的形式(除了对物理基础设施的访问)。最著名的商业 IaaS提供程序是 Amazon Elastic Compute Cloud(EC2)。在 EC2 中,可以指定一个特定的VM(操作系统和应用程序集),然后将应用程序部署到它上面,或者提供要在服务器上执行的 VM 镜像。然后,只需根据计算时间、存储和网络带宽付费。 Eucalyptus 项目(Elastic Utility Computing Architecturefor Linking Your Programs To Useful Systems)是 Amazon EC2的一个开源实现,它与商业服务接口兼容。和 EC2 一样,Eucalyptus 依赖于 Linux 和 Xen进行操作系统虚拟化。Eucalyptus 是加利福尼亚大学(SantaBarbara)为进行云计算研究而开发的。您可以从该大学的网站上下载它(见 参考资料),或者通过 Eucalyptus PublicCloud 体验它,不过后者有一些限制。 另一个 EC2 风格的 IaaS 是 Enomalism 云计算平台。Enomalism 是一个开放源代码项目,它提供了一个功能类似于 EC2 的云计算框架。Enomalism 基于 Linux,同时支持 Xen 和 Kernel Virtual Machine(KVM)。与其他纯 IaaS 解决方案不同的是,Enomalism 提供了一个基于 TurboGears Web 应用程序框架和 Python 的软件栈。(eNet硅谷动力)
分享到:
评论

相关推荐

    开源代码及Linux系统在云计算中应用.pdf

    开源代码及Linux系统在云计算中应用.pdf

    嵌入式系统/ARM技术中的开源代码及Linux系统在云计算中应用

    虽然虚拟化不是一个新概念,但是通过服务器虚拟化实现的物理系统共享,的确能使资源的可伸缩性大得多,效率也高得多。云计算使用户可以访问大规模计算和存储资源,而且他们不必知道那些资源的位置及其是如何配置的。...

    Linux系统设计-本项目包含免费的XJGARSDK及示例开源代码

    本项目包含免费的XJGARSDK及示例开源代码。XJGARSDK是一个免费的跨平台实时视频处理库,只需学会一套API就可以在MAC、Windows、Linux、IOS、Android等主流操作系统,提供了业界领先的视频磨皮美颜、视频滤镜、人脸...

    云计算第二版

    7.3.1 在Linux系统中安装Eucalyptus 233 7.3.2 Eucalyptus配置和管理 236 7.3.3 Eucalyptus常用命令的示例和说明 238 习题 240 参考文献 240 第8章 其他开源云计算系统 241 8.1 简介 241 8.1.1 Cassandra 241 8.1.2 ...

    下面关于Linux操作系统的说法中,不正确的是( )。 A.Linux.docx

    1. 云计算:Linux 将继续在云计算领域扮演重要角色。 2. 人工智能:Linux 将继续应用于人工智能领域,提供更加智能的解决方案。 3. 物联网:Linux 将继续应用于物联网领域,提供更加智能的解决方案。 Linux 操作...

    云计算应用实例.doc

    "蓝云"基于IBM Almaden研究中心的云基础架构,采用了Xen和PowerVM虚拟化软件,Linux操作系统映像 以及Hadoop软件(Google File System以及MapReduce的开源实现)。IBM已经正式推出了基于x86芯片服务器系统的"蓝云 ...

    关于Linux发展历程与相关应用的研究.pdf

    2. 开源:Linux 操作系统的源代码是开放的,用户可以查看和修改源代码。 3. 灵活:Linux 操作系统可以运行在多种硬件平台上,包括服务器、超级计算机、嵌入式系统、个人计算机等。 4. 可靠:Linux 操作系统非常可靠...

    试析Linux操作系统.pdf

    Linux 操作系统从诞生到现在已经有20多年的发展历史,经过近些年的发展, Linux 操作系统在各个领域都有应用,越来越被广大用户接受认可,用户数量逐年攀升。 Linux 系统的主要组成部分: 1. 内核(Kernel): ...

    基于VMware的Linux系统下Cortex-A8平台的环境搭建.pdf

    * 专业指导是指在系统开发和环境搭建过程中提供技术支持和指导。 * 专业指导包括提供技术文档、示例代码、开发工具和技术支持等。 * 专业指导可以帮助开发者快速掌握系统开发和环境搭建的技术。

    本项目包含免费的XJGARSDK及示例开源代码。.zip

    本项目包含免费的XJGARSDK及示例开源代码。XJGARSDK是一个免费的跨平台实时视频处理库,只需学会一套API就可以在MAC、Windows、Linux、IOS、Android等主流操作系统,提供了业界领先的视频磨皮美颜、视频滤镜、人脸...

    1《云计算技术》课程标准.doc

    学生应先修《网 络操作系统应用与配置》一课,掌握Linux的基础知识和操作后,方可修本课程。 三、课程设计思路 本课程的设计思路是以计算机专业学生就业为导向,着重培养学生的动手能力。通过 调查研究社会对云计算...

    风河率先推出通过NIAP EAL4+安全认证的Linux操作系统.pdf

    此外,风河率先推出通过NIAP EAL4+安全认证的Linux操作系统,也标志着Linux操作系统在企业级应用中的地位不断提高。企业级应用对操作系统的安全性提出了极高的要求,wind河率先推出通过NIAP EAL4+安全认证的Linux...

    《云计算技术》课程标准.docx

    学生应先修《网络操作系统应用与配置》一课,掌握Linux的基础知识和操作后,方可修本课程。 三、课程设计思路 本课程的设计思路是以计算机专业学生就业为导向,着重培养学生的动手能力。通过调查研究社会对云计算的...

    2020年浙江省智能车竞赛二等奖开源代码.zip

    操作系统:LInux、IOS、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。 云计算与大数据:数据集、包括云计算平台、大数据分析、人工智能、机器学习...

    详解linux下使用IOMETER测试磁盘IO性能.doc

    Linux 作为一个开源的操作系统,具有高度的可扩展性和灵活性,广泛应用于服务器、数据中心、云计算等领域。在 Linux 下测试磁盘 IO 性能非常重要,因为磁盘 IO 性能直接影响着系统的整体性能。IOMETER 是一个流行的...

    云计算技术课程标准.docx

    学生应先修《网络操作系统应用与配置》一课,掌握Linux的基础知识和操作后,方可修本课程。 三、课程设计思路 本课程的设计思路是以计算机专业学生就业为导向,着重培养学生的动手能力。通过调查研究社会对云计算的...

    《云计算技术》课程标准.doc

    学生应先修《网 络操作系统应用与配置》一课,掌握Linux的基础知识和操作后,方可修本课程。 三、课程设计思路 本课程的设计思路是以计算机专业学生就业为导向,着重培养学生的动手能力。通过 调查研究社会对云计算...

    2《云计算技术》课程标准.doc

    学生应先修《网 络操作系统应用与配置》一课,掌握Linux的基础知识和操作后,方可修本课程。 三、课程设计思路 本课程的设计思路是以计算机专业学生就业为导向,着重培养学生的动手能力。通过 调查研究社会对云计算...

    PHP台账管理系统,实现业务员提成和客户对账.zip

    操作系统:LInux、Android树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。 网络与通信:数据传输、信号处理、网络协议、网络与通信硬件、网络安全...

Global site tag (gtag.js) - Google Analytics