公司华为 位置深圳,中国 行业电信设备

挑战

华为是一家跨国公司,是世界上最大的电信设备制造商,拥有超过18万名员工。为了支持其在全球范围内的快速业务发展,华为它的内部it部门有8个数据中心,在100K+ vm上运行了800多个应用程序,为18万用户提供服务。随着新应用程序的快速增长,基于虚拟机的应用程序的管理和部署的成本和效率都成为业务敏捷性的关键挑战。“这是一个非常分布式的系统,所以我们发现以一种更加一致的方式管理所有的任务总是一个挑战,”该公司的首席软件架构师和开源社区总监侯培鑫说。“我们希望进入一种更加灵活和体面的实践。”

解决方案

在决定使用容器技术后,华为开始移动内部it部门的应用程序来运行库伯内特斯。到目前为止,大约30%的这些应用程序已被转移到云本地人。

影响

侯说:“到2016年底,华为的内部it部门使用kubernetes的平台即服务(PaaS)解决方案管理了4000多个节点和数万个集装箱。”全球部署周期从一周缩短到几分钟,应用程序交付效率提高了10倍。”对于底线,他说,“我们还看到了显著的运营开支削减,在某些情况下,削减了20- 30%,我们认为这对我们的业务非常有帮助。”考虑到华为在内部取得的成果——以及它在外部看到的需求——该公司也将这些技术融入其中FusionStage™,PAAS解决方案它为客户提供。

华为的Kubernetes之旅始于一位开发者。两年多以前,这家网络和电信巨头雇佣的一名工程师对这个项目产生了兴趣库伯内特斯这是一种跨主机集群管理应用程序容器的技术,并开始为其开放源码社区做出贡献。随着技术的发展和社区的发展,他不断地告诉他的经理。

与命运会有它,同时,华为正在寻找一个更好的编排系统,即其内部企业I.T.部门,支持每个企业流程处理。“我们在全球拥有超过180,000名员工,内部程序复杂,所以每周都需要开发一些新的应用程序,”华为首席软件架构师和开源社区总监Peixin Hou说。"Very often our I.T. departments need to launch tens of thousands of containers, with tasks running across thousands of nodes across the world. It's very much a distributed system, so we found that managing all of the tasks in a more consistent way is always a challenge."

在过去,华为使用虚拟机来封装应用程序,但“每次我们启动一个虚拟机,”侯说,“无论是因为它是一个新的服务,还是因为它是一个因某些节点功能异常而被关闭的服务,都需要花费大量时间。”华为转向集装箱运输,所以尝试Kubernetes的时机正是时候。采纳工程师的建议花了一年时间——这个过程“不是一蹴而就的,”侯说——但一旦使用,他说,“Kubernetes基本上解决了我们的大部分问题。”以前,部署时间大约需要一个星期,现在只需要几分钟。开发商很高兴。这个部门也很高兴。”

他说:“奎布韦斯为云的应用程序带来了敏捷性,扩展能力和Devops练习,为基于云的应用程序提供了很大的利益。”“它为我们提供了自定义调度架构的能力,这使得容器任务之间的关联能力可能提供更高效率的功能。它支持多种容器格式。它对各种容器网络解决方案和容器存储具有广泛的支持。”

并非最不重要的是,对底线有影响。侯说:“在某些情况下,我们还看到了大量的运营费用在某些情况下减少了20-30%,这对我们的业务非常有帮助。”

华为对这些初步结果感到满意,并看到客户对云本地技术的需求,因此在Kubernetes上加倍下注。2016年春天,该公司不仅成为用户,而且成为供应商。

“我们将Kubernetes的技术融入到我们的解决方案中,”侯说,他指的是华为的技术FusionStage™Paas提供。“我们的客户,从非常大的电信运营商到银行,喜欢云母的想法。他们喜欢Kubernetes技术。但他们需要花费大量时间来分解它们的应用程序将它们转变为微服务架构,并作为解决方案提供商,我们帮助他们。我们开始与一些中国银行合作,我们看到了客户的许多兴趣中国移动Deutsche Telekom.."

“如果你只是一个用户,那就是你只是一个用户,”补充道。但是,如果你是一个供应商,为了让您的客户说服,您应该自己使用它。幸运的是,由于华为有很多员工,我们可以展示我们可以使用这项技术建立的云的规模。我们提供客户智慧."虽然华为拥有自己的私有云,但许多客户使用华为的解决方案运行跨云应用。这是一个大的卖点,即大多数公共云提供商现在支持Kubernetes。“这使得跨云过渡比其他解决方案更容易,”侯说。

在华为本身,一旦他的团队完成了内部商业程序部门到Kubernetes的过渡,侯希望相信更多部门将迁移到云本地发展周期和实践。“我们有很多软件开发人员,所以我们将通过我们的平台作为服务解决方案,我们的产品,”他说。“我们希望看到他们的迭代周期中的重大削减。”

在华为监督了Kubernetes的最初发展之后,侯对其他考虑该技术的公司提出了建议:“当你开始设计应用的架构时,考虑云本地,从一开始就考虑微服务架构,”他说。“我认为你会从中受益。”

但是,如果你已经有了遗留应用程序,“首先从这些应用程序中一些对微服务友好的部分开始,这些部分相对容易分解成更简单的部分,而且相对轻量级,”Hou说。“不要从第一天开始就想要在多少天内将整个架构或所有东西都转移到微服务中。别把这当成目标。你应该循序渐进地做这件事。我想说的是,对于遗留应用程序来说,并不是每个部分都适合微服务架构。没有必要强迫它。”

毕竟,因为热情的侯是在华为的Kubernetes,他估计“在未来10年里,也许可以分发80%的工作量,可以在云本机环境中运行。仍有20%的百分点,但是它很好。如果我们可以让80%的工作量真的是云本地,要有敏捷性,这是一天结束时的一个更好的世界。“

在更近的未来,侯期待着围绕Kubernetes开发的新功能,而不是华为为华为为之有贡献的所有新功能。华为工程师在联邦功能上工作(将多个Kubernetes集群放入无缝管理的单个框架),调度,容器网络和存储以及刚刚宣布的技术集装箱运维,这是一个DevOps管道引擎。“这将把每个DevOps作业放入一个容器中,”他解释道。“然后,这个容器机制使用Kubernetes运行,但也用于测试Kubernetes。有了这个机制,我们可以比以前更轻松地创建、共享和管理容器化的DevOps作业。”

尽管如此,侯认为这项技术只会成为它的全部潜力。首先,他想扩大它可以协调的规模,这对于华为等超级化公司来说很重要 - 以及一些客户。

侯自豪地指出,两年后,华为工程师成为Kubernetes的贡献者,华为现在是社区的最佳贡献者。“我们已经了解到你对社区的贡献越多,”他说,“你回来的越多。”

Baidu