设置Artifactory使用GCS
第一次安装或升级
如果您正在升级Artifactory,或者第一次安装时将文件存储移动到GCS,我们建议您首先使用默认设置进行Artifactory的标准安装,或者使用当前设置进行标准升级。
为了将您的Artifactory文件存储移动到云中,您需要执行以下步骤:
- 关闭Artifactory。
- 设置您的企业许可证
- 配置Artifactory使用GCS
- 将文件迁移到云上
- 启动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”模板用于使用谷歌本地客户端配置“谷歌云存储”作为远程文件存储。
身份验证机制
使用谷歌自动生成的凭据文件建立身份验证。
认证解决方案
我们支持三种解决方法
认证解析顺序如下:
' useInstanceCredentials ' == true &&设置"GOOGLE_APPLICATION_CREDENTIALS"环境变量
' useInstanceCredentials ' == true &&使用Kubernetes(或其他)服务帐户学分(无学分文件)
' useInstanceCredentials ' == false &&将信用文件保存在default路径[arti_home_full_path] / etc / gcp.credentials.json。
授予“云功能服务代理”角色转换为所使用的服务帐户,以便使用实例的凭据。
Artifactory搜索一个名为GOOGLE_APPLICATION_CREDENTIALS包含凭据文件的路径。如果环境变量不存在,则计算引擎、Kubernetes引擎、App引擎和Cloud Functions提供的默认服务帐户将应用于运行在这些服务上的应用。
下面的代码片段显示了基本的google-storage-v2模板配置和使用谷歌云存储二进制提供程序的示例。
这个二进制提供程序使用以下一组参数:
类型 |
google-storage-v2 |
bucketName |
您的全局惟一桶名。 |
路径 |
默认值:filestore 设置相对于存储二进制文件的桶的路径。 |
rootFoldersNameLength |
默认值:2。 对象校验和中应用于命名存储中的文件夹的初始字符数。它可以取0到6之间的任何值。0表示校验和文件将存储在对象存储桶的根目录下。例如,如果对象的校验和是8c335149…和 |
bucketExists |
默认值:false。 当设置为true时,它向二进制提供程序指示一个桶已经存在于谷歌云存储中,因此不需要创建。 |
testConnection |
默认值:真正的 当设置为true时,二进制提供程序将在Artifactory启动时上传和下载一个文件,以验证与云存储提供程序的连接是否完全正常。 |
useInstanceCredentials |
默认值:false。 当设置为真正使用时,“GOOGLE_APPLICATION_CREDENTIALS”环境变量会找到凭证或使用默认的服务帐户。 |
enableSignedUrlRedirect |
默认值:false。 当设置为true时,使用启用的签名url重定向下载请求。 |
signedUrlExpirySeconds |
默认值:30。 以秒为单位设置签名URL的有效期。 |
signatureExpirySeconds |
默认值:30。 指定内部用于上传/下载的签名URL有效的秒数。 |
proxyIdentity |
默认值:无代理 当您通过代理服务器访问云存储提供商时,需要输入相应的参数。 |
proxyCredential |
|
proxyPort |
|
proxyHost |
|
maxConnections |
默认值:100 设置http客户端最大连接数。 |
ConnectionTimeout |
设置连接超时时间。 |
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提供程序的详细信息,请参见缓存文件系统二进制提供程序.
有关最终提供程序的详细信息,请参见最终二进制提供程序.
有关重试提供程序的详细信息,请参见重试二进制提供程序.
谷歌存储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提供程序的详细信息,请参见缓存文件系统二进制提供程序.
有关最终提供程序的详细信息,请参见最终二进制提供程序.
有关重试提供程序的详细信息,请参见重试二进制提供程序.
有关远程二进制提供者,看到远程二进制提供程序.
关于分片集群的详细信息,请参见分片-集群二进制提供程序.