云客户?
免费开始>
在MyJFrog >中升级
云有什么新>







谷歌云存储简介

Artifactory完全支持谷歌云存储(GCS),因此您的Artifactory文件存储可以驻留在云中。这有几个好处:

  1. 无限的可扩展性
    由于您的文件现在存储在云上,这意味着您的Artifactory文件存储是可伸缩的,并且实际上是无限的(在存储提供商提供的范围内)。您可以自由地继续上传文件,而无需安装或维护任何文件存储设备。您甚至可以使用多部分上传上传大于5gb的文件。
  2. 安全
    谷歌的安全模型提供端到端流程,提供复制策略,所有数据在飞行中和静止时都加密。
  3. 灾难恢复
    由于您的文件是复制和存储冗余的,这提供了灾难恢复的能力。

备份您的系统。

如果您已经安装了一个正在运行的Artifactory,那么在您设置Artifactory以使用GCS并将您的文件存储迁移到云之前,我们强烈建议您执行一个完整的系统备份

JFrog提供二进制提供程序模板来配置您在谷歌云存储中的文件存储。

Filestore基本面

本页为您提供有关特定二进制提供程序的信息。有关文件存储库和可以使用的各种文件存储库的详细信息,请参见配置文件存储

JFrog订阅级别

自托管

企业
企业+
页面内容


设置Artifactory使用GCS

首次安装或升级

如果您要在升级Artifactory的上下文中将文件存储转移到GCS,或者第一次安装,我们建议您首先使用默认设置进行Artifactory的标准安装,或者使用当前设置进行标准升级。

为了将您的Artifactory文件存储移动到云,您需要执行以下步骤:

  1. 关闭Artifactory。
  2. 设置您的企业许可证
  3. 配置Artifactory使用GCS
  4. 将文件迁移到云端
  5. 创建Artifactory

设置License

要使用Artifactory对GCS的支持,您需要为您的Artifactory安装提供适当的许可证。

要做到这一点,请确保您的JFROG_HOME美元/ artifactory / var / etc / artifactory / artifactory.lic文件中包含支持GCS的许可证。

配置Artifactory使用GCS

要将Artifactory配置为使用GCS对象存储提供程序,需要使用谷歌存储二进制提供程序。


可互操作的存储访问密钥

互操作性API允许您使用HMAC身份验证,并允许GCS与为其他云存储系统编写的工具进行互操作。要使用GCS,您需要打开这个API,并在GCS中使用当前用户的互操作性访问详细信息。这个API是每个项目成员启用的,而不是每个项目。每个成员可以设置一个默认项目,并维护自己的访问密钥。详情请参阅谷歌云存储互操作性

您可以通过谷歌GCS帐户控制台获取您的接入密钥参数,并在Artifactory中设置为相应的参数,如下所示:

身份
此参数由GCS提供,作为您的访问密钥
凭证
此参数由GCS提供,作为您的访问秘密

保持数据库设置

确保没有更改数据库设置db.properties文件。

迁移您的文件存储

迁移您的文件存储,您需要执行以下步骤:

  • 停止Artifactory
  • 复制JFROG_HOME / artifactory /数据/ filestore美元目录中指定的GCS桶名和路径配置Artifactory使用GCS
  • 开始Artifactory

谷歌存储V2二进制提供程序

“Google - Storage -v2”模板用于在谷歌本地客户端配置“谷歌云存储”为远程文件存储。

身份验证机制

使用谷歌自动生成的凭据文件建立身份验证。

身份验证解决命令

我们支持三种解析方法

认证解析顺序如下:

  1. ' useInstanceCredentials ' == true &&设置"GOOGLE_APPLICATION_CREDENTIALS"环境变量

  2. ' useInstanceCredentials ' == true &&使用Kubernetes(或其他)服务帐户积分(无积分文件)

  3. ' useInstanceCredentials ' == false &&将creds文件保存在default路径[arti_home_full_path] / etc / gcp.credentials.json。

    授予将“Cloud Functions Service Agent”角色添加到所使用的服务帐户中,以便使用实例的凭据。

    Artifactory搜索名为GOOGLE_APPLICATION_CREDENTIALS包含凭据文件的路径。如果环境变量不存在,则计算引擎、Kubernetes引擎、应用引擎和云功能提供的默认服务帐户将应用于运行在这些服务上的应用程序。

下面的代码片段展示了基本功能google-storage-v2模板配置和使用谷歌云存储二进制提供程序的示例。

这个二进制提供程序使用以下参数集:

类型

google-storage-v2

bucketName
全局唯一的桶名。
路径
默认值:filestore
设置相对于存储二进制文件的桶的路径。
rootFoldersNameLength

默认值:2。

对象校验和中应用于命名存储中的文件夹的初始字符数。它可以取0 - 6之间的任何值。0表示校验和文件将存储在对象存储桶的根目录下。例如,如果对象的校验和是8c335149…而且rootFoldersNameLength设置为4,则存储对象的文件夹将命名为8c33。

bucketExists

默认值:false。

当设置为true时,它向二进制提供程序表明在谷歌云存储中已经存在一个桶,因此不需要创建。

testConnection

默认值:真正的

