公司pr 地点Budel、荷兰 行业Edtech.

挑战

荷兰公司生产世界各地的教育设备和软件,pr是否有一个基于Linux服务的基础设施,在欧洲、澳大利亚和美国有多个可用区域“我们已经在过去的几年中,我们开始遇到问题与版本控制和灵活的扩展,“高级DevOps工程师维克多·范博世说,“不仅扩展的需求,而且能够部署多个产品都有自己的版本,自己的开发团队,以及他们想要解决的问题。能够在没有太多阻力的情况下将所有内容放在同一个平台上便是我们所追求的。我们希望将来能够证明我们的基础架构,同时也能解决一些与运行普通Linux服务相关的问题。”

解决方案

PROWISE团队采用集装箱化,花费时间改进其CI / CD管道,并选择Microsoft Azure的管理Kubernetes服务,阿克斯编排。“Kubernetes以一种适合我们商业模式的方式,很好地解决了像网络这样的问题,”van den Bosch说。“我们希望专注于我们的核心产品,也就是在其上运行的软件,而不一定是基础设施本身。”

影响

随着第一个基于网络的应用程序在Prowise的Kubernetes平台上进行测试,该团队看到了快速和平稳部署的好处。“旧的部署方式花了半小时的准备和半小时部署它。用Kubernetes,它是几秒钟的,”高级开发人员Bart Haalstra说。结果,添加了Van den Bosch,“我们已经从季度发布到生产中的每月都发布。我们几小时或只是当我们发现一个功能准备好生产时;之前,我们的版本大多是在几个小时内完成的,在那里它无法影响客户,因为我们对过程的信心相对较低。Kubernetes还使我们能够在错误的错误上快速跟进,并在版本之间使用零停机时间为我们的用户进行调整。对于一些错误,我们将代码修复到检测后的生产分钟内。“最近,该团队推出了一个用于内部应用程序的新的单一登录解决方案。“由于基于Kubernetes平台的资源架构,我们能够在不到一天的时间内将该应用程序纳入完全新的生产环境中,大多数时间用于测试已经众所周知的资源定义到暂存后新的环境,“van den bosch说。“在传统的VM上,这可能会花费一两天或两天,然后在我们应用更新时,可能会在我们的配置脚本中熨烫扭结。”

如果您在一段时间内尚未在学校中踏上脚,则可能会在这些天数在数字连接的课堂中看到的东西感到惊讶:触摸屏显示器,笔记本电脑,平板电脑,触摸桌等。

该空间中的领导者之一,荷兰公司的普罗旺斯,提供了一个集成的硬件和软件解决方案,以帮助教育工作者创造一个更具吸引力的学习环境。

由于公司近年来,在近年来,近年来,在荷兰以外的产品展示了欧洲,澳大利亚和美国的多个可用性区,而且每个区域的九台服务器 - 基于Linux服务的基础设施努力跟上。“我们在过去的几年里养了很多,我们开始遇到版本化和灵活的缩放问题,”2017年底,公司聘请了公司高级Devops工程师Victor Van Den Bosch,以建立一个新的平台。

他补充说:“这一问题不仅仅是在需求中扩大了十种语言,”而且在能够部署所有拥有自己的版本,他们自己的开发团队以及他们自己的问题的产品试图解决。能够在没有多大抵制的情况下将所有平台放在同一平台上,这是我们正在寻找的。我们想要未来证明我们的基础架构,并解决了与运行正常的Linux服务相关的一些问题。“

该公司在Microsoft Azure Cloud上的现有基础设施都是在虚拟机上,“一个漂亮的传统设置,”Van den Bosch说。“我们决定我们希望在我们的软件中需要一些功能,该功能需要快速扩展,能够快速地部署不同版本的不同编程语言的新应用程序和版本。我们并没有真正想要试图保留那些的麻烦特定状态的服务器。“

在研究可能的解决方案之后,他选择了Containization和Kubernetes Orchestration。“集装箱是未来的,”Van Den Bosch说。“Kubernetes以适合我们的商业模式的方式解决了像网络这样的东西。我们希望专注于我们的核心产品,这是一个在它上运行的软件,而且不一定是基础设施本身。”此外,PROWISE团队喜欢没有供应商锁定。“我们不想限于一个平台,”他说。“我们尽量不要触摸非常专有的产品,不能轻易移植到另一个供应商。”

