电子书-把我的DevOps带到云端:选择二进制存储库解决方案的基本指南
简介
每个行业和各种规模的软件企业,从小型初创公司到大型企业,都在寻找加速软件开发过程的方法,以在竞争中创新并先于竞争对手向客户交付产品。
软件即服务(SaaS)和基于云计算的技术为企业节省了运行应用程序的成本,使他们摆脱了硬件和基础设施的成本,减少了维护和时间管理,以及即付即付的订阅定价,并将资本支出与运营支出进行了交易。此外,SaaS使用最新的技术和功能、负载平衡、备份和服务水平协议(sla)提供自动化和无缝更新,以提供业务连续性。
但是,SaaS解决方案提供的最潜在的价值可能是它为企业提供的灵活性和敏捷性。也就是说,能够以更低的投资风险更快地部署,最大化性能,并根据需要增加或减少资源以满足不断变化的市场条件。2022世界杯阿根廷预选赛赛程
选择利用基于云计算的应用程序和SaaS商业模式的公司越来越多。让我们仔细看看SaaS的一些主要好处。
SaaS的主要好处
将应用程序开发过程迁移到云端的主要好处是:
- 随着业务增长和市场条件的变化,通过按需可伸缩性提高业务敏捷性-组织能够快速和经济有效地适应业务和其他外部因素的变化,并根据需要扩大或缩小规模,以满足业务需求。
- 自动更新- SaaS更新可以更快速有效地完成。自动更新、升级、增强和错误修复跨越供应商托管的整个代码库,并应用于所有用户。订阅费通常包括这些维护费用。然而,技术支持通常需要额外的费用。
- 更快的预算和采购审批-对于许多公司来说,资本支出的批准需要更多的时间和管理审查,包括长期规划,而不是运营支出。由于SaaS是一种运营支出而非资本支出,因此获得预算批准可能会快得多。
- 低启动成本-订阅费用开始较低,通常基于用户数量和数据存储和数据传输使用情况。你只需要为你消费的东西付费。它不像传统的永久授权软件那样需要大量的预先许可费用。SaaS应用程序通常以订阅方式获得许可,并按年或按月收取许可费用。
- 增强的安全-云提供商坚持严格的高级安全协议,以确保数据保护,包括端到端数据加密(SSL/TLS)、密钥管理、强大的访问控制和安全智能,以及定期安全审计。
- 改进部署时间,随时随地访问-不再需要在计算环境上安装软件应用程序。相反,您的应用程序托管在您所选择的云提供商的环境中,并通过网络浏览器访问任何可用的互联网连接。
- 应用程序正常运行时间和业务连续性SaaS供应商通常会同意使应用程序可用和可访问,并通常提供全面的备份、恢复和业务连续性策略。云备份解决方案是全面备份、恢复和业务连续性战略的重要组成部分。一旦发生灾难,企业必须确信其数据受到保护,并可及时恢复,以确保业务平稳运行而不受干扰。
- 减少对硬件、现场基础设施和内部IT资源的需求2022世界杯阿根廷预选赛赛程- SaaS解决方案不需要硬件和软件采购,每年的维护费用
和升级。您订阅服务(通常也是每年或每月一次),以便在与其他客户共享的基础上使用提供商的云计算基础设施和应用程序,从而减少设置、维护和管理软件基础设施所需的内部IT资源。2022世界杯阿根廷预选赛赛程 - 可靠性SaaS供应商通常承诺SLA(服务水平协议),保证正常运行时间/可用性,受限于他们无法控制的自然事件,如互联网中断和其他灾难性事件。
现在您更多地了解了将软件开发转移到云端的好处。引导企业转向云端SaaS模式的主要驱动因素是什么?
采用云技术
根据德勤2018年11月的CIO洞察和分析*,采用云计算的两个主要驱动力是可扩展性的提高(75%)和业务敏捷性的提高(72%),成本降低排在第三位。

