设为首页 收藏本站
查看: 1268|回复: 0

[经验分享] HERE 使用 AWS EF 和 JFrog Artifactory 打造百万级工件 CI&CD

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2019-2-22 10:08:54 | 显示全部楼层 |阅读模式
本篇文章是根据 AWS 发布在 Youtube 上的视频资料翻译并整理而来,介绍的是 AWS re:Invent 2017大会上分享的 HERE Technology 使用 AWS EF 和 JFrog Artifactory 打造百万级工件 CI&CD 系统,支持数千活跃开发者的案例。 本次主讲人有三位,分别是 Suresh Prem(HERE principal system engineer),Yoav Landman(JFrog CTO、Co-Founder)和 Yong Kim(AWS Storage Business Development)。
AWS 存储和 EF 概览
AWS EF 是涵盖了块存储、文件存储和对象存储的托管云存储服务,全称是 AWS Elatic File System(https://aws.amazon.com/efs/)。
AWS EF 主要特点是高可用、低延迟和成本低廉(相对于在 AWS 上 DIY 存储方案),众多行业领军企业都采用了 AWS EF 的存储方案,这些企业包括 Netflix、GE、Atlassian 等等。
DSC0000.jpg


JFrog Artifactory
JFrog Artifactory 是全球领先的企业级二进制制品管理解决方案,包括谷歌、苹果、思科、甲骨文等等众多行业标杆企业都是其付费用户。二进制制品作为软件研发的成果,会被部署到生产环境,最终提供服务给用户,所以,这些制品应该被很好地管理起来。
DSC0001.jpg


随着 DevOps 潮流的到来,二进制制品的量呈爆炸式增长,对存储也提出了很多的要求。挑战不只是存储这些二进制文件,还包括如何在文件管理层提供 API,如何提供各种语言的仓库,甚至还包括一些自动化流程的等等。Artifactory 本身能够支持从源代码到部署环境的自动化流程,自动化的普及更加速了二进制的产生速率。
DSC0002.jpg


在这个过程中,Xray 负责对二进制进行漏洞扫描,而 Bintray 负责二进制的分发,Mission Control 负责整个流程的控制和管理,核心作用是确保整个流程更顺畅,这些产品协作起来就构成了一条从源代码到 Kubernetes 的流水线。随着流水线越来越成熟,软件供应链会逐渐建立起来,软件会像管道中的流水一样流动起来。整个软件的交付流程会越来越快,交付效率也会大幅度提升,这正是 DevOps 所追求的。
DSC0003.jpg


当然,Artifactory 也支持在 AWS 云环境中部署,所以,用户可以使用 JFrog 部署在 AWS 上的 Artifactory,也可以在自己私有的 AWS 资源中部署。
Artifactory 目前支持了几乎所有开发语言仓库,因此使用 Artifactory 的开发者数量非常庞大。据统计有超过5万开发者在使用,性能上可以支持超过1.5万次每秒的并发请求,每天有超过 10TB 的数据在系统中流转。Artifactory 支持高度自定义的元数据,可以记录 DevOps 整个生命周期的信息,因此可以将其作为"DevOps 数据库"来使用。另外,Artifactory 通常以集群模式提供服务,支持随时扩容和缩容,具有良好的"弹性"。
DSC0004.jpg


Artifactory 中的二进制文件基于 CheckSum 码进行存储,具有相同的 CheckSum 编码的文件只存储一份,因此大幅度提升了存储资源的使用率,有效减低了存储成本。在仓库复制的时候,也只会复制增量的部分,提升转储效率,也更方便垃圾回收。
DSC0005.jpg


面对各种异构的存储类型,Artifactory 提供了可扩展的存储架构,方便对接企业已有的存储资源,于此同时增加了缓存机制,从而进一步提升整体性能。整体架构如下图所示:
DSC0006.jpg


下面给出了一个配置的示例。
DSC0007.jpg


这个示例里面提供了多种的 BinaryProvider,组成一个复杂的配置结构,每一份数据有2个实例互为冗余作为备份。
Aritfactory 另一个非常重要的特性就是复制,支持跨地域的多实例间复制,满足异地协同开发的需求,也可作为灾备方案,如下图所示:
DSC0008.jpg


实例和实例之间复制可支持 Push 和 Pull 另种模式,支持事件驱动和定时执行等方式。
DSC0009.jpg


DSC00010.jpg


以上这些特性基本构成了整个流水线,这个流水线比传统我们所理解的 CI&CD 流水线更宏观,是整个组织结构级别,当然其影响对于多地域协同的组织也是非常显著的。随着各种自动化工具的完善,这个流程运转将更加流畅,自动化使得开发人员更多,而运维人数迅速下降,但每个人的能力会得到很大提升。
DSC00011.jpg


案例分享
HERE Technology 是一家提供基于位置服务(LBS)的公司,服务场景主要包括无人机导航,车载导航,地图服务等等。
DSC00012.jpg


HERE 已经有大量的用户,这些用户包括具体的人、汽车、地图应用等等,公司在超过56个国家拥有超过7000名员工。公司有超过30年的位置信息服务的经验,详情如下;
DSC00013.jpg


HERE Technology 一直采取云优先(Cloud First)的策略,那么整个公司的产品研发也自然基于云端来完成。公司是 AWS 客户,同时8年以来一直是 AWS 的合作伙伴。如此庞大的跨国研发团队是如何协作呢?他们采用了在 AWS 上部署 JFrog Artifactory 的方式。
DSC00014.jpg


通过 Artifactory 托管 NPM、YUM 和 Docker 等仓库,同时将 Artifactory 与其他的一些工具结合,实现了端到端的生产环境自动化部署方案。三个实例同时提供服务,通过负载均衡器分分流,确保集群的高可用。
之前采用 AWS EBS 服务作为存储,后来切换成 EFS,但总体架构并没有改变,在多个 Region 之间进行复制,以满足容灾备份的需求,具体架构如下:
DSC00015.jpg


由于 EFS 性能比 EBS 更优,整个方案的能力也大幅提升,目前托管了超过300个仓库,有120多万工件存储在 Artifactory 中,整个工件存储量达到21TB,值得注意的是,虽然系统如此庞大,依然能够提供99.5%的服务水平。从监控数据可以看到,整个系统的吞吐量水平达到2.8GB/s, 每天的上传和下载量也是非常可观。
DSC00016.jpg


DSC00017.jpg


总结
HERE 科技作为一家一直专注在位置服务的技术公司,一直追逐最先进的技术和最高的效率。在云优先的策略的驱动下,采用了基于 AWS+Artifactory 作为云端 DevOps 方案,实现了端到端的自动化解决方案的同时,也大幅度提升了公司的研发能力。其工件规模达到百万级别,且数千研发人员分布全球多地,对于众多希望落地 DevOps 的公司来说,是一个很值得借鉴的案例。
作者:付辉,JFrog 资深工程师
欢迎转载,但转载请注明作者与出处。谢谢!




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-675653-1-1.html 上篇帖子: AWS考证方向:二、实例绑定弹性IP 下篇帖子: AWS S3结合cloudfront distribution实现https访问
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表