我应该如何切换到使用谷歌本机客户端?
为什么要切换到本机客户机?
不再维护JetS3t库。因此,这个模板在Artifactory中被弃用了。使用Google -storage-v2作为解决方案,它使用谷歌本机客户端。google-storage到google-storage-v2之间的过渡应该是无缝的,因为两个提供者之间的大多数参数是相同的。
如何知道我在使用哪个客户端?
文件存储配置文件位置:
- Artifactory 6。x→ $ARTIFACTORY_HOME/etc/binarystore.xml.
- Artifactory 7。x→ $JFROG_HOME/artifactory/var/etc/artifactory/binarystore.xml.
如果配置使用以下提供程序之一,这意味着已经在使用谷歌本机客户机。
- type = " google-storage-v2 "
- type = " cluster-google-storage-v2 "
为什么要远离JetS3t库?
- 已弃用。上一次发布是在2015年。
- 问题的清单越来越多,包括安全问题。
- 支持S3中可用的最新特性,这些特性在开发JetS3t时没有考虑到。
切换到v2:
在更新文件之后,重新启动Artifactory将启动这些更改,并且它将切换到使用谷歌本机客户机。
注意!如果您在Google存储提供程序中使用了任何专用的JetS3t属性,那么新的谷歌本机客户端将不支持这些属性。
但是,检查参数是否暴露在文档中,如果有,请在“google-storage-v2”提供程序部分中设置它。
例如:
使用专用的JetS3t属性:
端点> < commondatastorage.googleapis.com > < /端点
< bucketName > BUCKET_NAME < / bucketName >
<属性名= " httpclient。最大连接“价值= " 300 " / >
<标识> XXXXXX > < /身份
<凭证> XXXXXX < /证书>
> < /供应商
转到google-storage-v2:在上面的例子中,没有定义useInstanceCredentials。
端点> < commondatastorage.googleapis.com > < /端点
< bucketName > BUCKET_NAME < / bucketName >
300年< maxConnections > < / maxConnections >
> < /供应商
因此,默认值会赋值,假的,和下面的流量的身份验证解析顺序如下:
' useInstanceCredentials ' == false &&将creds文件保存在默认路径[arti_home_full_path]/etc/gcp.credentials.json下。
例子:
旧配置#1 -“google-storage”属性:
<配置版本=“v1”>
<链模板= " google storage " / >
端点> < commondatastorage.googleapis.com > < /端点
<路径> filestore > < /路径
< bucketName > BUCKET_NAME < / bucketName >
<标识> XXXXXX > < /身份
<凭证> XXXXXXX < /证书>
> < /供应商
< / config >
下面的示例使用第一种身份验证机制。' useInstanceCredentials ' == true &&设置"GOOGLE_APPLICATION_CREDENTIALS"环境变量
对于解决身份验证解决方案的其他方法,请使用下面的链接。
谷歌storage v2 -鉴权机制
先决条件:
- 创建服务帐户键→下载为json。
- 复制服务帐户。json到Artifactory实例。
- 导出路径到service- account。Json作为环境变量:
- 环境变量名称→GOOGLE_APPLICATION_CREDENTIALS
- 出口GOOGLE_APPLICATION_CREDENTIALS = '完整/道路/ / service-accunt.json
迁移配置#1 -“google-storage-v2”属性:
<配置版本=“v2”>
<链模板= " google-storage-v2 " / >
端点> < commondatastorage.googleapis.com > < /端点
<路径> filestore > < /路径
< bucketName > BUCKET_NAME < / bucketName >
真正< bucketExists > < / bucketExists >
真正< useInstanceCredentials > < / useInstanceCredentials >
> < /供应商
< / config >
旧配置#2 -简单的“cluster-google-storage”:
<配置version = " 2 " >
<链模板= " cluster-google-storage " >
<提供者id = " sharding-cluster-eventual-google-storage "
type = " sharding-cluster " >
端点> < commondatastorage.googleapis.com > < /端点
<路径> filestore > < /路径
< bucketName > BUCKET_NAME < / bucketName >
<标识> XXXXXX > < /身份
<凭证> XXXXXXX < /证书>
> < /供应商
< / sub-provider >
> < /供应商
> < /供应商
< / >链
< / config >
迁移配置#2 -简单的“cluster-google-storage-2”:
<配置version = " 2 " >
<链模板= " cluster-google-storage-v2 " >
端点> < commondatastorage.googleapis.com > < /端点
<路径> filestore > < /路径
< bucketName > BUCKET_NAME < / bucketName >
真正< bucketExists > < / bucketExists >
真正< useInstanceCredentials > < / useInstanceCredentials >
> < /供应商
< / sub-provider >
> < /供应商
> < /供应商
< / >链
< / config >
