在云上构建应用,我们应该采用平台原生还是云原生,到底哪一种云开发策略更适用于组织,Akamai 云计算服务解决方案工程总监David Rodriguez为我们分享了他的观点。20 年前,David Rodriguez作为一名软件工程师开始了他的职业生涯。 我们中的很多人共同见证了公有云前所未有的增长,并且今天这种情况仍在继续。今天Akamai将对话David Rodriguez为大家分享他关于云开发策略的思考。以下为David Rodriguez的经验分享。
延伸阅读,了解 Akamai cloud-computing
出海云服务,选择 Akamai Linode!
一些云提供商对于您应该如何与他们一同构建云服务器有着自己的看法,我们将这种方法称为平台原生。他们希望您采用一种可以应用他们的服务与工具的方式进行构建,所有这些都在他们的生态系统中去实现。但是云提供商不应该去规定您如何进行构建和部署。相反,您的工作负载应该是可移植的,使用基于开放和标准的工具,这些工具允许您将它们部署和移动到任何有意义的地方,以便于您能够找到最适合您的工作负载的区域、价格或性能。
今天的开发者采购旅程
我在选择合适的云提供商时曾经犯过错误,我们很多人也许都犯过这样的错误。但这些经历,无论是好的还是坏的都让我发现了选择过程中的模式。我发现了开发人员的云购买旅程所要经历的五个阶段。
1.发现。
无论您是在阅读 Stack Overflow 或Reddit thread、观看 YouTube 或其他任何地方的活动中听到新消息,云服务都会激起您的兴趣,因为您以前从未听说过它。 突然间你会思考:这是什么? 这将如何适用于我? 它会对我有什么帮助?
在发现过程中还会提出很多的问题。您的目标应该是获得有关云产品的独特之处、它与可感知的相似产品的区别以及它向您呈现的特定价值主张的答案。无论是对服务的承诺还是其他什么,当您问“为什么?”时,它就在这里。
2. 评估。
在这个阶段,我们已经跨过了疑惑,并且非常确定这里有一些东西。现在是提交和评估我们发现的内容的时候了。不要计划大量的时间承诺。深入研究文档通常只需要花费大约 15 到 20 分钟。 但是您需要更深入地了解服务或工具,并评估与您已知的任何差异。
虽然它有助于准确了解您正在评估的服务,但如果您对其他云提供商的了解有些狭窄,请不要担心。例如,以我们的托管 Kubernetes 产品为例。 如果您熟悉竞品,则可以将它们与 Linode Kubernetes Engine进行比较。
以下是无人机制造商 Skydio 的工程总监 Elliot Graebert 的评估用例的摘录。
“接口看起来非常相似,因此不可能去声明一个更好的接口。 他们的设计简洁明了,没有 AWS 和 Azure 中普遍存在的功能膨胀。 在我看来,这种简单性对帮助您进入、部署您的应用程序并重新开始编写代码大有帮助。” 他补充道:“Linode 启动新 k8s 集群的惊人速度将会吸引一些受众,他们的整体节点部署时间很稳定。”
3. 学习。
现在我们准备好进入最关键的一步。原因是,在评估阶段,您会投入一些时间,但这个阶段将是您投入大部分时间的时候。作为开发人员,我们有上百万个项目在脑海中盘旋。现在,我们正在进行一些合适的练习,看看这种云产品是否值得。准备投入时间学习。要回答的最大问题是:这个云提供商及其解决方案是否适用于我的下一个项目?
4.构建。
有哪个工程师不喜欢把手放在键盘上?但这个步骤是会经常出错的地方。当我们真正需要构建 MLP(“最小的可爱产品”)时,我们习惯于构建 MVP(最小可行产品)。
MVP 是最低限度的,您不一定会喜欢它们。 在我整个职业生涯中建立的所有 MVP 中,我无法说出一个适合生产的。 在我今天的角色中,我喜欢向开发人员展示如何创建 MLP。 结果是他们可以诚实地评估他们为构建它所付出的努力是否值得的结果。
5. 规模。
在这个阶段您会问很多问题。在了解规模时,您会想知道如何利用多个区域,是将数据从一个点复制到另一个点以进行灾难恢复,还是只存在于多个区域中。不仅要从流程的角度考虑规模,还要从人员的角度考虑。如果您需要将更多的人注入到这个过程中,那会是什么样子?
您还需要了解集成过程。无论是通过 CLI 还是 API,找出可以帮助您实现自动化的可用工具。 我们正处于以基础设施即代码 (IAC) 引领潮流的自动化浪潮中。 我们事半功倍,因为我们知道流程会扩展,而人们不会。对建立基础结构和扩展所需的工作进行评估。
平台原生与云原生
对于云的选择将继续成为一个不断进化的旅程。我们需要开始更客观地去看待它。当我第一次涉足云时,我专门使用这些平台和工具进行构建。当时所有可用的技术文档都是关于特定平台的。但随着我成长为一名工程师,我开始以云原生方式进行构建,这样我就可以接管工作负载并将其移动到任何地方,从而让我对自己构建的东西有更多的控制权。我在开源工具的帮助下做到了这一点,这使我能够采用统一的标准,如CI/CD、IaC和容器化。
如果所有这些都符合您的思维方式,并且您想以这种云原生方式构建,我们很乐意与您交谈。 您可以联系Akamai 云计算服务解决方案工程总监David Rodriguez或任何团队成员讨论您的云采购旅程。
这篇文章的内容感觉还行吧?有没有想要立即在 Linode 平台上亲自尝试一下?别忘了,现在注册可以免费获得价值 100 美元的使用额度,快点自己动手体验本文介绍的功能和服务吧↓↓↓
欢迎关注Akamai ,第一时间了解高可用的 MySQL/MariaDB 参考架构,以及丰富的应用程序示例。