【问题标题】:How cloud services are provisioned (and billed) once a new deployment is requested to Azure REST API?向 Azure REST API 请求新部署后,如何预配(和计费)云服务?
【发布时间】:2019-02-07 22:43:54
【问题描述】:

我正在使用 Azure REST API 创建、部署和启动具有数百个实例的云服务(经典)(托管在 Azure 存储中的 cspkg)。我注意到 Azure 用于预配和启动请求的实例的时间确实是异类的。第一个实例可能在 6-7 分钟内开始,但最后一个实例可能需要 15-20 分钟,比第一个实例长约 10 分钟。所以我的问题是:

  • 这是预期的行为吗?如果是这样,这背后的逻辑是什么?我可以做些什么来加快速度吗?

  • Azure 如何对此计费?它是否计算自部署云服务的初始时间以来的实例总数?还是考虑到每个实例的具体时间?

更新:我一直在测试更多场景,发现了一个令人费解的惊喜。如果我通过简单的等待几分钟(使用超时命令运行 .bat 文件)替换我的云服务实例应该运行的所有进程,那么所有实例几乎同时启动(最快和最慢实例之间大约 15 秒)。这不仅仅是运气和随机行为,我已经证明这种行为是可重复的,我什至无法解释根本原因。

【问题讨论】:

  • 数百 个实例?是的,考虑到分配需求,我可以想象这需要一段时间。但是......没有办法回答它是否是预期的行为。此外,“经典”云服务是相当古老的技术(客户操作系统会定期更新,但过去几年确实没有任何变化)。
  • @DavidMakogon - 建议的迁移路径是什么?我们有一个运行 2 个实例的云服务,我的理解是,前进的道路是 Service Fabric?这需要(为了获得最佳正常运行时间)5 个底层 VM 实例。我们大量使用服务总线会话,因此 Azure Functions 之类的东西是不可行的。

标签: azure azure-cloud-services azure-management-api


【解决方案1】:
  • 几周前我也查过这个,启动时间,取决于机器的大小,如果它很大它有更多的资源,所以启动时间会更快,而且,如果有任何错误,启动时的异常,VM 将回收,直到它可以成功启动。我用谷歌搜索了它,但没有找到任何加快速度的解决方案,所以我认为不可能对启动时间做任何事情。每次部署某些东西时,它都会在后台创建一个 Windows Server,并启动它并在其上部署您的包,并将您的 Web 角色放在负载均衡器后面,这就是为什么需要这么长时间,因为很多东西都是正在发生。

  • 对于经典的云服务,计费部分也不是最好的,即使在启动和回收期间,甚至在关闭时,您都必须为它付费,所以如果您完成了更新,您应该从暂存槽中删除虚拟机或缩减虚拟机,因为即使关闭,您也需要付费。

【讨论】:

    猜你喜欢
    • 2023-01-17
    • 2014-10-08
    • 1970-01-01
    • 2014-12-15
    • 2014-12-13
    • 2013-08-19
    • 2012-08-10
    • 1970-01-01
    • 2012-08-17
    相关资源
    最近更新 更多