*德勤2018年11月11日发布的CIO云应用状况报告
为什么要在云中进行DevOps ?
那么,为什么越来越多的软件驱动型组织希望将他们的开发工作转移到云端呢?一段时间以来,企业试图通过摆脱传统的瀑布式开发及其只允许每年或每季度发布的刚性结构来改进他们的软件开发过程。简化和加快开发过程的必要性变得更加明显,这阻碍了许多依赖软件的公司从小型初创公司到行业巨头的增长。
今天,许多企业已经接受了DevOps文化和敏捷方法它主要关注沟通、协作、客户反馈和小型快速发布。开发团队已经被授权实时响应客户的需求和业务变化。DevOps已经帮助消除了围绕软件开发存在多年的延迟,从而加快了上市时间。
然而,DevOps本身并不能解决所有的软件交付问题。能够快速有效地交付具有业务灵活性和按需可伸缩性的软件版本是当今现代软件组织在市场中更好地竞争所需要的。硬件和软件采购的资本采购所固有的延迟会减缓开发过程,即使在采用敏捷开发时也是如此。在部署应用程序之前,开发团队最终会等待资本资源得到批准并变得可用。2022世界杯阿根廷预选赛赛程
改进您的DevOps实践将使部署的敏捷性和速度达到一个新的水平,并推动组织迁移到云,以利用云为组织带来的敏捷性。DevOps的主要好处是采用持续创新,而云带来了业务敏捷性和更高的可伸缩性。加速持续集成和交付(CI/CD)管道的一个重要组件是二进制存储库。DevOps二进制存储库管理您的文件(包、工件和依赖项),并在开发工作流中移动它们。
我需要二进制存储库吗?
DevOps二进制存储库管理器对软件开发过程至关重要。它使您的流程自动化,并有效地帮助您管理所有构建工件和依赖项并推动他们通过开发过程。它提供了对远程工件的可靠和一致的访问、与构建环境的集成、工件的分发和存储库的复制,并且是您的中心、单一的真相来源,可以让您在任何时候完全重新生成构建。
那么,在开发过程中管理工件和依赖关系时,您的开发团队所面临的一些挑战是什么?
- 需要容易出错的手动进程来管理二进制文件,而不能在正确的时间自动将正确的构建交付给正确的系统
- 同时管理多种开发技术(Java, .net, node.js, Python, Go等)
- 访问并获得构建和二进制历史的可见性
- 生成用于调试目的的构建级别信息
- 无法管理开源和商业依赖关系
- 维护和管理对来自远程存储库的工件的访问
- 缺乏搜索工件的可见性和能力
- 无法跟踪记录系统(构建、工件和依赖项)
- 需要企业可伸缩性来处理业务增长和业务连续性
- 缺乏本地云解决方案所能提供的灵活性和敏捷性
- 高效管理Docker容器
- 需要采用最新的技术,如微服务,容器,Kubernetes & Helm
- 希望采用新的编程语言,如Golang、R等
- 手动管理安全漏洞和开源许可证遵从性
现在,当您开始评估二进制存储库解决方案以加速云中开发时,应该包括哪些特性/优点?
二进制存储库解决方案检查表
云中的二进制存储库解决方案应该包括什么?
通用构建包管理-允许自由选择支持所有主要的构建包,如Maven, NuGet, RubyGems, Go, npm, Docker, Helm等。
与您的构建生态系统完全集成-提供端到端集成和自动化与您的CI / CD平台以及DevOps工具,您已经在使用这些工具来提高效率和生产力。提供选择的灵活性DevOps的工具选择最好的品种。包括完整的CLI和Rest api,可自定义到您的环境。
Checksum-Based存储-通过在存储库中只存储一次每个工件,优化复制过程最多10倍。
关键任务流程的企业可伸缩性-提供高可用性配置,确保零停机的快速响应、灾难恢复(多区域和多云支持)和大规模可扩展的存储,以满足业务增长的需求,确保业务连续性。
多站点复制-通过推/拉、多推和事件驱动复制支持全球地理分布的团队,以确保最大性能。
访问远程存储库—提供对远程工件的一致、可靠访问。工件的本地缓存消除了再次下载它们的需要,也消除了对不可靠的网络和远程公共存储库的依赖。
支持我的商业模式-提供现场、云、混合或多云解决方案,以满足我现在和未来的业务需求。
真理的单一来源-提供二进制和依赖集的完全可见性和控制,确保工件通过您的开发阶段移动软件交付管道对于您的CI/CD管道在不同的开发环境中是预期的、兼容的和安全的。还应该通过SDLC提供过程的标准化和自动化,提高软件交付的速度和质量。
安全性、身份验证、权限和可追溯性-提供可靠和一致的访问包,通过细粒度的访问控制进行安全上传和下载。能够为特定的组和用户提供不同存储库的不同权限,并使用各种行业标准(如LDAP、基于http的SSO、Atlassian Crowd、SAML、OAuth等)执行身份验证。完全工件可跟踪性,以完全重现构建并调试它。
安全、健壮的Docker注册表-是管理和组织Docker映像的单一访问点。提供可靠、一致、高效的远程Docker注册表访问,并与您的构建生态系统、安全性和访问控制完全集成。
Kubernetes注册表-在与每个应用程序的每一层相关时,提供对代码到集群过程的洞察。您的Kubernetes Docker注册表应该收集和管理容器化应用程序中的所有工件,并跟踪内容、依赖关系和与其他Docker映像的关系,以及指定其Kubernetes部署的Helm图表。
降低安全性和遵从性风险-授权开发人员识别和减轻开源安全漏洞和开源许可证违规。通过二进制存储库管理器和安全扫描工具之间的本地集成实现优化性能。
结论
二进制存储库管理器是在云中加速DevOps CI/CD管道的必要组件。它使流程自动化,并帮助有效地管理所有构建工件和依赖项,并使它们贯穿开发流程,是您的唯一真相来源。我们已经为您提供了一个起点,让您开始将DevOps带到云端的旅程。
关于JFrog
JFrog的使命是通过液体软件实现持续更新,使开发人员能够交付高质量的应用程序,安全地流向最终用户,零停机时间。我们的解决方案满足您的业务模式需求,支持就地部署、云计算、混合和多云配置。
超过5000名客户依赖JFrog来管理他们的关键任务应用程序的二进制文件,其中包括70%以上的财富100强公司,如亚马逊、Facebook、谷歌、Netflix、Uber、VMware和Spotify都信任JFrog。
要了解更多关于JFrog解决方案的信息,请查看以下网络研讨会:

