云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

数据库_企业邮箱域名解析_年度促销

小七 141 0

HashiCorp+Fastly公司

我们非常兴奋地宣布我们与Fastly的新战略合作伙伴关系,Fastly是最受欢迎的现代CDN服务之一。除了提供坚如磐石的服务外,他们还是开源软件的支持者,我们很高兴能在HashiCorp与他们合作。»去法斯特利在我们谈论Fastly之前,忽视JFrog是一种失职行为,JFrog是Bintray和Artifacture的幕后黑手。JFrog在Bintray上提供了一个慷慨的免费层来托管我们开源产品的静态二进制文件,这一点令人难以置信。他们一直是我们产品分销的支柱,我们对他们的感谢再多也不为过。如果您需要一个优秀的服务来分发具有惊人用户界面和社交功能的二进制文件,Bintray是一个优秀的选择。除了提供出色的服务外,其支持团队反应迅速,积极主动。随着我们规模的扩大,每月产品下载量也在增长。在HashiConf,Mitchell宣布,我们的产品在2015年第三季度的总下载量超过600万次,而且这个数字还在增长。像consur和Nomad这样的工具通常安装在数据中心的每台服务器上,而Vagrant和Otto等工具通常安装在每个开发人员的机器或CI服务器上。随着我们的受众在全球范围内不断扩大,我们一直在寻找如何为所有用户改善体验的方法。使用像Fastly这样的内容交付网络(CDN)使我们能够为我们的用户提供最好的服务质量,无论他们位于何处。Bintray确实提供了一个为二进制文件提供CDN前端的层,但是在我们的测试中,我们能够提供更好的Fastly体验。这绝不是Bintray质量的反映,它只是意味着第三方CDN Bintray的使用没有达到我们的分销要求。Bintray作为一个工件和元数据存储库而闪耀,但HashiCorp需要的是一个全球分布的CDN,这样我们的客户就可以快速有效地下载软件。我们将在Bintray上保留现有的产品二进制文件,直到2016年初,届时我们将关闭该帐户。我们不会在Bintray上发布新的产品版本。我们很早就开始与一些CDN提供商进行对话,但很快我们就明白了Fastly是最好的选择。抛开令人惊叹的技术选择和服务速度,Fastly对我们的问题做出了令人难以置信的回应。他们的支持团队的响应时间不到一小时,而且他们总是愿意帮助解决最模糊的问题。从今天起,我们将产品二进制文件存储在amazons3存储桶中,并使用Fastly对其进行前端处理。我们选择S3作为后端存储仅仅是因为我们对AWS技术的现有经验。我们选择Fastly是基于对多种竞争性CDN服务的仔细评估,主要因素是:奇妙的文档一个非常友好的支持团队,对我们的问题有难以置信的快速回答一个健壮的API,我们可以围绕它构建自动化能够上传我们自己的缓存配置(VCL)后端发生故障时的正常行为分析和自定义日志记录我们商定了一个通用的文件夹和产品结构(本文稍后将详细介绍),并开始将现有版本从Bintray迁移到我们的S3存储桶中。在整个过程中,我们在将所有包上载到S3存储桶之前,对所有包强制执行文件名一致性、校验和和和GPG签名。一旦我们就bucket的格式达成一致,我们就开始开发一个工具来自动化与S3和Fastly的交互,这一点非常简单,因为这两个服务都是API驱动的。我们现在有一个内部CLI应用程序,它可以管理:将新版本上载到S3生成要发布的HTML和JSON文件执行受影响页面的软清除我们的s3bucket被配置为使用我们的自定义内容作为静态网站提供内容。Fastly被配置为从S3源URL读取内容,缓存时间为3600秒。随着我们对该服务的进一步探索,我们发现Fastly为我们提供了一些惊人的功能:通过现代SSL(TLS 1.2)提供的内容HTML和JSON的动态gzip将日志发送到自定义服务以进行我们自己的聚合和分析一个实时使用仪表板,显示有关命中率、错误率、重定向等的信息我们发现的最令人兴奋的特性之一是Fastly的屏蔽,它将缓存服务指定为其他缓存服务器的存在点。这就减少了第一次读到S3时的延迟,因为这会给POP带来负担。在S3中断的情况下,我们还将Fastly配置为继续为它缓存的最后一个已知的好内容提供服务。这大大提高了停机或停机时的可靠性。最后,我们的二进制文件转移到Fastly只花了不到两天的时间。我们仍在迁移我们的静态站点和其他内容,但发布服务已经启动并正在运行,我们很高兴今天与您分享-发布.hashicorp.com.»SSL、GPG和校验和—无处不在作为流行的开源安全工具保险库的幕后黑手,我们非常关注安全性。我们的用户也很关心安全性,作为发布.hashicorp.com我们改进了我们的过程,以增加对二进制文件真实性的信心。新版本服务只能通过SSL访问。如果您通过标准HTTP访问站点,您将被重定向并强制使用HTTPS。无论您是下载版本还是查看JSONAPI,您的请求都将使用TLS1.2进行加密。此外,所有产品版本现在都包括一个SHA256SUMS文件和一个SHA256总和.sig已签名并可以使用我们的公共GPG密钥验证的文件。我们的GPG密钥存储在不同的存储引擎上,因此攻击者需要破坏多个系统才能篡改产品签名。如果您有任何问题,请发电子邮件security@hashicorp.com。»标准化迁移到Fastly也让我们有机会标准化二进制文件的URL和文件结构。现在,所有产品文件名和URL路径都是完全可预测和一致的。虽然以前的客户对我们产品ZIP文件的命名不一致表示担忧,但今后所有产品都将遵循以下命名约定:产品版本_拱形拉链例如:consur_0.6.0_linux_amd64.zip所有产品都是一个压缩和兼容性最大的ZIP文件。过去,有些产品是TGZ,有些是ZIP;今后,所有产品都将以ZIP格式发布,名称非常可预测,如上图所示。之所以选择ZIP格式,是因为它与基于Windows的环境比其他格式更兼容。除了一致的文件名之外,我们还采取了一些措施来提高文件存储路径的一致性。releases服务将把所有二进制文件放在一个分层文件夹中,如下所示:发布.hashicorp.com\_产品/\_版本/这些道路是可以预测的,我们正在公开承诺永远不会改变这些前进的道路。这种模式的唯一例外是Vagrant,因为它具有跨平台的特性。Vagrant不是作为ZIP文件分发的,而是包含本机操作系统包。因此,当不相关(通用)时,架构被省略。如果有疑问,可以使用jsonapi查询完整的下载路径。»JSON API新的releases服务包括一个功能齐全的JSON API,您可以使用它来轻松地自动化和访问我们的产品和版本。要访问JSON API,只需请求索引.json任何文件夹的版本。根索引包括所有已发布产品的综合列表、它们的版本和完全限定的下载URL。以下是摘录:{"执政官":{"name":"执政官","版本":{"0.1.0":{"name":"执政官","version":"0.1.0","shasums":"执政官_0.1.0_SHA256SUMS","shasums_signature":"执政官_0.1.0_SHA256总和.sig","构建":[{"name":"执政官","version":"0.1.0","os":"达尔文","arch":"amd64","filename":"执政官_0.1.0_darwin_amd64.zip","url":https://releases.hashicorp.com/consur/0.1.0/consur_0.1.0_darwin_amd64.zip"},]}}}}正如您从输出中看到的,这个输出使得从我们的新版本服务中自动下载变得很容易。此外,您可以在任何级别过滤API。Otto 0.1.2的元数据信息如下所示:// https://releases.hashicorp.com/otto/0.1.2/index.json{"name":"奥托","version":"0.1.2","shasums":"otto_0.1.2_SHA256SUMS","shasums_signature":"otto_0.1.2_SHA256总和.sig","构建":[{"name":"奥托","version":"0.1.2","os":"达尔文","arch":"386","filename":"otto_0.1.2_darwin_386.zip","url":https://releases.hashicorp.com/otto/0.1.2/otto逖0.1.2_darwin_386.zip"},{"name":"奥托","version":"0.1.2","os":"达尔文","arch":"amd64","filename":"otto_0.1.2_darwin_amd64.zip","url":https://releases.hashicorp.com/otto/0.1.2/otto逖0.1.2_darwin_amd64.zip"},// ...]}事实上,我们用来发布所有产品站点的工具middleman hashicorp使用这个JSON API在构建时自动生成可下载的产品列表。»期待在接下来的几个季度里,我们与Fastly计划了一些令人兴奋的事情,我们将在它们可用时与您分享。我们相信,随着我们将服务推向Fastly的前沿,我们的所有用户都将从增强的性能和可靠性中受益。