广告

Kubernetes是这样简化云计算和开发平台的

  • 浏览(159)
  • 评论(0)
  • 译者:k8s

如今,应用程序生成的数据比以往任何时候都要多,因为企业需要从数据中获得洞察。企业不仅必须以最经济高效的方式管理和存储数据,还需要以功能性的方式利用这些数据。InfluxData的InfluxDB既提供用于存储时间序列数据的数据库,也提供用于构建使用该数据的应用程序的开发平台。
数据具有重力,这意味着在区域和云之间移动数据成本高昂。因此,地点很重要。如果一家在纽约生成数据的公司在洛杉矶有一个数据库,那么将该数据传输到不同地理位置的服务器可能成本高昂,即使是在同一云提供商的两个不同区域之间。公司数据源与其数据库之间的物理距离也会导致延迟。降低存储和移动数据的成本以及访问数据时的延迟可以改善用户体验。
为了实现这一点,需要使应用程序能够广泛访问,以应对这些挑战。然而,在多个地区使用多个云提供商带来了额外的障碍。要在所有三大云提供商(AWS、Google和Microsoft Azure)上运行,开发人员需要编写三种不同的定制应用程序并对其进行维护。
Kubernetes解决方案
为了应对这些挑战,InfluxData的团队使用Kubernetes作为云抽象层,能够灵活地在任何地区的任何云提供商上部署Kubernetes集群。
优势在于,开发人员只需编写一个应用程序,就可以在任何云提供商的任何区域中用起来。这使得扩展到新区域的速度更快、更容易。
“如果没有Kubernetes,InfluxData将不得不创建和维护多个核心应用程序版本,每个云提供商一个。开发团队将浪费时间并行开发相同的功能。相反,有了Kubernetes支持的云抽象层,他们可以专注于在单个应用程序中为用户提供价值和好处。”–InfluxData工程副总裁Ryan Betts
InfluxData的Kubernetes解决方案将新云区域的部署时间从一个月缩短到两天。与Kubernetes一起开发解决方案帮助InfluxData解决了一个关键任务问题。现在,我们可以将应用程序部署到一个云提供商,并部署到一个靠近客户生成和使用该数据的区域。
Kubernetes解决方案还带来了许多意想不到的好处。
——使用Kubernetes使可靠性团队能够通过标准化资源和基础设施的交付来优化生产力,同时遵守最佳实践。Kubernetes为站点可靠性工程师(SRE)和开发团队提供了一个标准框架和通用的协作术语。这也简化和加速了已经熟悉Kubernetes的新工程人员的入职。这使得整个团队更加高效。
——Kubernetes云抽象层带来的另一个意想不到的好处是,它允许软件工程师在类似于生产的环境中开发和测试,对他们自己的系统影响最小。
——有助于加快代码部署的一个关键开发是InfluxData团队创建的远程本地开发环境(“remocal”)。实际上,“remocal”开发环境允许每个开发人员在内部Kubernetes集群中构建一个近生产远程环境,在那里他们可以开发和测试代码。
InfluxData团队使用的旧方法是使用Docker和Kind运行应用程序的本地副本。这使用了更多的资源,导致了本地机器陷入困境和功能开发放缓的挫败感。
相比之下,Kubernetes“remocal”方法允许团队更快地构建、测试和发布代码,同时使用更少的资源。一旦代码更改进入CI,将代码部署到生产环境所需的时间不到三个小时。开发人员可以灵活、自由地在与生产环境并行的环境中实时测试他们的更改。
可扩展的解决方案
通过创造性地使用Kubernetes,InfluxData能够为客户提供多云、多区域数据存储,并在内部维护单个代码库。InfluxData的Kubernetes解决方案通过一个弹性、可伸缩的时间序列平台提供了简化和灵活性,以满足开发人员客户的需求。
该解决方案表明,Kubernetes本身可以大规模运行,包括9400多个生产pod、500多个生产节点和17个集群。
“Kubernetes使我们能够大大加快推出具有自动化功能的新集群的速度。第一个区域至少花了一个月的时间进行设置,但现在我们可以在两天内启动一个新区域。”–InfluxData云产品管理总监Balaji Palani
简而言之,Kubernetes使InfluxData能够在更接近客户数据源的情况下交付应用程序,从而减少延迟并提高性能。在内部,Kubernetes允许开发人员花更多的时间为应用程序构建新的功能和改进。
原文链接:https://thenewstack.io/how-kubernetes-simplified-our-cloud-and-development-platform/

  • 分享到:
  • icon
  • icon
  • icon
  • icon
箭头