大师网-带你快速走向大师之路 解决你在学习过程中的疑惑,带你快速进入大师之门。节省时间,提升效率

IAAS与PAAS的开发者视角

在我之前的文章中,我讨论了云计算背后的基本概念,包括定义,特性和各种服务模型。在本文中,我将更详细地讨论服务模型,特别是从开发者的角度来比较IAAS和PAAS。

我使用两个业内比较优秀的云计算服务平台进行说明:代表IAAS的Amazon Web Service和代表PAAS的Windows Azure平台。尽管如此,请注意,重点是服务模式,而不是实际的云端服务器。

基础设施即服务(IAAS)

IAAS指的是为客户提供按需基础设施服务的云服务模式。基础设施可以指可租用资源,如计算能力,存储,负载均衡等。

如表1左侧所示,IAAS提供商将负责管理物理资源,例如网络,服务器和集群计算机。此外,他们通常还将管理虚拟化技术,使客户能够运行虚拟机(虚拟机)。当涉及到操作系统(OS)时,是否由供应商或客户管理经常是有争议的。在大多数情况下,IAAS提供商将负责预装OS的客户VM映像,但客户需要随后进行管理。以AWS为例,AMI(Amazon Machine Image)为客户提供多种类型的操作系统,如Windows ServerLinux SUSELinux Red Hat。尽管预装了操作系统,但AWS不会对其进行维护或更新。

其他一些软件包括中间件(如IISTomcat,Caching Services),运行时(JRE.NET Framework)以及数据库(SQL ServerOracleMySQL)通常不在VM Image中提供。这是因为IAAS提供商不会知道,也不会在乎客户要做什么。客户需要自己维护安装他们。当上面提到的所有软件都已经安装好后,客户将最终在虚拟机上部署应用程序和数据。

循序渐进:在IAAS环境中设置应用程序

为了传达一个全面的解释,我将要一步步说明怎样在IAAS环境中设置应用程序。为此,我在BUILD会议上借鉴了Mark Russinovich的一个幻灯片。此图解释了典型的IAAS供应模式的工作原理。

考虑到完成开发多层应用程序时的一个常见情况,作为开发人员,我们通常需要将其部署到云中。应用程序将需要托管在Web服务器和RDBMS数据库上。对于IAAS,这里是必需的步骤:

1. 准备数据库服务器

从VM映像库中选择VM映像。然后,VM Image将被调配并启动。如果没有提供DBMS软件,则需要自行安装DBMS。

2. 准备Web /应用程序服务器

从库中选择虚拟机映像以进行配置和启动。如果未安装Web /应用程序服务器/运行时,则需要自行安装。

3. 配置数据库及其对象

下一步是配置数据库,包括配置数据文件,日志文件,安全性等。然后创建表格并向其中添加数据。

4. 部署应用程序

接下来,将开发的应用程序部署到Web服务器。

5.配置负载均衡器

当我们需要在多个实例上托管我怕,我们的应用程序时,可能还需要配置诸如每个实例的IP地址和负载平衡器等。

6. 管理虚拟机和DMBS

最后一步是关于管理虚拟机。例如,当操作系统上有更新或服务包时,IAAS提供商将不会自动执行此操作。相反,可能需要自己做。

平台即服务(PAAS)

现在,让我们跳到另一个云系列“PAAS”,看看它有什么不同。在PAAS中,供应模型是关于按需应用程序托管环境的。不仅像IAAS提供商那样管理组件,PAAS提供商还将帮助客户管理额外的职责,如操作系统,中间件,运行时间,甚至数据库,如表1右侧所示。

换句话说,可以将PAAS视为租用一堆软件,硬件和基础架构。客户只需带上应用程序和数据,然后就可以开始了。

按步骤:在PAAS环境中设置应用程序

对于PAAS,鉴于数据库服务器,虚拟机和Web服务器虚拟机很容易配置,您只需要执行两个步骤,如Mark Russinovich的另一张幻灯片所示。

1. 数据库供应

我们可能需要指出虚拟数据库服务器在哪个位置(哪个区域)进行了配置,但是不必自己安装一堆DBMS软件。作为用户只需要调配数据库,创建表格和添加数据。

2. 部署应用程序

这是适用于IAAS的类似步骤,您仍然需要在PAAS云环境中部署您的应用程序。

负载平衡器怎么样呢?以Windows Azure为例,它将全部自动进行配置并准备好接受流量,其他一切都将自动进行管理。您不必担心IP地址或负载均衡。

如何维护虚拟机?DBMS和Web服务器VM将由提供者维护。例如:

  • 如果托管应用程序的虚拟机存在任何硬件问题,提供商应该能够检测到故障并立即纠正,以确保您的应用程序能够保持正常运行。在Windows Azure中,Fabric Controller将是处理这类问题的组件。
  • 如果操作系统上有新的更新或修补程序,提供程序将确保您的应用程序所在的VM始终处于更新状态。例如:Windows Azure使用“ 客户操作系统版本 ”来区分服务更新。当然,你也可以选择坚持一个版本或自动更新。

概要

总而言之,我们调查了IAAS和PAAS解决方案的不同服务模式和配置步骤。PAAS供应商确实承担了比IAAS供应商更多的责任。另一方面,IAAS可以在更低层次上提供更多的灵活性(例如:公共IP地址,负载均衡等)。

世界上没有一个适合所有人的东西。作为开发人员或架构师,您应该了解客户的需求,并确定正确的模式以获得最佳的结果。

翻译人:Shedray大数据专栏,该成员来自云+社区翻译社

原文链接:https://dzone.com/articles/developers-perspective-iaas-vs

原文作者:Wely Lau