咨询QQ:
      杂志订阅

      编辑

      网管

      培训班

      市场部

      发行部

电话服务:
 010-82024981
欢迎, 客人   会员中心   帮助   合订本   发布信息
设为首页 | 收藏本页
Kubernetes能否以可感知的方式改变数据中心?
  • 在虚拟化催生了对数据中心重新设计的构想之后,容器化技术将会进一步推动其发展,那么它做到了吗?

    在虚拟化催生了对数据中心重新设计的构想之后,容器化技术将会进一步推动其发展,那么它做到了吗?
      
      通过进一步抽象化计算基础设施,可以使开发人员的工作变得更轻松,而与此同时,软件容器化也被认为可以更有效地利用数据中心中的处理能力的驱动程序。当人们从服务器中获得更多收益之前,容纳这些服务器的数据中心的规模能够变得更小吗?能否采用电力容量为40MW的数据中心来代替电力容量为100MW的综合数据中心设施,而在这一过程中节省数亿美元的成本?
      
      尽管现在由Kubernetes领导的容器化软件运动只有不到6年的历史,但对于这样一种模式的出现在时间方面已经足够了,那么容器化是否带来了更节能的数据中心?
      
      OpenStack基金会执行董事Jonathan Bryce表示:“目前我们在这方面还没有真正详尽的定量数据。”
      
      自从OpenStack基金会在2012年成立以来,Bryce一直是软件开放基础设施运动的代言人。OpenStack基金会的最初目标是建立一个易于部署的框架,用于构建数据中心(不是建筑物和基础设施,而是数据中心的IT系统),可以像公共云一样进行配置。管理员应该能够像在Rackspace、GoGrid或AWS云平台一样在自己的服务器上部署虚拟机。Bryce表示,服务器虚拟化提高了处理器的利用率和效率,这种趋势主要是由于很多企业希望在其自己的数据中心中复制公共云的易用性。
      
      Bryce表示看到了一些数据中心的规模在缩减。据他估计,处理相同工作负载量,如今的数据中心空间只是2005年运营的数据中心的五分之一到十分之一。净占用空间的减少还影响了其他因素,其中包括数据存储密度的增加、处理能力的小型化(直到摩尔定律失效),以及在高性能计算中引入加速器。
      
      Bryce说:“虚拟化的最初实现方式是作为IT部门的一种高效工具。如果想要一台服务器,就需要提交票据,这指的并不是进入物理数据中心、连接机架服务器和电缆……而是IT管理员进入VMware,通过软件进行处理,然后就会很快地拥有一台虚拟服务器。而其效率是针对IT人员,而不是开发人员或最终用户。”
      
      虚拟化只是在软件级别上采用相同资源的自动报价过程代替了新硬件的请求过程。除了自动化之外,还需要采用基础设施遥测技术。软件和系统越来越多地提供其状态和运营历史记录,而不仅仅是专用日志,而是通过日志工具所联系的API来提供。电源管理软件利用了由服务器内部管理功能打开的新兴API库。
      
      Bryce解释说,“如果用户的应用程序性能受到影响,API的作用是使其能够迅速获取这些资源,然后迅速进行更改。一旦人们开始看到实际的云原生环境,就会为数据中心提供该API。这使用户有能力要求获得认为自己需要的资源,然后发现需要不同的资源时进行调整。”
      
      这项创新是平均CPU利用率从15%跃升至80%的时期进行的。从理论上讲,容器化可以进一步提高利用率。
      
      在过去的五年中,自从容器化革命开始以来,DavidKramer一直是数据中心客户转型的解决方案架构师。Kramer先后入职RedHat公司和Docker公司,最终入职Mirantis公司工作,Mirantis公司在2019年收购了DockerEnterprise投资组合。他的工作是为客户数据中心设计议程,使客户数据中心从虚拟机转向容器化软件基础设施。
      
      Kramer说:“我们在白板上制定典型的数据中心部署,描述出当服务器进入生产环境并成为工作负载的主机时会发生什么。通常的步骤是:订购服务器,评估各种机架方案,选择其中一种方案,配置服务器的裸机,添加虚拟机监控程序,以及将虚拟机工作负载的映像放置在虚拟机监控程序上。在那里,IT人员将服务器交给开发人员,该开发人员负责提供和安装工作负载。第二个问题是,‘工作负载的实际CPU使用率是多少?’”通常大约在30%左右。
      
      但这30%是运行应用程序及其所有依赖项,如代码库和操作系统。运行所有这些依赖项当然可以提高利用率。但在某种程度上,这就是问题所在。虚拟机环境没有利用这样一个事实,即驻留在同一服务器上但位于不同虚拟机中的多个应用程序通常具有相同的依赖关系,这意味着要执行大量重复代码,从而耗尽了硬件资源。”
      
      Kramer继续说道,“有时候,部署在服务器上的依赖关系并不与其他应用程序共存,那么该怎么办?只能部署另一个虚拟机。而在突然之间,就有了虚拟机堆叠的开销和计算资源的实际开销。容器化几乎颠覆了这一说法。
      
      换句话说,一旦容器引擎(如Docker)成为应用程序的支持层,即使安装在自己的虚拟机中,适当工作负载分配的下一步就是消除冗余依赖的所有开销。组织使用原有公式确定CPU的繁忙程度,这将降低利用率,同时提高效率。”
      
      也许那时,解决方案架构师可以利用机会在每个物理主机上放置更多的应用程序,并且数据中心规模应该变得更小。这是真的吗?
      
      CloudFoundryFoundation首席技术官ChipChilders回应说,“答案是否定的。从纯粹的工程角度来看,它排除了会影响这个答案的其他趋势和现实。”
      
      他继续说,“如果使用容器,还会发生哪些其他事情?组织可能会加快开发。组织的开发团队可能正在开发更多的分布式架构——开始将纯粹在数据中心运行的应用程序与在公共云中运行的应用程序混合。也可能会开发越来越多的软件。”
      
      他指出,“这是杰文斯悖论的一个例子。如果组织提高商品的使用效率,并改善对该商品的使用权限,那么实际上将会使用更多的商品。这个理论适用于云服务的使用,数据中心内的云原生架构,以及通常为了更好地利用这些优势而进行的人员和流程更改。我们看到将会开发更多的应用程序,并且采用更多的技术。”
      
      技术设施设计商HDR公司的全球总监RobertSty在2017年撰写的一份报告指出,数据中心基础设施的完全虚拟化与在大型设施中观察到的现象之间存在直接的因果关系,尤其是像Facebook公司这样的超大规模运营的数据中心。
      
      Sty写道:“随着虚拟化的实施变得越来越普遍,服务器变得更加高效和强大,数据中心运营商以更高的功率密度运行IT机柜。超大规模厂商率先将服务器机架放置在地板上,从而用热通道气流遏制系统(可移动的屏障将热的废气流与冷的进气流隔开)代替了昂贵的高架地板方法。从理论上讲,通过在虚拟机之间细分CPU能力的虚拟化系统使服务器密度增加变得可行,这应该会使服务器机架的冷却散热问题更加严重。但是,由于它们占用的空间更少,因此出现的冷却解决方案得到了根本简化,并且成本也更低。
      
      有些人认为,如果没有允许冷却地板上部署高密度服务器机架的计划,超大规模架构将是不可行的。在某些超大规模设计中,一些可用性服务器部署在单独的隔间中。这些可能需要留出足够空间的机架,并且需要备用的冷却措施。但是,这种划分假设工作负载通常分为“关键需求”池和“一般需求”池。但是,如果在服务器池中将它们全部编排在一起,那么在容器化微服务的海洋中,这种细分可能就没有意义了。
      
      在非容器化的基础设施中,需要高可用性的工作负载往往会孤立发展。在那种孤立的环境中,处理和冷却功率消耗可能会上升。”
      
      Kramer表示,降低服务器成本,通过Swarm提高容器密度和计算效率将会显著减少未充分利用的服务器。此外,分布式架构减少了对专用高可用性服务器的需求。
      
      他说,“组织的应用程序现在在容器中运行。容器的协调器以一种比传统方法更有效的方式交付工作负载。”
      
      总而言之,将工作负载隔离在容器中,并将它们与内部依赖项分离可以减少开销,并降低近期的利用率。然后,Kubernetes在整个服务器集群中重新分配工作负载将导致更高的利用率水平,并为减少服务器的数量创造了机会,也为消除数据中心的专用高可用性部分提供了机会,这意味着冷却基础设施所需的空间更少。
      
      虽然数据中心的利用率日前提高,但承载的工作负载将越来越多,这可能是人们还没有看到数据中心规模由于采用容器化技术而消减的原因。
      
      编辑:Harris
      
      

    在虚拟化催生了对数据中心重新设计的构想之后,容器化技术将会进一步推动其发展,那么它做到了吗?