JFrog分布1。x文档
要获取最新版本,请访问JFrog统一平台
本地配置
本地配置为存储在文件系统。
分布节点由以下服务组成,这些服务被本地管理在以下文件中:
- 地理分布:DISTRIBUTION_HOME / etc / distribution.local.config.yml
- 经销商:DISTRIBUTOR_HOME / etc / distributor.local.config.yml
应用配置文件更改
Res蛋挞使配置更改生效的服务。
分配本地配置
配置如下参数DISTRIBUTION_HOME / etc / distribution.local.config.yml文件。
属性名 | 值类型 | 描述 |
---|---|---|
platform.distribution-service-id |
字符串 | 可选(默认值是null) 要在分布集群第一个节点启动时设置的手动服务id(必须是有效的"jfds@ |
server.internal-url |
字符串 | 可选(默认值:“http:// < MACHINE_EXTERNAL_IP > 8080”): |
server.port |
整数 | 可选(默认值:8080] 分发服务器使用的端口 |
redis.connection-string |
字符串 | 可选(默认值:复述:/ / password@bt-distributor-redis: 6379”):复述,连接字符串 |
redis.staging-database-index |
整数 | 可选(默认值:0]用于插入新分发任务的数据库必须与分发服务器中的配置匹配 |
redis.socket-timeout-millis |
整数 | 可选(默认:12000]Redis连接套接字超时(以毫秒为单位) |
redis.resource-pool-max-size |
整数 | 可选(默认:200] Redis连接资源池最大大小 |
redis.resource-pool-max-wait-millis |
整数 | 可选(默认:60000] Redis连接资源池最大等待时间(以毫秒为单位) |
sql.connection-string |
字符串 | 可选(默认值:jdbc:postgresql: / / localhost: 5432 /分布?用户= distribution&password =密码"] 数据库连接字符串 |
sql.type |
字符串 | 可选(默认值:postgresql"] 数据库类型 |
sql.auto-commit |
布尔 | 可选(默认值:真正的] 自动提交模式 |
sql.max-active-connections |
整数 |
可选(默认值:98] 最大主动联系 |
sql.max-lifetime-millis |
长 | 可选(默认:1800000] 连接的最大寿命 |
sql.min-idle-connections |
整数 | 可选(默认值:1] 空闲连接的最小数量 |
sql.idle-timeout-millis |
长 | 可选(默认值:300000] 保留空闲连接的最长时间(0表示从不退出空闲连接) |
sql.connection-timeout-millis |
长 | 可选(默认值:120000] 等待可用连接的最长时间 |
sql.connection-init-query |
字符串 | 可选(默认值是null] SQL查询,在将每个新连接添加到池之前为其运行 |
sql.connection-test-query |
字符串 | 可选(默认值是null] 用于测试连接有效性的SQL查询(来自驱动程序的默认查询为空) |
sql.connection-test-timeout-millis |
长 | 可选(默认:5000] 等待验证连接的最长时间 |
sql.leak-detection-threshold-millis |
长 | 可选(默认值:0] 当连接离开池时,警报可能发生泄漏之前的等待时间(0表示禁用泄漏检测) |
sql.allow-pool-suspension |
布尔 | 可选(默认值:真的] 是否允许池挂起 |
sql.catalog |
字符串 | 可选(默认值是null] 新连接的默认目录名称 |
sql.initialization-fail-timeout-millis |
长 | 可选(默认值:1] 池初始化失败之前等待的时间(0表示忽略连接验证,负值表示禁用) |
sql.isolate-internal-queries |
布尔 | 可选(默认值:false] 池控制的查询是否隔离在它们自己的事务中 |
经销商本地配置
配置文件中可以配置以下参数DISTRIBUTOR_HOME / etc / distributor.local.config.yml文件。
属性名 | 值类型 | 描述 |
---|---|---|
distribution.internal-api-url |
字符串 |
可选(默认值:"http://bt-distribution:8080/api/internal”)
分发服务器url |
redis.connection-string |
字符串 | 可选(默认值:复述:/ / password@bt-distributor-redis: 6379”): 复述,连接字符串 |
redis.staging-database-index |
整数 | 可选(默认值:0] 用于插入新分发任务的数据库必须与分发服务器中的配置匹配 |
redis.pending-database-index |
整数 | 可选(默认值:1] 用于挂起分发任务的数据库 |
redis.working-database-index |
整数 | 可选(默认值:2] 用于工作分发任务的数据库 |
redis.socket-timeout-millis |
整数 | 可选(默认:12000] Redis连接套接字超时(以毫秒为单位) |
redis.resource-pool-max-size |
整数 | 可选(默认:200] Redis连接资源池最大大小 |
redis.resource-pool-max-wait-millis |
整数 | 可选(默认:60000] Redis连接资源池最大等待时间(以毫秒为单位) |
工头.executor-factor |
整数 | 可选(默认值:2] 每个cpu使用的最大线程数 |
foreman.quiet-preiod-in-secs |
整数 | 可选(默认值:0] 在有资格执行新任务之前的等待时间(以秒为单位) |
foreman.inactivity-time (从1.6版移除) |
整数 | 可选(默认值:60] 在不活动的任务有资格恢复之前等待的时间(以秒为单位) |
foreman.inactivity-threshold-secs(从1.6版本) |
整数 | 可选(默认:300] 在不活动的任务有资格进行恢复之前等待的时间(以秒为单位) |
foreman.task-execution-retries-warning-threshold |
整数 | 可选(默认值:5] 记录警告之前的任务重试次数 |
foreman.max-task-execution-retries |
整数 | 可选(默认值:5] 任务重试的最大次数 |
foreman.task-reviver-time-in-millis (从1.6版移除) |
整数 | 可选(默认:500] 恢复程序运行之间的间隔(以毫秒为单位) |
foreman.task-reviver-cycle-millis (从1.6版本) |
整数 | 可选(默认:60000] 恢复程序运行之间的间隔(以毫秒为单位) |
配置日志记录
日志记录在DISTRIBUTION_HOME / etc / logback.xml和DISTRIBUTOR_HOME / etc / logback.xml
文件。
集群配置
集群配置存储在PostgreSQL中。
按照以下步骤编辑集群配置:
- 编辑DISTRIBUTION_HOME/etc/template.distribution.config.import.yml中的属性
- 将文件重命名为distribution.config.import.yml
- 重新启动分发服务
配置文件修改
要导入集群配置导入文件,必须重新启动分发服务。
导入配置状态的快照将被持久化到DISTRIBUTION_HOME/etc/distribution.config.latest.yml下的文件系统中
以前的配置状态文件(如果存在的话)将被重命名为DISTRIBUTION_HOME/etc/distribution.config.TIMESTAMP。Yml,最多10个以前的配置状态。
分布的集群配置
配置文件中可以配置以下参数DISTRIBUTION_HOME / etc / distribution.config.import.yml文件。
属性名 | 值类型 | 描述 |
---|---|---|
max-http-header-size |
整数 |
可选(默认:16384) 增加页眉大小 可以手动增加请求头的最大大小,以防止在使用SSO登录分发版时收到HTTP 400消息。 |
edge-node-token-expiration-minutes |
整数 | 可选(默认:180) 设置默认过期时间(以分钟为单位),之后访问令牌将过期。 |
task.distribute.interval-seconds |
整数 | 可选(默认值:5] 连续运行分发作业之间的间隔 |
task.heartbeat.consider-stale-seconds |
整数 | 可选(默认值:30] 服务器在集群中被认为过时之前保持无响应的时间(秒) |
cluster.sync.timeout-millis |
整数 | 可选(默认:100] 在重试请求之前等待的初始时间(毫秒) |
cluster.sync.socket-timeout-millis |
整数 | 可选(默认:5000] 在放弃在另一台服务器上执行REST调用之前的等待时间(毫秒) |
cluster.sync.exponential-backoff-multiplier |
整数 | 可选(默认值:2] 在进行后续重试之前应乘以重试超时时间的数字。例如,默认情况下,第三次重试将在200毫秒后进行 |
cluster.sync.number-of-retries |
整数 | 可选(默认值:3] 最大重试次数 |
cluster.sync.backoff-max-delay-millis |
整数 | 可选(默认:1000] 连续重试之间的最大间隔时间,而不考虑其他设置 |
release-bundle.max-artifacts |
整数 | 可选(默认:3000] 在发布包创建时从artifactory获取的最大工件数量 |
artifactory-client.client-short-socket |
整数 | 可选(默认:1000] 用于Artifactory绑定的短任务的millis套接字超时,例如:auth和与Artifactory配对 |
artifactory-client.client-long-socket |
整数 | 可选(默认:120000] 对于Artifactory绑定的长任务,例如:发布包的存储、删除和工件的收集(AQL)查询,millis中的套接字超时 |
加固秘密安全
分发使用一组加密参数(秘密),用于连接到外部资源,例如它使用的不同数据库。2022世界杯阿根廷预选赛赛程
为了保证秘密不被暴露,从1.4版,您可以在分发启动时从临时文件预加载秘密,而不是将它们放在标准配置文件中。一旦分发版读取并成功使用了秘密,就会删除临时文件。
下面的代码片段显示了可以包含在此临时文件中的参数示例。这些是分发版连接到它所使用的不同数据库的连接字符串。
sql连接字符串:" jdbc: postgresql: / / postgresql: 5432 /分布呢?User =< User >&password=" redis: connection-string: "redis://: @redis:6379"
- 将临时文件放置在
/var/opt/jfrog/distribution / .secrets / temp.distribution.local.config.yml
- 开始分配。在启动期间,如果临时配置文件存在,Distribution将从其中读取所有参数,然后删除该文件。如果分发未能删除该文件,则它将不会启动,反而会发出错误。
在每次重新启动分发版时执行
由于临时文件在发行版启动时被删除,所以每次重新启动发行版时都需要替换临时文件。
在源Artifactory上部署您的GPG Key
从v1.3.0开始,Distribution将触发源Artifactory将已签名的发布包的内容克隆到孤立的release-bundles存储库.为了允许这一点,您需要将每个Artifactory Edge节点中使用的GPG Key部署到源Artifactory服务。详情请参阅设置GPG密钥在JFrog Artifactory用户指南中。