本文发表于一年多前。旧文章可能包含过时内容。请检查页面中的信息自发布以来是否已变得不正确。
企业中的 Kubernetes 与 Fujitsu 的 Cloud Load Control
今年早些时候,富士通向公众发布了其基于Kubernetes的产品Fujitsu ServerView Cloud Load Control (CLC)。有些人可能会感到惊讶,因为富士通的声誉不一定与软件开发有关,而是与硬件制造和IT服务有关。作为Linux基金会的长期成员,以及开放容器倡议和云原生计算基金会的创始成员,富士通不仅开发软件,还致力于开源软件,并为包括Kubernetes在内的多个项目做出了贡献。但我们不仅相信Kubernetes作为一个开源项目,我们还选择它作为我们产品的核心,因为它在功能集、资源需求和运行大规模分布式应用的复杂性之间提供了最佳平衡。
今天,我们将带您简要了解我们产品的背景、为什么我们认为Kubernetes非常适合您的客户以及云负载控制在此基础上提供的价值。很久很久以前……
在2014年中期,我们审视了企业在数字化背景下面临的挑战,传统企业发现越来越多的IT领域的竞争对手正在进入其核心市场。富士通的许多客户都是这样的传统企业,因此我们考虑如何帮助他们,并提出了三个基本原则
- 将应用程序与基础设施解耦 - 专注于客户价值所在:应用程序。
- 分解应用程序 - 从更小、松散耦合的部分构建应用程序。根据业务需求重新配置这些部分。还通过低成本实验鼓励创新。
- 自动化一切 - 通过引入高度自动化来应对前两点日益增长的复杂性。
我们发现Linux容器本身涵盖了第一点并触及了第二点。但当时很少有支持创建分布式应用程序并自动管理它们的工具。我们发现Kubernetes是缺失的部分。并非免费午餐
Kubernetes管理容器化工作负载的通用方法令人信服,但当我们以客户的视角审视它时,我们意识到它并非免费午餐。许多客户是中小型公司,其核心业务往往受制于严格的数据保护法规。我们确定的前三项要求是
- 本地部署(可选择混合场景)
- 作为(更大)IT基础设施的一部分,高效运营
- 企业级支持,可能在全球范围内
我们创建云负载控制时考虑了这些要求。它基本上是Kubernetes的一个发行版,旨在用于本地部署,主要关注容器基础设施的运营方面。我们致力于与社区合作,并将所有相关的更改和扩展贡献给Kubernetes项目。本地部署
正如Kubernetes核心开发者Tim Hockin在他的演讲中经常提到的那样,Kubernetes是“一个由两部分组成的故事”,其中设置Kubernetes集群并非易事,由于基础设施的变化而经常具有挑战性。这在生产就绪的Kubernetes部署中尤其如此。在公共云领域,客户可以选择像Google Container Engine (GKE) 这样的服务来完成这项工作。由于客户在本地选项较少,他们往往不得不自行考虑部署。
云负载控制解决了这些问题。它使客户能够在自己的基础设施上可靠、便捷地部署生产级Kubernetes集群,具有以下优点
- 经验证的设置过程,降低集群设置期间出现问题的风险
- 将配置时间缩短至数分钟
- 可重复的过程,这对于大型多租户环境尤其重要
云负载控制为一系列平台提供了这些优势,从云负载控制的第一个版本中的部分OpenStack发行版开始,并根据客户需求陆续增加更多平台。我们特别高兴能够移除虚拟化层,并长期支持富士通服务器上的Kubernetes裸金属部署。通过消除一层复杂性,运行系统的总成本将降低,并且缺少管理程序将提高性能。
目前,我们正在为OpenStack贡献一个通用提供商来设置Kubernetes。作为推动多平台支持的下一步,基于Docker的Kubernetes部署似乎至关重要。我们计划为这一功能做出贡献,以确保它将在Kubernetes 1.3中达到Beta版本。高效运营
降低运营成本是任何提供IT基础设施的组织的目标。这可以通过提高运营效率并帮助操作员完成工作来实现。考虑到大规模容器基础设施,我们发现区分两种类型的运营非常重要
- 平台导向型,与整个基础设施相关,通常包括各种系统,其中一个可能是Kubernetes。
- 应用导向型,更侧重于部署在Kubernetes上的单个或一小组应用程序。
Kubernetes在应用导向型方面已经非常出色。云负载控制旨在帮助平台导向型操作员高效管理Kubernetes作为整体基础设施的一部分,并使他们能够轻松执行相关的Kubernetes任务。
云负载控制的第一个版本提供了一个集成在OpenStack Horizon仪表盘中的用户界面,使平台操作人员能够创建和管理他们的Kubernetes集群。
集群被视为OpenStack的一等公民。它们的创建就像创建虚拟机一样简单。操作员无需学习新的系统或配置方法,自助服务方法使大型组织能够快速为其租户提供Kubernetes基础设施。
直观的用户界面对于简化操作至关重要。这就是我们大力贡献Kubernetes Dashboard项目并将其集成到云负载控制中的原因。特别是对于那些不熟悉Kubernetes CLI的运营商来说,因为他们还需要关注其他系统,一个出色的用户界面非常适合完成典型的操作任务,例如检查系统健康状况或部署新应用程序。
监控至关重要。通过仪表板,可以获取集群级别的洞察。为了确保OpenStack操作员对其平台有深入的了解,我们很快将集成Monasca,OpenStack的监控即服务项目,这样Kubernetes的指标就可以与OpenStack的指标从一个单一访问点进行分析。质量和企业级支持
作为一家日本公司,质量和客户关注是我们所有产品和服务中的最高优先级。这也是云负载控制真正价值的来源:它提供了一个经过密集测试和强化以确保在特定平台集上稳定运行的开源软件特定版本。
鉴于容器技术和Kubernetes对许多企业来说是新领域,专家协助是建立和运行生产级容器基础设施的关键。云负载控制提供利用富士通经验证的支持结构的支持服务。这使得支持也能覆盖在全球不同地区(如欧洲和日本)运营Kubernetes的客户,作为同一产品的一部分。结论
2014年似乎已是光年之外,我们相信选择Kubernetes是正确的。它从底层构建,旨在实现基于容器的分布式应用程序的创建,并最好地支持这一用例。
借助云负载控制,我们很高兴能够让企业在生产环境中运行Kubernetes,并帮助他们的操作员高效使用它,以便DevOps团队可以在此基础上构建出色的应用程序。