2017-01-17 75 views
0

我是云平台的新手。云应用部署

我知道各种云供应商有一种机制,如果虚拟机崩溃并且无法启动,它可以启动一个新的虚拟机。在这种情况下,如何在新的虚拟机上部署代码以使云提供商旋转?

在这种情况下,不应用程序所有者必须处理的部署,或者它被提供商

+0

你在谈论独立虚拟机还是PaaS(平台即服务)? –

+0

我主要对PaaS感兴趣。但也想在IaaS中提出建议。 –

回答

0

对于PaaS的,你上传一个大包和配置(从您的构建cspkg和cscfg)照顾到云服务,这是由Azure自动部署的,您可以指定希望将应用程序部署到多少(和大小)的机器,并且可以通过门户(以及使用PowerShell/REST的外部)进行配置。

在您的解决方案,你在csdef指定大小:

<ServiceDefinition name="MyWebRole.CloudService" <WebRole name="MyWebRole" vmsize="Small">

和实例在cscfg数量:

<Role name="MyWebRole" vmName="WebRole"> <Instances count="2" />

你应该确保你有一个最低2个实例运行在你的应用程序上,如果有人失败,那么你的应用程序不会马上失败。微软可能需要拆除或更新它没有告诉你(你不应该注意到除了任何日志等),如果你的应用程序无法应付一个实例,然后确保你有3(如果发生一台服务器正在关闭,你仍然至少有2)。

通过Azure门户,您可以重新启动并重新映像(将您的软件包/配置部署到全新的机器),软件包/配置将保留在Azure中,因此您不需要再次部署它们,也会发生同样的事情当您向上/向下扩展服务时,Azure中已存在package/config,因此它“只是做它”(预计繁忙的一天?将一些机器添加到您的服务,或将其设置为基于度量标准自动缩放)。

IaaS与您平时的虚拟机场景非常相似,您可以将它们旋转起来,远程移动到它们上面并执行任何必要的操作!您可以通过门户打开和关闭它们。安装,操作系统问题/配置,修补,都是你自己的问题(可能加入到域名中,因此如果你熟悉的话可以使用策略/ DSC),所以如果你有某些需要通过exe等来安装或使用使用GUI,然后虚拟机在这种情况下工作。作为一个方面说明,我只在Azure中看到过一个问题,虚拟机越来越麻烦(蓝屏 - >插入cd错误),如果您认为自己的平台有问题,您可以执行诸如删除虚拟机但保留磁盘!)并用相同的磁盘创建一个新磁盘。

WebApps/AppServices还有一点需要考虑,它们有点像云服务,只是它们带走了一些问题,例如具有实际的底层虚拟机。

+0

谢谢丹尼尔。什么是IaaS? –

+0

在PaaS的情况下,我们使用cspkg来部署我们的应用程序。所以我明白cspkg存储在Azure中,并且在重新映像的情况下,相同的pkg部署在新VM上。但对于IaaS我想我们必须通过登录到VM或通过一些自动化来安装软件/应用程序。现在,如果Azure由于某种原因必须重新创建虚拟机,它如何知道必须在VM上部署哪个应用程序? –

+0

Azure不应在IaaS的情况下重新创建虚拟机,如果它崩溃的话,请您修复它。磁盘基本上存储在blob存储中,这意味着您可以取消分配机器并在需要时重新配置。 –