多云平台
并不是说名字,而是我在一些出版物中读到,选择多云的主要原因之一是避免供应商锁定。 虽然我可以看到这种假设背后的逻辑(拥有更多云提供商意味着您可以变得更加独立),但实际情况却大不相同。
例如,如果您在云中有一个应用程序,并且使用的是多云架构,则将有两个或三个选择来放置应用程序工作负载和相关数据: Amazon Web Services , Microsoft Azure和/或Google云平台 。
您将为该应用程序选择一个云,并执行标准迁移过程以使其启动并运行。 大多数人不了解的是,作为迁移的一部分,您可能会使应用程序工作负载成为云原生 。 这意味着您将略微或大量更改应用程序,以利用本机云服务,例如API管理,治理,安全性和存储。
通过将应用程序更改为云原生,您将自己锁定到该应用程序的云提供商。 如果您不采用云原生方法,那么以后将该分配迁移到其他提供商会更容易,但是由于不是云原生,因此部署成本不理想。
您必须在使用高级应用程序功能(原生云)之间进行权衡,从而也接受供应商锁定,或者使应用程序处于通用状态并降低最佳状态以避免锁定。 无论您使用的是单云架构还是多云架构,锁定权衡都是相同的。
相关视频:什么是云原生方法?
在此60秒的视频中,Heptio的创始人兼首席执行官Craig McLuckie和开源系统Kubernetes的发明者之一,了解了云原生方法如何改变企业构建技术的方式。
当然,将另一个公共云连接并集成到您的体系结构中是一个优势,以便在需要时以及需要时可以使用其他公共云选项。 但是,您仍然必须在原生云和避免锁定之间做出相同的折衷。
您可能会认为,可以通过使用容器或以其他方式编写可移植的应用程序来避免这种折衷。 但是,这里也需要权衡。 容器很棒,它们确实提供了云到云的可移植性,但是您必须修改大多数应用程序才能充分利用容器。 这可能比使用云原生技术还要大。 值得避免的锁定吗? 对于每种情况,这都是您需要回答的问题。
此外,编写可移植的应用程序通常会导致最小公分母方法能够与所有平台一起使用。 这意味着它们在任何地方都无法正常运行,因为它们不是云原生的。 我想您可以编写原生于多云的可移植应用程序,但是实际上您实际上要事先多次编写该应用程序,并且一次只使用一个实例。 那真的很复杂而且昂贵。
锁定是不可避免的。 但是锁定是我们所有人都必须在几个领域中做出的选择:语言,工具,体系结构以及平台。 关键是明智地选择每个锁定点,以最小化换马的需要。 但是,当必须进行更改时,就会付出一定的代价。 如果您做出正确的选择,您将不会经常支付该价格,与此同时,您将从这些选择中获得的收益要比采用最小公分母方法获得的收益更多。
翻译自: https://www.infoworld.com/article/3313081/multicloud-does-not-eliminate-vendor-lockin.html
多云平台