ARTIFACTORY: JFrog Cloud中的CDN重定向
用户将能够使用CDN功能在多个位置管理、控制和分发大量软件。Artifactory中有两种类型的重定向有助于更快地下载包。根据配置,任何大于200KB的包将被重定向到以下其中一个:
- S3重定向
- CDN重定向
S3重定向是为所有使用AWS作为云提供商的SaaS服务器启用的默认重定向。CDN特性仅适用于Enterprise+和Edge许可证。CDN特性(启用CDN下载)需要在存储库级别启用,它可以通过两种方式启用:
1.UI:从存储库配置下的advanced选项卡中,如下所示:
2.使用更新存储库REST API:在JSON中运行REST时添加这个额外的字段:"cdnRedirect": true
完整示例如下:{
“关键”:“test-nuget-local”,
:“packageType nuget”,
“描述”:“”,
“笔记”:“”,
“includesPattern”:“* * / *”,
“excludesPattern”:“”,
“repoLayoutRef”:“简单的默认”,
“enableComposerSupport”:假的,
“enableNuGetSupport”:假的,
“enableGemsSupport”:假的,
“enableNpmSupport”:假的,
“enableBowerSupport”:假的,
“enableCocoaPodsSupport”:假的,
“enableConanSupport”:假的,
“enableDebianSupport”:假的,
“debianTrivialLayout”:假的,
“enablePypiSupport”:假的,
“enablePuppetSupport”:假的,
“enableDockerSupport”:假的,
“dockerApiVersion”:“V2”,
“blockPushingSchema1”:没错,
“forceNugetAuthentication”:假的,
“enableVagrantSupport”:假的,
“enableGitLfsSupport”:假的,
“enableDistRepoSupport”:假的,
:“checksumPolicyType client-checksums”,
“handleReleases”:没错,
“handleSnapshots”:没错,
“maxUniqueSnapshots”:0,
“maxUniqueTags”:0,
“snapshotVersionBehavior”:“独特”,
“suppressPomConsistencyChecks”:没错,
“blackedOut”:假的,
“propertySets”:(
“artifactory”
],
“archiveBrowsingEnabled”:假的,
“calculateYumMetadata”:假的,
“enableFileListsIndexing”:假的,
“yumRootDepth”:0,
“downloadRedirect”:假的,
“cdnRedirect”:没错,
“xrayIndex”:假的,
“enabledChefSupport”:假的,
“rclass”:“本地”
}
CDN特性
当Artifactory收到来自用户的下载工件请求时,Artifactory将向用户返回一个重定向的CDN URL。用户的重定向下载请求被自动路由到最近的CDN,所请求的包从最近的CDN位置提供给用户。
对于任何小于200KB大小的包或没有CDN功能的包,那么用户对Artifactory的包请求将到达Artifactory,并且包将从Artifactory中配置的Binarystore提供服务。
在artifactory-request.log中,我们将看到如下请求:
对于大于200KB的文件2022 - 06 - 07年t20:18:13.431z | 33 a46490202bc00e | 52.9.243.19 | divija | | / generic-local-test / Filename.tgz | 302 | 1 | 0 | 87 |旋度/ 7.77.0对于小于200KB的文件2022 - 06 - 07年t20:17:46.085z | b29a371e79e558e1 | 52.9.243.19 | divija | | / generic-local-test / smallFilename2.tgz | 200 | 1 | 174080 | 216 |卷曲/ 7.77.0
当启用CDN重定向或S3重定向时,请求的工件将从S3或CloudFront域而不是Artifactory域提供。在Artifactory提供的重定向响应中,CDN和S3域是恒定的,因此将它们添加到组织的防火墙将确保工件的平稳和不间断下载。
CloudFront:https:// < cloudFrontDomainName > .cloudfront.net/..。
示例Cloudfront URL看起来类似于:https://d3bszrh4vo52dt.cloudfront.net/filestore/.....。
S3:https:// < bucketName > .s3.amazonaws.com/..。
示例S3重定向URL看起来类似于:https:// < bucketName > .s3.amazonaws.com/aol-lookout/filestore/bc
请注意,启用CDN/S3重定向后,当从不同客户端下载工件时,客户端必须遵循重定向才能成功下载。
