2017-10-11 15:51:00
来源:
为了避免每月云计算支出超出组织的预期,组织可以使用容器,容量预购和更多的云成本管理策略来控制失控的云支出。
在云中运营组织的业务与在本地部署数据中心运行相比是根本不同的。当运营不同时,其成本的策略也不同。
从财务角度来说,数据中心需要大量的建筑资本支出,服务器和软件许可证的额外资本支出,以及为服务器和冷却系统供电以及维护和管理的虽然较小但重要的运营支出。
在云计算中没有资本支出。相反,却有显著的运营支出,用于服务器虚拟机实例,存储,网络流量,软件许可证和其他细节。
从成本管理的角度来看,将计算负载转移到云计算上有显著的好处,但也存在重大风险。
当有人想要在数据中心使用新的服务器机架时,会有批准订单和思考的理由,整个过程得到了充分的管理。它需要许可。许多公司也需要6个月的时间。一旦机架被安装,没有人注意它有多重或不被使用,除非其负载太重以至于不能正常工作,因此推动数据中心中的虚拟机和容器(如Docker)来提高服务器利用率。
如果有人想要在云中建立一个新的虚拟服务器集群,则可能需要几分钟的时间才能将其迁移。虽然组织可能需要有新的云计算资源管理审批或对每个部门的云资源进行配额管理的政策,但几乎所有访问云账户的人都可以在需要时创建自己想要的内容。
这种自由是好还是坏,都取决于组织自己的观点。从业务灵活性和功能的角度来看,这是很好的。从财务管理的角度来看,如果做到好,可能会很好,否则这是一个潜在的灾难。
在文中,将讨论如何避免“云标签震撼”。 将从优化云支出的个人技术策略开始,以云支出管理的主题结束。
(1)资产利用率
据埃森哲公司云计算全球董事总经理Michael Liebow称,云服务可能导致产生僵尸服务器。僵尸服务器几乎没有什么用途:耗费了组织的费用,但却没有做任何事情;orphans是使用组织的资源被删除后剩下的服务;还有超大的虚拟机gluttons。这三种病理状况如果管理不当,可能会使组织的云计算费用增加20%至40%。
组织及时发现云中未充分利用的资产并不容易。而来自云提供商的账单每月才提交一次,对于拥有相当大的云产业的大型企业来说,可能会收取巨额的费用。如果组织等到收到账单,就可能会为虚拟机和其他已经闲置30天的服务支付大量费用,而这些服务很久以前就被关闭或缩减了。
当组织必须管理多个云时,每个云端需要多个账户时,这就更加困难。好消息是,组织每天都可以通过电子方式从其云提供商那里获取账单信息;坏消息是组织可能需要许可或开发新的工具来管理其云资产。
(2)预购容量
一种减少组织的云资源支出的方法是在一年或几年内使用其基本容量。每个云提供商都做了一些这样的工作,并定期更改其计费策略。警告:这是一个令人困惑的领域,即使供应商声称对定价透明。
亚马逊公司解释了其预购计划:
与实时定价实例相比,保留实例为组织提供了显著的折扣(高达75%)。另外,当保留实例被分配到特定的可用区域时,它们提供了容量预留,使组织更有信心在需要时启动实例的能力。
对于具有稳定状态或可预测使用的应用程序,与使用按需实例相比,保留实例可以显著地节省成本。
亚马逊推荐保留实例:
稳态使用的应用
可能需要预留容量的应用程序
可以承诺在1年或3年任期内使用EC2以减少其计算总成本的客户
作为一个具体的例子,考虑运行Linux的N. Virginia区域中的计算优化c4.8xlarge 虚拟机实例,每小时按需支付1.591美元,并提供36个虚拟CPU和60GB内存。如果组织保留实例一年并完全支付,其价格可以下降到0.947美元/小时,节省40%的费用。同样的标准为3年期限,其价格可降至每小时0.621美元,节省61%的费用。对于可兑换3年的期限,可以让组织更灵活,每小时收费0.739美元,节省54%的费用。前期付款少,有效利率略有上升,但差额大致与时间成本一致。
客户可以灵活地更改可用性区域,实例大小和标准预留实例的网络类型。可兑换3年保留实例提供了额外的灵活性,例如在保留实例期限内使用不同实例系列,操作系统或租约的能力。
微软Azure在其通用D32-v3实例中具有类似大小的虚拟机(采用更少的CPU,更多的内存),它提供32个虚拟CPU和128GB内存,按需支付的费用为每小时1.60美元。微软Azure不提供保留实例:相反,它提供了一个企业协议,具有降低价格的前期货币承诺,尽管折扣级别尚未公布。
谷歌公司提供一个n1-standard-32虚拟机,32个虚拟CPU和120GB内存,每小时1.52美元,每月持续使用折扣。用户不必承诺延长使用期限以获得持续使用折扣:相反,它将自动应用于25%,50%和75%使用水平的增量。
谷歌公司还为虚拟机提供了承诺使用折扣,组织可以通过采购承诺合同的一到三年来激活。任何使用折扣的资源都不符合持续使用折扣的条件。通过使用折扣,虚拟机价格比常规虚拟机价格要低57%。折扣适用于区域内CPU或内存的总数,因此不受实例机器类型更改的影响。承诺使用折扣没有预付费用。组织的账单每个月都会使用承诺使用折扣。重要的是,无论组织是否使用它们,都将为其承诺支付费用。
(3)Amazon EC2 Spot和低优先级实例
Amazon EC2 Spot实例允许组织对备用的Amazon EC2计算能力进行投标定价。由于Spot实例与按需定价相比经常可以获得折扣,因此可以显著降低运行应用程序的成本,增加应用程序的计算容量和吞吐量,从而实现相同的预算,并启用新型云计算应用程序。
当组织的投标价格超过Spot价格时,即可运行Spot价格,并可按需求提供50-90%的折扣。使用Spot实例,组织将不会收取超过其指定的最高价格的费用。当组织的实例运行时,就收取该期间有效的Spot价格。如果Spot价格超过组织的指定价格,Spot将在终止前收到两分钟的通知,组织实例运行的部分时间将不会被收取费用。
如果组织的Spot实例请求包含持续时间要求,组织的实例将继续运行,直到选择终止,或者直到指定的持续时间结束为止,由于Spot价格的变化,组织的实例将不会被终止。目前,一台带有Linux的c4.8xlarge VM的Spot实例在N. Virginia区域的每小时成本为0.3591美元,而按需每小时1.591美元。
Azure将其等同于AWS Spot实例称为“低优先级”。当检查时,在美国东部的区域的低优先级D32-v3实例每小时成本为0.345美元,而按需小时为1.6美元。但是,组织无法在其账户中选择此选项。
谷歌公司相当于Spot实例被称为“可抢占的实例”。可抢占的虚拟机是一个实例,组织通常以比正常实例低得多的价格创建和运行。但是,如果计算引擎需要访问其他任务的资源,则可能会终止(抢占)这些实例。可抢占实例的计算引擎容量过大,因此其可用性因使用情况而异。目前,有北弗吉尼亚州区域的一个名为n1-standard-32抢先实例每小时成本为0.3424美元,而全价为每小时1.712美元,持续使用价格为每小时1.52美元。谷歌表示,抢占率通常在每个项目每7天在5%到15%的范围内变化。
(4)容器
如果组织拥有未充分利用的服务器,或新机架的空间有限,可以将其数据中心的一些专用服务器转换为虚拟机的主机。然后,当虚拟机主机中的内存使用成为问题时,他们将其部分虚拟机转换为容器的主机。
虚拟化与容器之间的基本区别在于,除了应用程序软件之外,虚拟机还包含完整的操作系统和一整套虚拟化硬件,而容器仅包含操作系统的一部分,某些库和应用软件。虚拟机和容器都与其他应用程序隔离,虚拟机提供更多的隔离和更好的安全性,尽管内存使用成本很高。
内存是租赁在云中的最昂贵的资源之一,容器通常只需要三分之一的内存来运行与虚拟机相同的软件。这样就可以将容器中的云产业运作成为有吸引力的成本主张,只要减少隔离度不成问题。
直到最近,容器的使用才被限制在基于Linux的系统中,并且缺乏对容器的编排,工具支持和检测。这些都不是一个真正的问题,将组织的负载转移到云中的容器是简化操作并减少云支出的好方法。
在AWS的云中,运行容器不需要额外的费用,组织只需支付底层的虚拟机和存储空间。 微软Azure可以直接从资源池中创建和使用容器,并为每个创建的实例收取0.0025美元的费用,加上每GB每秒0.0000125美元和每CPU每秒0.0000125美元的费用。例如,如果组织一个月同时运行三个容器,并且每个容器使用1GB的内存和2个CPU,那么组织每月将支付少于300美元的费用。
谷歌容器引擎在计算引擎虚拟机实例之下运行Kubernetes下的集群节点集群,组织为虚拟机付费。 Kubernetes管理部门收取少量费用,6个或更多个节点的集群每小时为0.15美元。
(5)无服务器
无服务器云计算,或者更准确地说是功能即服务,有可能大大降低将负载放入云中所涉及的成本和工作量。AWS Lambda,Bluemix OpenWhisk,Google Cloud Functions和Azure Functions都提供了一个模型,开发人员定义了一个按需运行的功能,为该功能创建触发器,并设置了该功能的内存分配。云计算基础架构需要在需要运行时为该功能分配容器,因此开发人员不必担心容量或可扩展性。
无服务器成本通常基于触发器的数量,执行时间和使用的内存数量。一个函数调用的运行时间限制为5到10分钟,具体取决于平台,但次级运行时间更常见。大多数平台还限制了可以同时运行的功能数量,并且每个月都可以提供捆绑的可用功能。
作为经验法则,如果聚合功能执行时间少于每月50万秒,或大约一个月的20%的时间,则使用无服务器功能比运行小型虚拟机成本要低。提供者的数字有所不同,以及是否将功能与全价或折扣的虚拟机实例进行比较。
在进行成本分析时,组织还需要包括开发人员和操作时间,对于无服务器功能而言通常较低,因为更多的管理被推送到云提供商。在开发和运营成本方面,使用无服务器功能可以比运行小型虚拟机更便宜,即使总功能执行利用率是每月75%。
使用无服务器功能的一个缺点是计费的复杂性。如果组织在虚拟机中托管的功能,那么该虚拟机每个月都会生成一个计费行,无论调用多少次功能。如果组织的无服务器功能为每月400万次,则在结算日志中将有400万个事件。
(6)云支出管理
鉴于云定价的复杂性以及与数据中心管理的差异,许多公司将需要采用新的云计算支出管理工具。在互联网搜索“云支出管理”,“云成本管理”或“云管理平台”将会产生至少六个可行的可能性,以及一系列无关紧要的结果。虽然组织可以使用其本机的资源标签和报告功能来管理单个云平台的使用,但如果使用两个或多个云提供商的服务,那么就很难保持使用和成本的优势。
无论组织使用什么工具,管理云支出的主要关键是标注资源。如果组织可以查看一个结算行项目,并立即看到它用于与Fizzpop产品相关的开发和测试。如果这个标记进入组织的报告和管理工具,以便组织可以放大图形中的“僵尸”,并查看其预期目的和组合关系,组织可以关闭循环,并实际执行一些关于未使用的服务器虚拟机。
云成本管理并不容易,而且大多数IT组织对其数据中心的ITIL流程和工具都无法真正做到这一点。为了有效地管理云端产品,组织需要每天监控其成本,并根据需要进行干预,通过关闭资源,缩小资源或将其放在日程表上,而不是一直运行它们。