与Kubernetes市场的时间非常短:平台上的第一个基于Web的应用程序在几个月内进入了beta。Van den Bosch的决定使用Azure管理的Kubernetes Service,AKS的决定是很大的。然后,该团队必须弄清楚要保持哪些组件和替换的组件。像新的遗物一样的监测工具被取出“因为当你将其扩展到不同的可用性区域时,它们往往变得非常昂贵,而且它只是不是非常可维护的,”他说。

在改进Prowise的CI/CD管道方面也做了大量工作。“我们希望确保管道是自动化的,易于使用,”他说。“我们已经为管道制定了很多设置和配置,从现在开始,它只是将这些脚本和配置应用到新项目中。”

随着第一个基于网络的应用程序在Prowise的Kubernetes平台上进行测试,该团队看到了快速和平稳部署的好处。“旧的部署方式花了半小时的准备和半小时部署它。用Kubernetes,它是几秒钟的,”高级开发人员Bart Haalstra说。因此,van den Bosch补充道:“在制作过程中,我们已经从每季度发布一次变成每个月发布一次。我们几乎每小时就进行一次部署,或者只是在我们发现某个特性可以投入生产时进行部署。以前,我们的发布大多是在业余时间完成的,在那里它不会影响我们的客户,因为我们对流程本身的信心相对较低。有了Kubernetes,我们敢于在繁忙的一天中进行部署,并对部署成功充满信心。”

Plus,Van den Bosch说:“Kubernetes使我们能够在错误的错误上快速跟进,并在版本之间使用零停机时间来实现调整。对于一些错误,我们将代码修复在检测后向生产分钟推送给生产分钟。”

最近,该团队推出了一个用于内部应用程序的新的单一登录解决方案。“由于基于Kubernetes平台的资源架构,我们能够在不到一天的时间内将该应用程序纳入完全新的生产环境中,大多数时间用于测试已经众所周知的资源定义到暂存后新的环境,“van den bosch说。“在传统的VM上,这可能会花费一两天或两天,然后在我们应用更新时,可能会在我们的配置脚本中熨烫扭结。”

遗留应用程序也被移动到Kubernetes。不久前,团队需要设置基于Java的应用程序来编译和运行前端。“在传统的VM上,它会采取相当多的时间来设置它并保持最新,更不用说维护,因为那条线上的维护,”Van den Bosch说。相反,它花了不到半天的时间来才能停止它并在Kubernetes上运行它。“这更容易,我们也能够节省成本,因为我们没有特别旋转新的VM。”

也许最重要的是,van den Bosch说,“Kubernetes允许我们真正考虑解决问题的最佳工具,并充分利用微服务架构。在Node.js中有一个擅长解决某个特定问题的库?使用它。想要有一个完全成熟的分析应用程序,由第三方开发,正好适合您的用例?运行它。涉足机器学习和人工智能算法,但厌倦了等待数日才能完成训练?只需要几秒钟就能把它放大。如果有一个固执的开发人员想要使用一种没人听说过的编程语言?当然,如果是装在容器里,就让他去吧。而你的运营团队/DevOps晚上还在睡觉。”

展望未来,Prowise所有新的web开发、平台和api都将在Kubernetes上。其中一个大型的绿地项目是为教师和学生搭建的平台,该平台将于9月开学季启动。用户可以登录并访问各种各样的教育应用程序。与最近收购Prowise是软件公司Oefenweb的一员,它计划提供适应性软件,使教师能够准确地了解学生的进步和薄弱环节,并自动调整作业的难度,以适应个别学生。van den Bosch说:“我们将利用Kubernetes的力量来整合、补充和支持我们的综合应用程序组合,并将我们的解决方案带到更多的教室。”

协作软件也是一个优先事项。通过单一登录软件,用户的设置和凭据保存在云中,可以在世界上的任何屏幕上使用。“我们真的试图通过我们的硬件和软件提供集成的解决方案,并使用户尽可能简单地从不同的地方使用和协作,”Van Den Bosch说。并且,Haalstra说,“我们不能在没有kubernetes的情况下做到这一点。”