
头在云中。
云(3), 基础设施(34)当我写的时候公共云正在演变基础设施工程的角色,我有点想象了一个先兆问题——我们应该在公共云上运行我们的基础设施吗?–已经很安定了。出乎意料的是,我发现自己每年讨论的次数更多而不是更少,所以我花了一些时间来组织和记录我的想法。
简而言之:在公共云上运行除非(1)它阻止您在核心竞争力上执行或(2)您的工作负载是昂贵的,并且需要一个专门的硬件配置文件,它与公共云经济所青睐的通用计算不一致。
这里的结构是(一种)首先回顾一下数据中心和公共云方法的优势,(b)遵循一些现代公司如何接近此问题,以及(C)然后以公司应该如何自己做出这个决定作为结束。
数据中心
运行自己的数据中心很好:
以不与云供应商的广义工作量对齐的方式投入您的核心竞争力。例如,如果您的核心竞争力支持加密货币挖掘机,您可以以云供应商不能降低可用性或增加的延迟,以牺牲低功率成本优化低功耗成本。
以比公共云低30%的成本提供通用计算资源。这里的“通用”指的是在CPU、RAM和IOPS等方面与公共云大致相当的资源。
请注意,这是最好的情况,需要出色的执行,但是我听到了多个公司在执行彻底的“中”分析中的“所有内容”(例如,人民经营基础设施等工资等)。
支持特殊用途工作负载,特别是从带有更少IOPS的非常大的磁盘受益的工作负载(云在很大程度上移动到SSD,远离旋转磁盘),或者您需要的垂直缩放2U或4U服务器。
这些特殊的工作负载可能是扩展您的体系结构的唯一方法(一般来说,这是一个不好的迹象,但您需要这样做),而且由于您的软件的特殊性,也可能比其他方法便宜得多。
满足特定市场中的数据位置或监管要求,通常是由于任何原因(太小,过于监管等)尚未进入的第一层云提供商的市场。
控制您费用的可预测性。管理供应链的严谨性,以满足您的成本和更多结构化规划的可预测性。人们谈论云的弹性作为一个优势,但在这方面,这是一个劣势,大公司(特别是大,上市公司)对可预测的成本给予了极大的重视。
公共云
在公共云中运行是好的:
弹性在小事中。在某种程度上,您可以使用AWS进行容量规划,并且您没有大规模弹性,但是你在小事情上有巨大的弹性,对于新的原型之类的,这允许你在没有阻碍的情况下进行创新。
这是我看到“在数据中心长大”的公司开始移动到云的主要原因,我相信这对公司的长期创新能力巨大推动。
得益于他们庞大的规模经济,只要云供应商的竞争依然激烈,大部分的节省都会转移到用户身上。
云供应商使云供应商能够支持可能类似于工作负载的通用工作负载:安全性,可用性,生产力等的改进
卸载支持开销到新的云服务,促进越来越多的基础架构,让您专注于您的核心竞争力(适用于基础架构不是您核心竞争力的一部分的企业)。
支持国际规模的数据局势转移潮汐,因为很少有公司可以同时管理数十个国家监管制度的合规和法律开销(以及那些是动态,生物,而不是你做过的东西)。
避免供应链管理。有人曾经告诉我,90%的固态硬盘都卖给了云供应商,如果这是真的,那就意味着长期只有云供应商才能获得好的固态硬盘定价。我想这种逻辑适用于ssd以外的其他服务器组件。
Even if you can get costs to be equivalent with clouds, they are always going to be a more important customer than you to the component vendors, which means they’ll get priority on components when supply dips, meaning the predictability of their supply will be higher than yours.
(If you haven’t dealt with the server supply chain, it’s easy to imagine that there is this sort of rationally optimal economy producing exactly the number of requirements components, but in practice it’s pretty common to have component scarcity due to global supply chain issues.)
现实生活中的例子
在谈论做某事的“正确方法”时,很容易变得过于抽象,因此在跳进决策标准之前,看看公司是什么是有用的实际上正在做:
- Airbnb主要在AWS上运行。
- dropbox有将大部分数据从AWS转移到他们自己的数据中心,在先前在AWS上运行完整的业务后。
- 速度运行60个存在点此外,他们还在AWS、Google、Softlayer和“其他云提供商”的平台上重新发布了一些内容。
- Lyft.完全依赖AWS。
- Pinterest.完全依赖AWS。
- Twitter跑了他们他们自己的数据中心上的生产和开发工作负载,但正在尝试在Google云平台上运行Adhoc Hadoop工作负载。
- 优步主要在自己的数据中心运行,缩放到AWS.,并运行一些多个云供应商的小工作负载。
- 缩放运行13个不同的数据中心,在AWS和Azure上的一些方面。
我推荐的外卖在这里,很多公司正在做不同的事情,没有单身主导战略你应该考虑每一个场景。
(也,读取S-1S!他们有这么多的数据。)
如何决定
好的,所以我们已经确定了非常成功的公司在云上专门运营,几乎完全关掉云,并运行混合方法。每种方法都有效。
什么应该你做?
规模经济与规模不经济
您的基础架构成本将以三种方式之一与您的业务扩展:(a)规模经济,(b)规模不全,(b)或比例。
一般来说,只要您从规模经济受益或正在按比例缩放成本,您应该优化增长。如果您以规模越来越少,那么您的增长就是扼杀您的业务,您应该优先考虑成本。
同样,如果你的业务没有增长,那么降低绝对成本比它们与业务规模的关系更重要,你应该考虑优先考虑成本,特别是如果你没有其他工作可以启动新的增长。
如果其中一个是真的(你的规模不全或您的业务增长已经放缓),那么您可能希望专注于成本,并远离公共云到您自己的数据中心是减少这些成本的可行策略。
也就是说,您仍然应该遵循优化的第一定律:优化的地方有最大的改进空间。如果你在其他领域花得更多(或者故意花得更少),首先关注那里。
增长与效率
每一项降低成本的策略将能源转移到增长。
许多成本策略可以包含在少数团队中,允许您在降低成本方面进行固定的投资(这里的一些示例包括提高编排层的效率、改进存储实施)。对于这些工作,很容易进行成本与投资的对比计算。(大致来说,如果你省的钱比你投资的多,那就发展团队来支持你的努力。)
其他成本策略要求对开发商生产力或产品开发的权衡,这些策略更加困难。使这种权衡的原则方式是考虑贴现现金流在不同的场景之间。
我相信离开公共云是在第二类。
最佳解决方案取决于您如何模拟云的生产力效益的方式,但通常我认为折扣现金流分析将争辩,以便留在云上(一种)您拥有专门的工作负载,支持在公共云中显着超过30%(b)您对未来增长的预期令人沮丧。
核心复合
如果公共云限制了您执行核心能力的能力,那么您可能希望运行自己的数据中心(例如Fastly、Dropbox)。
但是,如果你很小或正在跨越许多方向蔓延,那么你就不会长时间跑了公共云。如果您正在运行一般的基础设施(例如Pinterest,Lyft),那么您可能会在公共云上运行。
支持数据位置和区域监管制度是本权重的特别有趣的案例。您可以轻松投入更多的资助任何特定市场的法规,但您几乎肯定无法投入更多地参加会议法规每一个市场。
更细致的成熟度模型
到目前为止,我们最想到这一点是您在公司水平的决定,但随着您的大大变得足够大,不必如此。您可以在云中启动新的业务线以优化增长,并将您的成熟业务线(增长放缓)进入数据中心以优化效率。
一旦一家公司达到一定的规模和年龄,我怀疑这是数学上最佳的方法。
Trapdoor决定
专注于数据中心或云是一个有点陷阱的决定。随着时间的推移,你可以发展你的战略,但每次你改变方向,你就会失去一些专业知识,如果你经常改变方向,你就会缺乏在任何方法上都出类拔萃的专业知识。
是的,你需要这种专业知识,因为如果你没有做好,那么公共云和数据中心之间的整个权衡都是无关紧要的。优秀的云实现远远优于一个糟糕的数据中心策略,就像一个优秀的数据中心实现远远优于一个糟糕的云策略。
结束思想
总的来说,我认为很少有公司能从公共云以外的业务中获益,也很少有大公司能合理地优先考虑将其基础设施从公共云迁移出去。如果您的核心能力无法在公共云中表达,那么将基础设施的一部分迁移到您自己的数据中心是有意义的。
对于那些少数企业来说,投资他们的核心竞争力使他们更有价值和可辩护,但对于大多数人来说,它只是一个焦油坑。