当设置为true时,二进制提供程序将在Artifactory启动时上传和下载一个文件,以验证到云存储提供程序的连接是否完全正常。

useInstanceCredentials

默认值:false。

当设置为true使用时,“GOOGLE_APPLICATION_CREDENTIALS”环境变量将查找凭据或使用默认服务帐户。
当设置为false时,将使用默认路径查找凭据文件。

enableSignedUrlRedirect

默认值:false。

当设置为true时,使用启用的签名url重定向下载请求。

signedUrlExpirySeconds

默认值:30。

设置签名URL有效期(以秒为单位)。

signatureExpirySeconds

默认值:30。

指定内部用于上传/下载的签名URL有效的秒数。

proxyIdentity

默认值:无代理

通过代理服务器访问云存储提供商时,需要输入相应的参数。

proxyCredential
proxyPort
proxyHost
maxConnections

默认值:100

设置最大http客户端连接数。

ConnectionTimeout
设置连接超时。

google-storage-v2-direct模板配置(推荐)

Google -storage-v2-direct(或ultimate -less)模板允许直接上传到谷歌存储,绕过最终上传机制。我们建议您使用直接上传机制而不是最终上传机制。有关更多信息,请参见直接与最终上传机制

   my-bucket myPath false 10 127.0.0.1 8888 username password 50120000   . 120000   .

模板中有什么?

     .


Google-storage-v2最终模板配置

配置google-storage-v2提供特定于您帐户的参数(但可以保留所有其他参数的推荐值)。如果您选择使用此模板,您的binarystore.xml配置文件应该如下所示。

        

示例1

   my-bucket myPath 3 false 10 127.0.0.1 8888 username password50 120000  

cache-fs provider的详细信息请参见缓存文件系统二进制提供程序
有关最终提供程序的详细信息,请参见最终二进制提供程序
有关重试提供程序的详细信息,请参见重试二进制提供程序

直接(无最终)与最终上传机制

从最终转向直接?

如果您正在从任何最终机制迁移到直接上传机制,请确保最终目录为空,否则可能会出现数据丢失。

默认的谷歌云存储链模板依赖于最终上传机制,即当完整的二进制文件上传到Artifactory时,从客户端上传的文件被认为是成功的。从Artifactory 7.9.0开始,直接上传机制作为一种替代机制,即上传直到到达谷歌云存储才被认为是成功的。这两种方法都有优点,我们将在下面介绍。

直接上传机制(推荐)

直接上传机制允许您上传,而不需要为最终目录维护持久存储。这种机制还可能允许更快的上传,因为对磁盘IO的争用较少,特别是当Artifactory托管在AWS上时。

可直接下载AWS和GCP,但不包括Azure。

  1. 客户端将工件上传到Artifactory。
  2. Artifactory接收并同时上传至谷歌云存储。
  3. Artifactory将二进制文件上传到谷歌云存储
    1. Artifactory返回201成功给客户端。
    2. 为工件创建一个数据库条目。

最终上传机制

如果您在谷歌云存储上传速度较慢的系统上上传(例如,当Artifactory是自托管时),您可能需要使用最终上传机制。最终上传机制还允许您在何时上传谷歌云存储故障或网络故障。

  1. 客户端将工件上传到Artifactory。
  2. Artifactory接收完整的上传。
    1. Artifactory向客户端返回一条201成功消息。
    2. 为工件创建一个数据库条目。
    3. 二进制文件存储在本地磁盘的最终目录中。
  3. Artifactory将二进制文件上传到谷歌云存储。
  4. 二进制文件将从最终目录中删除。

谷歌存储V2集群二进制提供程序

属性用于谷歌云存储文件存储使用谷歌本机客户端。在HA集群配置文件存储分片时。它基于分片和同步集群文件系统的动态提供程序逻辑。
当使用cluster-google-storage-v2模板数据使用最终二进制提供程序临时存储在每个节点的文件系统上,然后传递到您的谷歌存储进行持久存储。
每个节点都有自己的本地文件存储(就像在文件系统二进制提供程序中一样),并通过使用分片-集群二进制提供程序动态分配的远程二进制提供程序连接到所有其他集群节点。

配置Cluster-google-storage模板


因为您必须配置google-storage-v2提供特定于您的帐户的参数(但可以保留所有其他参数的推荐值),如果您选择使用cluster-google-storage-v2模板,你binarystore.xml配置文件应该如下所示。

   commondatastorage.googleapis.com  XXXXXX XXXXXXX  

模板中有什么?

当你不需要配置任何其他在你的binarystore.xml,这是什么cluster-google-storage-v2模板看起来像引擎盖下。

               crossNetworkStrategy crossNetworkStrategy 2    remote   local   commondatastorage.googleapis.com  XXXXXX XXXXXXX  

cache-fs provider的详细信息请参见缓存文件系统二进制提供程序

有关最终提供程序的详细信息,请参见最终二进制提供程序

有关重试提供程序的详细信息,请参见重试二进制提供程序

有关远程二进制提供者,看到远程二进制提供程序

关于分片集群的详细信息,请参见分片-集群二进制提供程序

版权所有©2023 JFrog Ltd。