公司祖先 位置犹他州的利 行业互联网公司,在线服务

挑战

祖先,全球领先的家族史和消费者基因组学,利用先进的工程和技术来帮助每个人,发现到处都是什么导致了他们的故事。公司花了超过30年的创新,构建自己的核心产品和技术,导致真正的人类和情感反应。祖先目前服务于超过260万付费用户,拥有200亿年历史的记录,9000万年家谱和超过四百万人AncestryDNA网络,使其成为世界上最大的网络消费者的基因组DNA。公司的受欢迎的网站,ancestry.com之前,一直在与大数据这个词是推广。该网站是建立在数以百计的服务、技术和传统的部署方法。“这是对我们过去工作,”保罗•麦凯表示软件工程师和建筑师血统”,但已经成为相当繁琐的处理和耗时。作为一个主要的在线服务,我们不断寻找方法来加速更加敏捷交付我们的解决方案和我们的产品。”

解决方案

公司过渡到云本地基础设施,使用码头工人集装箱化,Kubernetes编制和普罗米修斯集群监控。

影响

“每一个产品,我们每一个决定在祖先,与亲密关注取悦客户,有时改变人生的自我发现和他们的家人,”麦基说。”作为公司持续增长,增加生产率增长使用Kubernetes帮助血统让客户发现更快。此举Dockerization例如,而不是采取20到50分钟之间部署一个新的代码,我们现在可以部署在一分钟我们的代码的大部分时间。我们真正经历过大量的时间储蓄除了各种特性和受益于云本机和Kubernetes-type技术。”

它始于一个摇摇欲坠的树叶。

十年前推出以来,摇摇欲坠的树叶图标已经成为祖先的签名功能,信号用户,有一个有用的提示你可以使用它来找到更多关于你的家庭树。

所以当公司决定开始移动基础设施云本地技术,推出的第一个服务Kubernetes开源平台跨集群管理应用程序容器的主机,这是提示系统。认为它是亚马逊的推荐产品,推荐产品,而是公司建议记录,故事,或家族性连接。“这是一个非常重要的部分,“祖先的软件工程师和建筑师保罗·麦凯说,“但也足够小的一个试点项目,我们知道我们可以处理在一个非常合适的,安全的方式。”

当它在2016年初顺利上线,“我们对该服务的部署时间从50分钟减少到2或5分钟,”麦凯补充道。“开发团队只是激动因为我们专注于为我们的客户提供一个伟大的经验。这意味着特性,这意味着稳定,所有这些事情我们需要first-in-class类型操作。”

的稳定性这摇摇欲坠的叶子是一种信号,让麦凯和他的团队,他们决定拥抱原生云技术为公司是正确的。私有数据中心,祖先建造其网站(于1996年)在数以百计的服务和技术和传统的部署方法。“这对我们工作得很好过去,但之和在其处理遗留系统变得相当繁琐,费时,”麦基说。“我们正在寻找其他方法来加速,更敏捷交付我们的解决方案和我们的产品。”

2015年需要引导他们探索集装箱化。祖先的工程师已经使用技术JavaPython在Linux上,所以决定的一部分是除此之外更多的基础设施。他们很快就决定要去码头工人的集装箱化,“但它总是归结为编排真的让它工作的一部分,”麦基说。

他的团队研究了编制平台提供的码头工人组成,便OpenStack,甚至开始原型一些本土的解决方案。然后他们开始听到即将释放Kubernetes v1.0的抱怨声。“走在前列,我们在看秘密商店,所以我们不需要管理自己,所有配置地图,无缝部署策略的方法,”他说。“我们发现Kubernetes如何做他们的资源,他们的类型,他们的标签和他们的接口是如此远远领先于我们见过的其他事情。这是一个功能健康。”

另外,麦凯说,“我只是相信的信心谷歌与集装箱化的历史。所以我们一开始对它的前沿。以来,我们还没有回头。”

这并不是说没有采用新技术有一些挑战。“改变是困难的,”麦基说。“不是因为技术或者技术不好。只是人们喜欢做事情喜欢他们所做的(前)。你有早期采用者和那些在后面。这是一个双方的学习体验。”

