用例——使用Mesosphere DCOS、JFrog Artifactory和Jenkins进行容器化持续部署
文摘:
Roger Ignazio / Mesosphere, 2016年5月:这次演讲将介绍Mesosphere与Jenkins和Artifactory一起提高开发人员敏捷性的方法。您将学习如何在单个DCOS集群上运行多个Jenkins实例,每个实例根据需要共享一个公共资源池,而不是静态分区。2022世界杯阿根廷预选赛赛程您还将学习如何使用Velocity的CI解决方案Jenkins构建、测试和部署容器化应用程序,以及我们如何与JFrog合作在DCOS上存储工件。
讨论转录:
我们开始吧。我叫罗杰·伊格纳齐奥。我是Mesosphere的技术主管,专门从事内部和客户的CI和CD工作。我也是Mesos的作用.这是一本关于Apache Mesos项目和整个生态系统的书。所以它早于DCOS的整个想法,你知道,Mesosphere在太空中做的一些工作,但它也涉及到他们的很多工作。
然后,这让我想到了我们一直在JFrog上做的一些工作,并让Artifactory在DCOS上。而且,你知道,只是回顾一下,你知道,我们看到,你知道,在持续交付,持续部署管道中有这四个主要组件。你知道,显然Artifactory将在那里扮演重要角色。所以,你知道,我认为,你知道,他们得到了这个-这个为Jenkins设计的Artifactory插件,它实际上允许我们从Jenkins管道中使用和发布工件。你知道,我们也把它包括在DCOS的Jenkins图像中。顺便说一下,所有这些都是开源的,所以,我的意思是,你可以在GitHub上查看,你知道,Mesosphere Jenkins Mesos repo。所有的东西都在那边。
但是我想你们大多数人可能都熟悉这个来自JFrog网站的部署图。如果你考虑不同的组件,你知道,负载均衡器,Artifactory主,Artifactory辅助,后端共享存储中的某种数据库。这些都是你可以在任何操作系统上做的事情,包括DCOS,但它真正开始发挥作用的地方是,你知道,如果你部署了Artifactory HA,而你的主服务器宕机了,你知道,这是你想要恢复并运行的东西。比如有很多后台维护任务发生在主实例上。当然,像Artifactory将继续提供工件,你可以继续存储工件,但这是你需要作为系统管理员或开发人员去做的事情。使用DCOS,如果底层机器失败或实例崩溃,或发生其他事情,Marathon将看到该失败,并将在集群的其他地方重新调度它。更新任何负载均衡器配置或任何东西。
实际上,我在本周早些时候看到了JFrog的演示,不好意思,是上周,我想总停机时间大约是三分钟左右。我的意思是,你知道,如果你接到Artifactory实例故障的呼叫,我不认为我们大多数人能够,你知道,在三分钟内查看我们的电子邮件,更不用说真正解决问题了。
所以,就像我之前说的,通过DCOS包安装Artifactory,我们可以在DCOS上得到一个交钥匙Artifactory部署,就像我说的,它附带了负载均衡器,数据库。当然,我认为Artifactory仍然有NSF或S3需求。我知道在Mesosphere,我们正在努力研究这个存储故事。有状态服务目前并不是很好的用户体验。在一个以容器为中心的世界里。这是DCOS能够做的事情,但是,你知道,有一些手动设置,我们试图让它更容易一些。
您知道,我们仍在为生产环境优化Artifactory HA包。但是,就像我说的,我上周看过它的演示,希望我们能很快把它添加到中间层宇宙中。
但除此之外,我们再回顾一下。您知道,我们已经能够在DCOS之上运行交钥匙、Jenkins和Artifactory基础设施。我们有一个容器编配器,用于将这些应用程序实际部署到生产中的一些机器上。或者分期,或者你想怎么分组。你知道,应用的服务发现能够连接到自己就像Artifactory辅助连接到主。我们有一个叫做Mesos DNS的服务。它有点像控制台,它从Mesos集群中获取信息,并通过DNS发布信息,这样服务就可以找到彼此。我们还有一个负载均衡器层,称为Minuteman。它实际上,就像我说的,在容器之间进行负载平衡。这也是完全分布的。
但实际上,你知道,如果你正在寻找DCOSes,一个容器部署平台,作为一个应用程序开发人员,你想要有某种自动化的,一流的经验,让你的应用程序从源代码到产品。把这些技术结合起来把它们连接在一起,我们就能做到。
我们未来的一些工作只是一种将整个过程可视化的方法。你知道,能够插入到GitLab或GitHub企业,你知道,看到你的存储库,看到你的代码一直到生产,或向授权用户提供访问权限,从DCOS web界面中实际进行部署。我们可以通过Artifactory、GitHub和Jenkins中提供的各种api来做到这一点。等等。
好了,谢谢收听。如果有人有问题,我们还有一点时间提问。但是谢谢。
