历经十余年的发展,“云”已经成为了今天企业级IT的事实标准。从十年前部署在企业内部专有网络中,通过虚拟化将计算存储和网络资源打通的私有云;到来自第三方,部署在企业专用网络外提供虚拟化计算、网络和存储资源的公有云;再到将私有云和公有云负载组合起来的混合云。IT的脚步一刻未停,云也一直在进化。
云在进化中仍然高唱主旋律,企业也在进一步升华对云的理解。经历了私有、公有再到混合云的过渡,多云毫无疑问的成为了现今企业IT化演进的大乐章。
在RightScale发布的《2018年云状态》报告中,通过调查1000 名IT领导者,其中有81%表示其组织正在考虑多云策略。
Gartner的报告中也指出:“到2020年,75%的企业将部署多云或混合云模式。”
云开几朵,各采一支
在集体看好的潮流下,每家采用多云的企业都有各自的打算,也有很多相同的诉求。
第一,风险分摊
企业选择多云,是希望多云环境可以避免“把所有鸡蛋放到一个篮子里”。在数字化时代的今天,数据已经成为企业的核心资产,一旦某云厂商发生宕机或数据丢失事故,自家的业务分分钟就会蒙受巨大损失。此时,企业就需要采用分散投资的策略来降低风险。
第二,因地制宜
“Not all IT infrastructure are created equal”,对企业是,对云厂商亦如是。没有两家业务模式完全相同的企业,也没有两家技术特点完全相同的云厂商。千差万别的业务模式决定了企业要根据自己的工作负载选择最合适的云;同样,单一云厂商也注定不能满足所有企业的需要,这也避免了厂商锁定的问题。
第三,成本效益
企业在面对单一云厂商时,几乎没有议价的能力。一旦云提供商改变定价,企业只能被动接受。而企业如果采用“多云”,那么就可以在确保IT服务质量的前提下,选择价格更具优势的云提供商,既降低了成本,也避免陷入被动。
多云虽好,但“后宫”管理很烦恼
多云由混合云和公有云这两大主要云战略提供支持,其既能够分摊风险,又能在不同的云之间获得性能和成本优势,便成为了所有实现数字化转型企业的必经之途。然而实现方式千千万,无论采取哪种形式,都涉及到将一家公司的技术和服务与其他公司的技术和服务混搭。但让所有这些各不相同的实体协同一致地工作犹如掌管“后宫”,面临诸多挑战。
第一,迁移
迁移到多云环境并不是想象中那样的简单。在多个供应商之间统一配置和维护工作负载、流量和安全策略,非常有挑战性。不同供应商所采用的底层架构及用于创建和监控云环境的和配置管理工具也差别巨大。此外,用于配置和维护内部数据中心的工具也会有显著差别。因此,在配置和维护一个公司所创建的各种策略及法规时,其效率是非常低的,其中包括虚拟服务器、工作负载、数据存储、安全策略和报表等。所有这些配置都必须在所使用的每一个公共云或私有云中重建一次。在一个环境上进行的任何修改或更新,在其他环境又有了新的变化,这对多云自动化运维提出了更多挑战。
第二,信息孤岛
企业业务的多样性和复杂性,决定了要企业使用多云加速不同场景业务走向市场。然而,多云策略下底层基础架构、管理工具和API的差异,导致不同云之间难以互相联通,实现数据的及时传输和分析,反而会增加IT操作的复杂性,甚至形成孤岛。对企业而言,信息孤岛的出现无疑是件“帮倒忙”行为,由于数据的互相不流通,不仅没能实现不同业务场景下的加速行为,反而拖累原有业务进程。
第三,可视化
许多传统的网络监控工具都依赖于简单网络管理协议(SNMP),流量或数据包捕获等技术。这些技术的实现都需要对:服务器、交换机、防火墙和路由器构成的数据中心进行一定程度的特权访问。因此,传统的网络监控工具不适用于 IaaS 或 PaaS 服务。当然各家云厂商也已经提供了相应的监控可视化策略,但在五花八门的可视化展现上无论对运维部门还是管理者都带来了更高的学习和管理成本。另外,相互独立的可视化服务和新增的协同管道可视化给整体的端到端可视化带来了更多挑战。
第四,网络性能
多云应用中的网络性能问题通常都与数据流量流经多云、或云和数据中心以及边界点的方式相关。因为很多公共云供应商并不与其他供应商直接相连,他们会希望连接通过用户的V**或数据中心网络。节点越多,网络性能问题就越凸显。
第五,安全
安全是任何情况下都无法回避的问题。多云环境的加入为本来就复杂的安全问题进一步增加了困扰。单体的公有云可以购买安全服务,自有的私有云也可以使用原先的安全机制,但多云的场景带来了多个云的安全策略配置问题,需针对不同的云购买相互独立的安全服务,且各有特点,无法统一管理。多云协同在数据汇集与分发管道也增加了安全空白。这使得威胁情报难以关联,集中扩展威胁范围内的可见性、编排性威胁响应,或始终如一地应用和实施安全策略,这为本就复杂的多云环境增加了更多变数。
多云的最佳实践
第一,容器化应对迁移难题
容器的出现成为了打包和管理应用程序组件的最佳方式。部署容器也使工作负载更加便携,将应用程序从一个环境移动到另一个环境也变得更加容易。Kubernetes已被广泛接受为部署和操作容器应用程序的最佳方式。而且,Kubernetes的一个关键价值主张是它可以帮助规范化云提供商的功能。但随着这些进步也带来了新的复杂性。容器解决了一些DevOps挑战,但也引入了一个需要管理的抽象层。Kubernetes解决了一些运营挑战,但并非全部。
而且,Kubernetes是一个分布式应用程序,它本身需要进行管理。而且在镜像扫描、镜像来源、主机和集群扫描、分割和隔离、身份验证、访问控制方面需要整体考虑端到端安全性,从而规划适用于多云提供商的安全策略。企业必须考虑他们希望如何使用基础架构服务,管理Kubernetes组件版本,设计和管理Kubernetes集群,定义公共安全层和应用程序管理
第二,多云管理平台应对信息孤岛
解决多云策略下的信息孤岛问题,需要建立一个统一的多云管理平台,实现多云基础设施资源的统一调度,以及实现应用和数据的连通,最终实现多家云平台间的无缝衔接。通过此举,多云战略的核心价值才能够真正实现。同时也要在自动化部署、与业务深度融合、监控等方面进行针对性优化。
第三,微服务架构
对于新的“云优先”应用程序,微服务架构可以将应用程序划分为可以重复用于不同项目,从而加速开发,降低总体成本。微服务应用程序通常也依赖于无服务器计算服务,这可以进一步减少时间和费用。可以通过将业务功能进行深度解耦进一步减少重复开发并针对性的将通用性或关键性的功能进行就近或容灾部署,进一步提升服务能力。当然因为微服务是小块的功能组件,它们可以将应用程序分解成为对外部服务的很多个连续请求。这个用于访问服务的网络有可能引入传输延迟和其他网络性能问题。在用户部署微服务之前,应跨用户的混合云或多云环境测试所有负载变化下的微服务运行性能。如果用户的服务质量低于可接受水平,那么可变更网络连接以矫正之。另外,用户可以设计自己的应用部署过程以便于服务不会移动到用户网络中的盲点。
多云实践案例
如何跨整个互联网环境,保障用户能够在任意地点、任意设备上,以最快的速度访问到不同位置部署的应用,获得最佳的使用体验?应对多云场景的诸多挑战,Citrix提供了混合多云环境下的云原生应用交付。
Citrix Networking方案组合提供了一个集中管理平台,不仅可以提供一致的体验、高可靠性和高性能,还可以从任何资源位置安全地交付应用程序,同时实现传统应用和新兴云原生应用的敏捷交付。凭借高度集成、简化的方法,Citrix方案为用户带来了革命性的应用交付体验:通用软件方法提供跨平台操作一致性;灵活的ADC产品形态和跨平台交付能力;集中管理平台简化服务交付;跨多个不同网络的真实用户体验视图等。
丰富的4-7层服务的统一软件代码、跨平台 API和操作一致性,Citrix通过通用的软件方法,实现从不同资源位置可靠地高性能交付应用:
- 在各大公有云平台市场提供一键式部署的VPX,并整合了公有云的计算实例弹性伸缩功能。
- 面向容器环境,有云原生的容器形态CPX。
- 裸金属服务平台BLX:适合熟悉Linux管理环境,习惯自己搭建负载均衡的用户。
- 硬件形态的MPX和SDX。
无论是作为设备、裸机、虚拟设备还是容器提供,通用软件方法的好处是可以为用户带来跨不同平台管理应用交付的一致体验。同样,一致的API也使得跨平台的自动化运维变为可能。
值得一提的是,与跨混合多云环境提供一致管理操作类似,所有形态的Citrix ADC都可以轻松地用于微服务架构的新流量模式并且与传统应用并存。使用Kubernetes容器编排平台的自动化,可以为用户轻松提供应用架构演变所需的应用交付服务。(来源:SDNLAB)