找出最好的部署操作祖先是一个大的一部分工作需要采用原生云基础设施。“我们想确保这个过程也容易,控制的方式,让我们的最高程度的安全需求和客户需求,”麦基说。“Kubernetes和其他产品,有不错的解决方案,但需要一点胶水将其引入企业流程和界说与。它就像有一组通用的手套,但是当你真的想抓住一些让它所以它是定制的。这就是我们所要做的。”

他们的最佳实践包括允许开发人员部署到开发阶段和生产,然后控制方面需要管理和审计,如秘密。他们发现有一个名称空间/服务有助于实现这一控制秘密和配置地图。每荚和他们的需求,有一个容器让它更容易管理和较小的部署单元。

部署流程建立,所花费的时间是减少下一分钟对于一些服务。“作为程序员,我们所谓的REPL:阅读、评估、印刷、和循环,但随着Kubernetes,我们正保远程教育:编译、部署、执行和循环,”麦基说。“这是一个非常快速的回环和一个伟大的好处来理解,当我们的服务部署在生产中,他们和我们一样在预生产环境进行测试。云本机为祖先的方法给我们提供了一个更好的规模和能力,以适应业务需求的工作负载发生。”

祖先的成功的第一次部署Kubernetes提示系统帮助创造势头更大的采用的技术。“工程师喜欢代码,他们喜欢做功能,他们不喜欢坐着等待事情部署和担心扩大了,”麦基说。“过了一会儿,工程师成为了我们的冠军。在培训课程,开发团队的总是说,‘Kubernetes救了我们极大;这是一个推动者;这真的是难以置信的。“随着时间的推移,我们能够说服我们的管理,这是一个业界正在转型,我们需要成为它的一部分。”

一年后,祖先Kubernetes转变很多应用程序。“我们有许多不同的服务,构成了丰富的环境中,(网站)的DNA和家庭历史,”麦基说。“我们有前端的堆栈,后端栈和后端处理类型集群中的栈。”

公司继续权衡哪些服务将前进Kubernetes,哪些将保留,将来会被替换,因此不必搬过去。麦凯估计,该公司是“接近一半的特性。我们不需要做很多令人信服了。它与获得更多的时机的问题产品管理和工程技术人员的知识和信息,他们需要”。

展望未来,麦凯认为祖先2017年Kubernetes的好处最大化。“我们已经非常接近的一切应该或可以在年底Kubernetes除此之外的世界,”他说,并补充说,他期待的特性,比如联邦和水平圆荚体自动定量,正在筹划中。为我们“Kubernetes非常美妙,我们继续。”

波,他指出,一切与活力Kubernetes社区,这已经突飞猛进自祖先加入早期采用者。“这只是一个非常粗略的判断方法,但在松2015年6月,也许有500,”麦基说。“我最后一次看上去也许有8500只在松弛的频道。有很多大公司和不同的公司参与。各种各样的贡献者,参与者的数量,令人难以置信的能力和友好的社区。”

尽可能多的他和他的团队在祖先都受益于他所谓的“善良和许多的技术能力”在社区里,他们还贡献了最佳实践信息,记录错误问题和参与开源的谈话。他们一直在参加活动聚会帮助教育和回馈当地技术社区在犹他州。麦凯说:“我们试图回馈据我们的经验,而不仅仅是代码”。

当他会见公司正在考虑采用云本地基础设施,最好的建议,他给祖先Kubernetes的旅程是这样的:“从小做起,但难题,”他说。和“你需要一个赞助人,他了解集装箱化的愿景,来帮助您解决政治以及其他可能发生的技术障碍,当改变是必要的。”

麦凯的团队的变化已经导致了在过去一年半,原生云将祖先的部分技术未来几年的家谱。麦凯已经这样一个冠军的技术,他说人开玩笑地指责他Kubernetes纹身。

“我真的不,”他笑着说。“但我激情。我不排斥任何技术;我使用任何我需要的,让我们好了。如果是别的东西,我将使用它。但是现在我相信Kubernetes。我相信集装箱化。我认为如果我们可以到达那里,并建立自己在这个世界中,我们将进一步和更好的敏捷和我们谈论的所有事情,然后就会向前。”

他停顿了一下。“是的,我猜你可以说我是一个传教士Kubernetes,”他说。“但我没有得到一个纹身!”

Baidu