从6.10以下版本升级
从6.10以下版本升级。X,您首先需要升级到版本6.10。X(或任意6)。6.10.x以上版本)升级Artifactoryx文档,然后继续从版本6.10升级到7.x。
升级前,请确保您使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。
从版本6.10升级。到7.x
7中的版本如下表所示。您可以从特定版本的6.x升级。
从6升级。x版本 | 升级到7。x版本 |
---|---|
Artifactory版本6.23.21及以上 | Artifactory 7.21.3及以上版本 |
Artifactory版本6.23.15及以上 | Artifactory 7.17.5及以上版本 |
Artifactory版本6.23.13及以上 | Artifactory 7.16.0及以上版本 |
Artifactory版本6.23.7及以上 | Artifactory 7.12.6及以上版本 |
Artifactory版本6.23.3及以上 | Artifactory 7.11版。X及以上 |
Artifactory版本6.23.1及以上 | Artifactory 7.10版。X及以上 |
Artifactory版本6.23.0及以上 | Artifactory 7.10版。X及以上 |
Artifactory版本6.22。X及以上 | Artifactory 7.9版。X及以上 |
Artifactory版本6.21。X及以上 | Artifactory 7.7版本。X及以上 |
Artifactory版本6.20。X及以上 | Artifactory 7.5版。X及以上 |
Artifactory版本6.19。X及以上 | Artifactory 7.4.2及以上版本 |
Artifactory版本6.18。X及以上 | Artifactory 7.3.2及以上版本 |
Artifactory版本6.10。X到6.17x | 任何版本的Artifactory 7.x |
除了上面列出的例外情况,您可以升级到任何版本的7。X从6.10的任何版本升级。X及以上。
如果使用S3作为文件存储,在从6.23.28及更高版本(6.23.28、6.23.31、6.23.33、6.23.36、6.23.37、6.23.38)升级到版本7之前。x,以非加密的明文格式提供S3凭据。由于7.x版本中加密算法的更改,Artifactory将不再能够解密加密的凭据。升级后无法启动。证书在升级后会自动加密。
Artifactory 7.x中引入了几个新概念,改进安装和定制流程.例如,一个系统。yaml文件保存了您对Artifactory安装所做的配置和自定义。Artifactory在升级期间保留您的配置。
Artifactory 6。x访问admin
而且arti-admin
用户分别为Access和Artifactory。在Artifactory 7。X,一个全局管理
用户处理跨服务的管理。的访问admin
而且arti-admin
升级过程中仍然保留用户。您可以在升级完成后安全地删除这些用户。
支持以下升级方式:
Linux档案升级
迁移是Linux存档安装的一个手动过程。下面的步骤还包括复制目录并运行迁移脚本
确保运行Artifactory的用户在服务器上运行所有命令。
停止当前服务器。
cd $ARTIFACTORY_HOME/bin ./artifactoryctl stop . sh
提取压缩归档文件的内容并将其移动到artifactory目录.
Tar -xvf jfrog-artifactory-
- -linux. Tar .gz mkdir jfrog mv artifactory- - jfrog/artifactory .gz 设置你的
ARTIFACTORY_HOME
而且JFROG_HOME
变量。
请注意:ARTIFACTORY_HOME美元
变量指向现有的安装,而JFROG_HOME美元
变量指向新的安装。export ARTIFACTORY_HOME=<当前Artifactory安装的路径> export JFROG_HOME=< jfrog目录的完整路径,例如:/opt/jfrog> export JF_PRODUCT_HOME=$JFROG_HOME/ Artifactory
将目录从当前路径复制到新路径。
下面是您需要从当前路径复制到新路径的目录。
BASH中提供了下面的示例,将数据从版本6的安装复制到版本7。
强制性的措施# Artifactory data mkdir -p $JFROG_HOME/ Artifactory /var/data/ Artifactory / cp -rp $ARTIFACTORY_HOME/data/。$JFROG_HOME/artifactory/var/data/artifactory/ #访问数据mkdir -p $JFROG_HOME/artifactory/var/data/ Access / cp -rp $ARTIFACTORY_HOME/ Access /data/。$JFROG_HOME/artifactory/var/data/access/ # Replicator data #注:如果你从未使用过artifactory Replicator #你的$ARTIFACTORY_HOME/ Replicator /目录将是空的mkdir -p $JFROG_HOME/artifactory/var/data/ Replicator / cp -rp $ARTIFACTORY_HOME/ Replicator /data/。$JFROG_HOME/artifactory/var/data/replicator/ # artifactory config mkdir -p $JFROG_HOME/artifactory/var/etc/artifactory/ cp -rp $ARTIFACTORY_HOME/etc/。$JFROG_HOME/artifactory/var/etc/artifactory/ #访问配置mkdir -p $JFROG_HOME/artifactory/var/etc/ Access / cp -rp $ARTIFACTORY_HOME/ Access /etc/。$JFROG_HOME/artifactory/var/etc/access/ # Replicator config #注意:如果你从未使用过artifactory Replicator #你的$ARTIFACTORY_HOME/ Replicator /目录将是空的mkdir -p $JFROG_HOME/artifactory/var/etc/ Replicator / cp -rp $ARTIFACTORY_HOME/ Replicator /etc/。$JFROG_HOME/artifactory/var/etc/replicator/ # master。cp -p $ARTIFACTORY_HOME/etc/security/master. key mkdir -p $JFROG_HOME/artifactory/var/etc/security/ security/ cp -p $ARTIFACTORY_HOME/etc/security/master. key关键JFROG_HOME美元/ artifactory / var / etc /安全/主人。key # server.xml mkdir -p $JFROG_HOME/artifactory/var/work/old cp -p $JFROG_HOME/artifactory/var/work/old/server.xml # artifactory.defaults cp -rp $JFROG_HOME/artifactory/var/work/old/server.xml # artifactory.defaults如果artifactory安装了服务cp -rp $JFROG_HOME/ etc/default $JFROG_HOME/artifactory/var/work/old/artifactory.default #外部数据库驱动,例如:mysql-connector-java-
.jar mkdir -p $JFROG_HOME/artifactory/var/bootstrap/artifactory/tomcat/lib cp -rp $ARTIFACTORY_HOME/tomcat/lib/<您的数据库驱动> $JFROG_HOME/artifactory/var/bootstrap/artifactory/tomcat/lib/<您的数据库驱动> #删除旧链接的logback.xml。 Please consider migrating manually anything that is customized here rm -f $JFROG_HOME/artifactory/var/etc/artifactory/logback.xml rm -f $JFROG_HOME/artifactory/var/etc/access/logback.xml # Move Artifactory logs mkdir -p $JFROG_HOME/artifactory/var/log/archived/artifactory/ cp -rp $ARTIFACTORY_HOME/logs/. $JFROG_HOME/artifactory/var/log/archived/artifactory/ # Move configuration files # Note: Run the following only when upgrading from Artifactory version 6.x to version 7.5.x and above. mkdir -p $JFROG_HOME/artifactory/var/etc/artifactory/old mkdir -p $JFROG_HOME/artifactory/var/etc/access/old mkdir -p $JFROG_HOME/artifactory/var/etc/replicator/old cp $JFROG_HOME/artifactory/var/etc/artifactory/db.properties $JFROG_HOME/artifactory/var/etc/artifactory/old/db.properties cp $JFROG_HOME/artifactory/var/etc/artifactory/ha-node.properties $JFROG_HOME/artifactory/var/etc/artifactory/old/ha-node.properties cp $JFROG_HOME/artifactory/var/etc/access/db.properties $JFROG_HOME/artifactory/var/etc/access/old/db.properties cp $JFROG_HOME/artifactory/var/etc/replicator/replicator.yaml $JFROG_HOME/artifactory/var/etc/replicator/old/replicator.yaml HA的步骤
中的任何相对路径美元ARTIFACTORY_HOME / etc / ha-node.properties
具有绝对路径的文件。例如:#相对路径artificial .ha.data。Dir =artifactory-ha #绝对路径artifactory.ha.data.dir=/var/opt/jfrog/artifactory-ha
可选步骤
# Artifactory backup(可选)mkdir -p $JFROG_HOME/ Artifactory /var/backup/ Artifactory / cp -rp $ARTIFACTORY_HOME/backup/。$JFROG_HOME/artifactory/var/backup/artifactory/ #访问备份(可选)mkdir -p $JFROG_HOME/artifactory/var/backup/ Access / cp -rp $ARTIFACTORY_HOME/ Access /data/。$JFROG_HOME/artifactory/var/backup/access/ # Replicator backup(可选)mkdir -p $JFROG_HOME/artifactory/var/backup/ Replicator / cp -rp $ARTIFACTORY_HOME/ Replicator /data/。$JFROG_HOME/artifactory/var/backup/replicator/ #访问日志(可选)mkdir -p $JFROG_HOME/artifactory/var/log/archived/ Access / cp -rp $ARTIFACTORY_HOME/ Access /logs/。$JFROG_HOME/artifactory/var/log/archived/access/ # Replicator logs(可选)mkdir -p $JFROG_HOME/artifactory/var/log/archived/ Replicator / cp -rp $ARTIFACTORY_HOME/ Replicator /logs/。美元JFROG_HOME / artifactory / var / log /归档/复制因子
使用与当前Artifactory安装中相同的权限运行迁移脚本。该脚本将根据新的文件系统布局复制并将当前配置转换为新的配置格式。
迁移脚本只迁移配置值。在Artifactory 6中添加到配置文件中的任何注释。X安装不会被迁移。
cd $JFROG_HOME/artifactory/app/bin ./ migration .sh
当使用Linux Archive升级Artifactory时,您将需要验证复制的目录和复制的内容是否拥有正确的所有者。
如果您正在使用默认值用户:组时,会自动分配所有者artifactory: artifactory,您将不需要采取任何进一步的操作(升级将默认使用这些)。
但是,如果您正在使用自定义用户:组,然后你需要去Artifactory
system.yaml
文件并使用自定义更新它用户:组.然后需要确保目录具有相同的用户和组。- 检查以下文件,确认迁移已经成功完成:
-迁移日志:美元JFROG_HOME / artifactory / var / log / migration.log
——system.yaml配置:$ JFROG_HOME / artifactory / var / etc / system.yaml
这个新创建的文件将包含新格式的当前自定义配置。 如果Artifactory在以前的版本中是作为服务安装的,那么这个版本也要作为服务安装。
当较早的版本作为服务安装时,重要的是将新版本也作为服务更新。否则,重新启动服务器可能会导致出现较旧版本的Artifactory。
cd $JFROG_HOME/artifactory/app/bin ./installService.sh
管理Artifactory。
$ JFROG_HOME / artifactory / app / bin / artifactoryctl开始| |停止检查
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/我如果你有一个反向代理或负载均衡器配置你的Artifactory 6.x,你需要去创造一个新的反向代理配置并更新反向代理设置。
您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板
http://localhost:8082/ui/
),浏览至
管理> Artifactory >常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置.检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
码头工人升级
Docker升级仅适用于从Artifactory 6升级。x到Artifactory 7.4.1及以上版本。
使用本地Docker命令停止并删除Artifactory。
例如Docker stop artifactory Docker rm -f artifactory
设置当前Artifactory主目录的路径,并确保正确设置了目录权限。
export ARTIFACTORY_HOME=<挂载路径到当前Artifactory数据目录> chown -R 1030:1030 $ARTIFACTORY_HOME
启动Artifactory容器
docker run -e ENABLE_MIGRATION=y——name artifactory- v $ARTIFACTORY_HOME:/var/opt/jfrog/artifactory -d -p 8081:8081 -p 8082:8082 release -docker.jfrog.io/jfrog/artifactory-
:最新版本 - 从浏览器访问Artifactory:
http://SERVER_主机名: 8082 / ui
.例如,在您的本地机器上:http://localhost:8082/ui/
. 检查Artifactory日志。
Docker日志-f artifactory
Docker合成升级
停止并删除当前的容器。
从docker运行升级Docker stop artifactory Docker rm -f artifactory
从docker compose升级可在https://bintray.com/jfrog/run/art-compose停止artifactory postgresql nginx Docker rm -f artifactory postgresql nginx
解压缩归档文件的内容并转到解压缩的文件夹。
Tar -xvf jfrog-artifactory-
- - composer . Tar .gz .env文件包含在Docker-Compose归档文件中
这个.env文件由docker-compose使用,并在安装和升级期间更新。
注意,某些操作系统默认情况下不显示点文件。如果您对该文件进行了任何更改,请记得在升级之前进行备份。
R联合国的config.sh脚本来设置所需所有权的文件夹。
。/ config.sh
检查以下文件,确认迁移已经成功完成:
迁移日志:
美元JFROG_HOME / artifactory / var / log / migration.log
system.yaml
配置:$ JFROG_HOME / artifactory / var / etc / system.yaml
.这个新创建的文件将包含新格式的当前自定义配置。根据您的选择,一个选定
docker-compose.yaml
将在解压缩的文件夹中可用。但是,目录中有一些docker-compose模板模板。您可以选择任何模板并将其复制到解压缩的文件夹docker-compose.yaml
.
管理Artifactory使用本地Docker Compose命令:
Docker-compose -p rt
.命令 #从7.8开始。在启动其他服务之前,需要先启动PostgreSQL。Docker-compose -p rt-postgres -f Docker-compose -postgres 9-6-11v。Yaml up -d docker-compose -p rt up -d docker-compose -p rt ps docker-compose -p rt down
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/我如果你有一个反向代理或负载均衡器配置你的Artifactory 6.x,你需要去创造一个新的反向代理配置并更新反向代理设置。
您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
管理> Artifactory >常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置.检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
使用Docker卷进行Docker组合升级
停止并移除当前Docker容器。
Docker stop artifactory postgresql Docker rm -f artifactory postgresql
解压缩归档文件的内容并转到解压缩的文件夹。
Tar -xvf jfrog-artifactory-
- - composer . Tar .gz 复制
docker-compose-volumes.yaml
文件到解压缩的文件夹。cp / docker-compose-volumes模板。yaml docker-compose.yaml
将条目添加到
.env
文件。
注意:中的项避免重复.env
文件。echo -e "JF_SHARED_NODE_IP=$(hostname -i)">> .env echo -e "JF_SHARED_NODE_ID=$(hostname -s)">> .env echo -e "JF_SHARED_NODE_NAME=$(hostname -s)"> > .env
文件中删除以下env
docker-compose.yaml
文件。
注意:迁移开始于容器内部和一个新的system.yaml
对准从Artifactory 6迁移的数据。X被创建。要利用此过程,请删除此处的env,以确保从中获取旧的连接详细信息system.yaml
因为ENV取代了system.yaml
条目。您还可以选择将这些环境值更新为旧的连接详细信息,以便升级成功。—JF_SHARED_DATABASE_TYPE=postgresql—JF_SHARED_DATABASE_USERNAME=artifactory—JF_SHARED_DATABASE_PASSWORD=password—JF_SHARED_DATABASE_URL=jdbc:postgresql://postgresql:5432/artifactory—JF_SHARED_DATABASE_DRIVER=org.postgresql.Driver
使用本地Docker Compose命令管理Artifactory:
Docker-compose -p rt
命令。
请注意:在解压后的文件夹中执行该命令。例子Docker-compose -p rt up -d Docker-compose -p rt ps Docker-compose -p rt down
RPM升级
停止当前服务器。
服务停止
在Red Hat兼容的Linux发行版上,以根用户身份将Artifactory作为服务安装。
Yum -y install jfrog-artifactory-
- 检查以下文件,确认迁移已经成功完成:
迁移日志:
美元JFROG_HOME / artifactory / var / log / migration.log
system.yaml
配置:$ JFROG_HOME / artifactory / var / etc / system.yaml
这个新创建的文件将包含新格式的当前自定义配置。
管理Artifactory。
服务artifactory start|stop
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/如果您使用Artifactory 6.x配置了反向代理或负载均衡器,你需要去创造一个新的反向代理配置并更新反向代理设置。
您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
管理> Artifactory >常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置.检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
Debian升级
停止当前服务器。
服务停止
将Artifactory安装为服务在Debian兼容的Linux发行版上,作为根用户。
运行安装DPKG -i jfrog-artifactory-
- .deb 检查以下文件,确认迁移已经成功完成:
迁移日志:
美元JFROG_HOME / artifactory / var / log / migration.log
system.yaml
配置:$ JFROG_HOME / artifactory / var / etc / system.yaml
这个新创建的文件将包含新格式的当前自定义配置。
管理Artifactory。
服务artifactory start|stop
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/我如果你有一个反向代理或负载均衡器配置你的Artifactory 6.x,你需要去创造一个新的反向代理配置并更新反向代理设置。
您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
管理> Artifactory >常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置.检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
执掌升级
Artifactory从6升级。X到7.x(App Version)
从6升级。X到7.xrequires a one time migration process. This is done automatically on pod startup if needed. It is possible to configure the migration timeout with the following configuration in extreme cases. The default provided should be more than enough for completion of the migration:
artifactory: #迁移支持从6。X到7.xmigration: enabled: true timeoutSeconds: 3600
从版本6迁移主密钥。X到7.x(App Version)
版本6。x只支持16个十六进制(32个字符)的主键,如果你已经设置了一个主键使用Openssl rand -hex 32
(64个字符)在6。X,只使用前32个字符,其余的将被忽略。从6.迁移时。X到7.x, we trim the first 32 characters and set the masterkey, which implies that 7.x still uses the trimmed masterkey of 6.x. Therefore, theartifactory.masterKey
应该不在从6迁移时被传递。X到7.x。
从8升级。X到11。x及以上图表版本
如果你从8升级。X到11。x和以上图表版本,记得删除现有的PostgreSQL状态集之前由于PostgreSQL子图的突破性变化而升级图表。
kubectl delete statefulsets
一旦有了新的图表版本,就可以升级部署。
单节点升级
使用以下命令进行升级。
单独的节点Helm upgrade artifactory—命名空间artifactory jfrog/artifactory
如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照下面的说明到g . postgresqlPasswordEt当前密码。
POSTGRES_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "" | base64——decode) 通过传递先前自动生成的秘密来升级版本。
Helm upgrade
jfrog/artifactory——set postgresql. zippostgresqlPassword=${POSTGRES_PASSWORD}——namespace <命名空间> 这将应用现有部署上的任何配置更改。
HA升级
使用以下命令进行升级。
哈Helm upgrade artifactory-ha——命名空间artifactory-ha jfrog/artifactory-ha
如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照下面的说明到g . postgresqlPasswordEt当前密码。
POSTGRES_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "" | base64——decode) 通过传递先前自动生成的秘密来升级版本。
helm upgrade
——namespace artifactory-ha jfrog/artifactory-ha——set postgresql.postgresqlPassword=${POSTGRES_PASSWORD} 这将应用现有部署上的任何配置更改。
Windows升级
迁移是Windows安装的一个手动过程。下面的步骤还包括复制目录并运行迁移脚本
确保运行Artifactory的用户在服务器上运行所有命令。
停止当前服务器。
cd %ARTIFACTORY_HOME%\bin artifactory.bat停止
如果您将Artifactory服务作为一个进程运行,请从Services中停止该服务。按Windows键+R,输入services。msc访问服务。
提取压缩归档文件的内容,将其移动到新创建的jfrog\artifactory文件夹中,然后转到新文件夹。
#解压windows界面下的压缩文件mkdir jfrog move jfrog-artifactory-
- jfrog\artifactory . zip 设置你的
ARTIFACTORY_HOME
而且JFROG_HOME
变量。
请注意:ARTIFACTORY_HOME美元
变量指向现有的安装,而JFROG_HOME美元
变量指向新的安装。当设置
ARTIFACTORY_HOME
而且JFROG_HOME
变量,确保使用Windows短名称或转义空格。有关更多信息,请参见在这里.SET ARTIFACTORY_HOME=<当前Artifactory安装的路径> SET JFROG_HOME=< jfrog文件夹的路径> SET JF_PRODUCT_HOME=%JFROG_HOME%/ Artifactory . home
将目录从当前路径复制到新路径。如果目标目录存在,则忽略。
强制性的措施
# Artifactory data mkdir %JFROG_HOME%\ Artifactory \var\data\ Artifactory /E / q#访问数据mkdir %JFROG_HOME%\ Artifactory \var\data\ Access xcopy %ARTIFACTORY_HOME%\ Access \data %JFROG_HOME%\ Artifactory \var\data\ Access /E / q#复制器数据#注:如果你从来没有使用过Artifactory Replicator #你的%ARTIFACTORY_HOME%\ Artifactory \var\data\ Replicator xcopy %ARTIFACTORY_HOME%\ Replicator \data %JFROG_HOME%\ Artifactory \var\data\ Replicator /E / q# Artifactory config mkdir %JFROG_HOME%\ Artifactory \var\etc\ Artifactory xcopy %ARTIFACTORY_HOME%\etc %JFROG_HOME%\ Artifactory \var\etc\ Artifactory /E / q# Access config mkdir %JFROG_HOME%\ Artifactory \var\etc\ Artifactory xcopy%ARTIFACTORY_HOME%\access\etc %JFROG_HOME%\artifactory\var\etc\access /E / q# Replicator配置#注意:如果你从未使用过artifactory Replicator #,你的%ARTIFACTORY_HOME%\ Replicator目录将为空mkdir %JFROG_HOME%\artifactory\var\etc\ Replicator xcopy %ARTIFACTORY_HOME%\ Replicator \etc %JFROG_HOME%\artifactory\var\etc\ Replicator /E / q# master。键mkdir %JFROG_HOME%\artifactory\var\etc\security xcopy %ARTIFACTORY_HOME%\etc\security\master。key %JFROG_HOME%\artifactory\var\etc\security / q# server.xml mkdir %JFROG_HOME%\artifactory\var\work\old xcopy %ARTIFACTORY_HOME%\tomcat\conf\server.xml %JFROG_HOME%\artifactory\var\work\old /q #外部数据库驱动,例如:mysql-connector-java-
.jar xcopy %ARTIFACTORY_HOME%\tomcat\lib\<您的数据库驱动> %JFROG_HOME%\artifactory\app\artifactory\tomcat\lib /q #将新artifactory目录的所有权更改为想要运行artifactory的用户。如果您对打算运行Artifactory的用户执行了前面的所有步骤,则可以跳过此步骤。#删除带有旧链接的logback.xml请考虑手动迁移此处自定义的任何内容del %JFROG_HOME%\artifactory\var\etc\artifactory\logback.xml del %JFROG_HOME%\artifactory\var\etc\access\logback.xml #移动配置文件#注意:仅从artifactory版本6升级时运行以下命令。X到7.5版。X及以上。mkdir %JFROG_HOME%\artifactory\var\etc\artifactory\old mkdir %JFROG_HOME%\artifactory\var\etc\access\old mkdir %JFROG_HOME%\artifactory\var\etc\replicator\old move /Y %JFROG_HOME%\artifactory\var\etc\artifactory\db。属性% JFROG_HOME % \ artifactory \ var \ etc \ artifactory \ \ db。箴perties move /Y %JFROG_HOME%\artifactory\var\etc\artifactory\ha-node.properties %JFROG_HOME%\artifactory\var\etc\artifactory\old\ha-node.properties move /Y %JFROG_HOME%\artifactory\var\etc\access\db.properties %JFROG_HOME%\artifactory\var\etc\access\old\db.properties move /Y %JFROG_HOME%\artifactory\var\etc\replicator\replicator.yaml %JFROG_HOME%\artifactory\var\etc\replicator\old\replicator.yaml
可选步骤# Artifactory备份(可选)mkdir %JFROG_HOME%\ Artifactory \var\backup\ Artifactory /E / q#访问备份(可选)mkdir %JFROG_HOME%\ Artifactory \var\backup\ Access xcopy %ARTIFACTORY_HOME%\ Access \backup %JFROG_HOME%\ Artifactory \var\backup\ Access /E / q# Replicator备份(可选)mkdir %JFROG_HOME%\ Artifactory \var\backup\ Replicator xcopy %ARTIFACTORY_HOME%\ Replicator \backup %% JFROG_HOME % \ \ artifactory \ var \备份复制因子/ E / q # artifactory日志(可选)mkdir % JFROG_HOME % \ artifactory \ var \ log \ artifactory选择复制文件% ARTIFACTORY_HOME % % JFROG_HOME % \ artifactory \ var \ \日志日志\ artifactory / E / q #访问日志(可选)mkdir % JFROG_HOME % \ artifactory \ var \ log \访问选择复制文件% ARTIFACTORY_HOME % % JFROG_HOME % \ \ \访问日志artifactory \ var \ log \访问/ E / q #复制因子日志(可选)mkdir % JFROG_HOME % \ artifactory \ var \ log \复制因子选择复制文件% ARTIFACTORY_HOME % \复制因子\日志将特定文件从当前路径复制到新路径。
房委会装置,替换%中任何相对路径ARTIFACTORY_HOME % \等\ha-node.properties具有绝对路径的文件。
例如:#相对路径artificial .ha.data。Dir =artifactory-ha #绝对路径artifactory.ha.data.dir=\var\opt\jfrog\artifactory-ha
使用与当前Artifactory安装中相同的权限运行迁移脚本。该脚本将根据新的文件系统布局复制并将当前配置转换为新的配置格式。
cd %JFROG_HOME%\artifactory\app\bin migrate.bat
迁移脚本只迁移配置值。在Artifactory 6中添加到配置文件中的任何注释。X安装不会被迁移。
- 检查以下文件,确认迁移已经成功完成:
迁移日志:
% JFROG_HOME % \ artifactory \ var \ \ migration.log日志
system.yaml
配置:% JFROG_HOME % \ artifactory \ var \ etc \ system.yaml
这个新创建的文件将包含新格式的当前自定义配置。管理Artifactory。
% JFROG_HOME % \ artifactory \ app \ bin \ artifactory.bat开始|停止
第一次Artifactory Windows安装防火墙警报
当启动Artifactory时,您可能会得到一些防火墙异常消息。选择专用网络并允许访问继续工作。按照以下步骤将Artifactory安装为Windows服务在这里.
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/我如果你有一个反向代理或负载均衡器配置你的Artifactory 6.x,你需要去创造一个新的反向代理配置并更新反向代理设置。
您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
管理> Artifactory >常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置.检查artifactory-service.log.
日志类型% JFROG_HOME % \ artifactory \ var \ \ artifactory-service.log
从版本7升级。X到7.x
升级前,请确保您使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。
从JFrog Artifactory 7升级。X至7.10或以上
当从7.10之前的任何版本升级到7.10及以上版本时,升级过程会执行内部DB模式迁移,这可能会导致短时间停机。
当从Artifactory 7升级时。X到7.x, your metadata will also be migrated automatically. For more information, seeJFrog平台元数据迁移.
查看新指标和趋势
升级到Artifactory 7.11时。x,你需要任务控制4.6。X能够使用新的指标和趋势。
支持以下升级方式:
Linux档案升级
- 以root用户登录。
停止当前服务器。
停止Artifactorycd $JFROG_HOME/artifactory/app/bin ./artifactoryctl stop . sh
导出JFrog变量。
#导出变量以简化命令Export JFROG_HOME=<您的JFrog主目录,例如/opt/ JFrog > Export JF_NEW_VERSION=<例如/opt/ JFrog /artifactory-7.x> .x> .x
解压缩归档文件的内容并转到解压缩的文件夹。
解压Tar -xvf jfrog-artifactory-
- -linux. Tar .gz 替换现有的
美元JFROG_HOME / artifactory /应用程序
有了新的应用程序文件夹中。升级#删除应用rm -rf $JFROG_HOME/artifactory/app #复制新应用cp -r $JFROG_HOME/artifactory #删除提取的新版本rm -rf $ jfrog_new_version chown -r artifactory:artifactory /opt/jfrog/artifactory/app
如果Artifactory在以前的版本中是作为服务安装的,那么这个版本也要作为服务安装。
当较早的版本作为服务安装时,重要的是将新版本也作为服务更新。否则,重新启动服务器可能会导致出现较旧版本的Artifactory。
cd $JFROG_HOME/artifactory/app/bin ./installService.sh
管理Artifactory。
$ JFROG_HOME / artifactory / app / bin / artifactoryctl开始| |停止检查
从浏览器http://SERVER_HOSTNAME:8082/ui/访问Artifactory。例如,在您的本地机器上:
http://localhost:8082/ui/
.检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
RPM升级
停止当前服务器。
服务停止
在Red Hat兼容的Linux发行版上,以根用户身份将Artifactory作为服务安装。
Yum -y install jfrog-artifactory-
- .rpm 管理Artifactory。
服务artifactory start|stop
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/
检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
码头工人升级
使用本地Docker命令停止并删除Artifactory。
例如Docker stop artifactory Docker rm -f artifactory
设置当前Artifactory主目录的路径,并确保正确设置了目录权限。
export ARTIFACTORY_HOME=<挂载路径到当前Artifactory数据目录> chown -R 1030:1030 $ARTIFACTORY_HOME
启动Artifactory容器
docker run——name artifactory- v $ARTIFACTORY_HOME:/var/opt/jfrog/artifactory -d -p 8081:8081 -p 8082:8082 release -docker.jfrog.io/jfrog/artifactory-
:latest .(最新版本 - 从浏览器访问Artifactory:
http://SERVER_主机名: 8082 / ui
.例如,在您的本地机器上:http://localhost:8082/ui/
. 检查Artifactory日志。
Docker日志-f artifactory
Docker合成升级
停止当前服务器。
Docker-compose -p rt stop
解压缩归档文件的内容并转到解压缩的文件夹。
Tar -xvf jfrog-artifactory-
- - composite . Tar .gz CD artifactory- - .gz 的内容
.env
文件在以前的安装中新建.env
此存档中的文件不需要复制版本,因为这会影响升级。R联合国的config.sh脚本来设置所需所有权的文件夹。
。/ config.sh
管理Artifactory使用本地Docker Compose命令,
Docker-compose -p rt
.命令 #从7.8开始。在启动其他服务之前,需要先启动PostgreSQL。如果PostgreSQL 9.6.11正在运行,则使用- docker-compose-p rt-postgres -f docker-compose-postgres-9-6.11v。如果PostgreSQL 10.13正在运行,使用- docker-compose-p rt-postgres -f docker-compose-postgres-10-13v。如果PostgreSQL 12.3正在运行,则使用- docker-compose-p rt-postgres -f docker-compose-postgres。Yaml up -d docker-compose -p rt up -d docker-compose -p rt ps docker-compose -p rt down
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/
检查Artifactory日志。
-f $ROOT_DATA_DIR/var/log/console.log
Debian升级
停止当前服务器。
服务停止
将Artifactory安装为服务在兼容的Linux发行版上,作为根用户。
运行安装DPKG -i jfrog-artifactory-
- .deb 管理Artifactory。
服务artifactory start|stop
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/
检查Artifactory日志。
tail -f $JFROG_HOME/artifactory/var/log/console.log
执掌升级
一旦有了新的图表版本,就可以升级部署。
单节点升级
使用以下命令进行升级。
单独的节点Helm upgrade artifactory—命名空间artifactory jfrog/artifactory
如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照下面的说明到g . postgresqlPasswordEt当前密码。
POSTGRES_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "" | base64——decode) 通过传递先前自动生成的秘密来升级版本。
Helm upgrade
jfrog/artifactory——set postgresql. zippostgresqlPassword=${POSTGRES_PASSWORD}——namespace <命名空间> 这将应用现有部署上的任何配置更改。
HA升级
升级路径取决于用于安装Artifactory HA的Artifactory舵图。您必须使用与安装Artifactory HA时相同的图表。
使用artifactory Chart升级HA
使用以下命令进行升级。
哈Helm upgrade artifactory—命名空间artifactory-ha jfrog/artifactory
如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照下面的说明到g . postgresqlPasswordEt当前密码
POSTGRES_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "" | base64——decode) 通过传递先前自动生成的秘密来升级版本。
helm upgrade
——namespace artifactory jfrog/artifactory——set postgresql.postgresqlPassword=${POSTGRES_PASSWORD} 这将应用现有部署上的任何配置更改。
使用artifactory-ha Chart升级HA
使用以下命令进行升级。
哈Helm upgrade artifactory-ha——命名空间artifactory-ha jfrog/artifactory-ha
如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照下面的说明到g . postgresqlPasswordEt当前密码
POSTGRES_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "" | base64——decode) 通过传递先前自动生成的秘密来升级版本。
helm upgrade
——namespace artifactory-ha jfrog/artifactory-ha——set postgresql.postgresqlPassword=${POSTGRES_PASSWORD} 这将应用现有部署上的任何配置更改。
Windows升级
停止当前服务器。
停止Artifactorycd %JFROG_HOME%\artifactory\app\bin artifactory.bat停止
解压缩归档文件的内容并转到解压缩的文件夹。
替换现有的
% JFROG_HOME % \ app
有了新的应用程序文件夹中。升级这里提供的示例路径SET %JFROG_HOME%=\myHome\jfrog SET %JF_NEW_VERSION%=\myHome\artifactory-7。删除应用rmdir %JFROG_HOME%\artifactory\app #复制新应用%$JF_NEW_VERSION%\app %$JFROG_HOME%\artifactory #删除提取的新版本rmdir %JF_NEW_VERSION%
管理Artifactory。
% JFROG_HOME % \ artifactory \ app \ bin \ artifactory.bat开始|停止
第一次Artifactory Windows安装防火墙警报
当启动Artifactory时,您可能会得到一些防火墙异常消息。选择专用网络并允许访问继续工作。
从浏览器访问Artifactory:
http://SERVER_HOSTNAME:8082/ui/
.例如,在您的本地机器上:http://localhost:8082/ui/
.检查Artifactory日志。
日志类型% JFROG_HOME % \ artifactory \ var \ \ console.log
启用TLS 1.0和1.1与旧数据库连接
Artifactory version 7.25.5以上包含OpenJDK version 11.0.11及更高版本。从OpenJDK 11.0.11起,TLS 1.0和TLS 1.1默认禁用。如果您的数据库版本不支持TLS 1.2, Artifactory启动将失败。
如果您无法将数据库升级到支持TLS 1.2或更高版本,请执行以下步骤运行Artifactory:
下载java。安全文件启用TLS 1.0和1.1的用户。
创建目录,
$ {JFROG_HOME} / artifactory /var/引导/ artifactory / java
.mkdir -p ${JFROG_HOME}/artifactory/var/bootstrap/artifactory/java
- 复制java。安全文件into
$ {JFROG_HOME} / artifactory /var/引导/ artifactory / java。
为目录提供适当的权限。
chmod 755 ${JFROG_HOME}/artifactory/var/bootstrap/artifactory/java/java.security
Artifactory启动需要现有java的备份。安全文件和自定义java。安全进
$ {JFROG_HOME} / artifactory / app /第三方/ java / conf /安全
文件夹中。
为头盔安装配置Java安全文件
创建以下本地目录。
Mkdir -p java/configmap
下载java。安全文件启用TLS 1.0和1.1的用户。
- 复制java。安全文件to
java / configmap
. 运行如下命令创建自定义配置映射。有关更多信息,请参阅使用配置映射.
Kubectl create configmap java-security-config——from-file=java/configmap/java.security
将以下自定义配置映射传递给Helm安装。有关更多信息,请参阅使用配置映射.
"mkdir -p /opt/jfrog/artifactory/var/bootstrap/artifactory/java && cp - lrf /tmp/java/* /opt/jfrog/artifactory/var/bootstrap/artifactory/java/" customVolumes: | - name: java-security-config configMap: name: java-security-config customVolumeMounts: | - name: java-security-config mountPath: /tmp/java/java。security子路径:java.security
升级企业HA集群
本节描述升级Artifactory企业高可用性集群的过程。由于您的集群包含多个节点,您可以完成升级过程不需要任何停机时间到您的组织正在使用的Artifactory服务。
升级前,请确保您使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。
升级步骤
升级到最新版本包括以下三个阶段:
- 升级第一个节点。
- 升级其他节点。
- 检查HA安装和配置结果。
想停止使用NFS?
升级完成后停止使用NFS共享(可选),请参阅从NFS迁移数据迁移到替代存储。
使用NFS数据文件夹与JFrog路由器
如果您的HA集群使用NFS作为其文件存储,您将需要验证在升级后,唯一的共享文件夹是JFROG_HOME /数据/ artifactory美元
目录(即,如果NFS直接挂载到/var/opt/jfrog/artifactory /数据
你会遇到问题)。
这是因为$ JFROG_HOME /数据/路由器
每个节点的文件夹必须唯一。如果您正在为NFS使用不同的文件夹,则此警告不适用。
会话管理选项
从6.2版开始,当访问其中一个成员时,Artifactory在Artifactory HA成员之间提供了不同的会话管理替代方案。如果您没有将HA集群配置为启用会话保持,那么在完成整个集群的升级之前,UI将无法工作。
控件控制会话的管理方式artifactory.map.provider.type
财产(在JFROG_HOME美元/ artifactory / var / etc / artifactory / artifactory.system.properties
文件),可以取以下值:
db |
(默认) 会话由数据库管理 |
分布式 |
会话由Hazelcast管理 |
jvm |
会话由JVM管理 |
如果会话被配置为由数据库管理,Artifactory还将调度一个cron作业来清理旧会话。
用于触发会话的cron表达式可以使用artifactory.db.session.cleanup.cron
的财产$ JFROG_HOME / artifactory / var / etc / artifactory
/ artifactory.system.properties
文件。
在安装期间,这个cron表达式被设置为默认值,该值在每小时之后的设置分钟(随机确定)触发清理。
升级HA节点向后兼容性
从Artifactory 7.17.4开始,HA集群支持Cloud-Native兼容性,其中所有节点都是平等的,不再需要设置主节点和辅助节点。
要使用这个新功能,请添加“任务”亲和力
”:“任何
的群集中包含的节点Artifactory系统YAML.
升级时,仍然设置了主节点和备节点。
您可以将这些更改为taskAffinity:任何
如下:
node: haEnabled: true taskAffinity: any
并注释掉或删除以下内容:
#主:真
升级第一个节点
- 从负载均衡器中移除第一个节点。所有请求都将被定向到其他节点。检查$ HOME /日志/ request.log而且ARTIFACTORY_URL / api /任务(搜索“running”)以确保Artifactory完全处于非活动状态。
- 根据安装类型的说明继续升级。
启动第一个节点。它会识别出HA集群节点并不都运行相同版本的Artifactory,因此,系统将被限制为允许上传和下载。
任何试图执行其他操作的尝试,如更改DB模式、修改权限、更改存储库配置等,都被严格阻止。此限制将持续到所有集群节点再次运行相同版本为止。
版本不一致会产生异常
运行不同版本的HA集群节点会出现异常。这些可以在日志文件中看到,反映了升级过程中的临时不一致状态。这是正常的,应该忽略,直到所有集群节点再次运行相同的版本。
当从版本6升级。X到7.x
调整你的反向代理设置并更新您的负载均衡器配置使用新的JFrog平台URLhttp:// <主机名>:8081.您可能需要更新自定义URL库,作为Artifactory从6升级的一部分。X到7.x。记住要使用一个在所有情况下都能正确工作的URL;例如:https://mydomain,如果反向代理也更新为同时使用文档中提到的Artifactory REST API端口和Router端口,那么这个值是正确的。
将第一个节点放回负载均衡器。
升级附加节点
为每一个额外的节点在HA集群中,执行以下操作。
- 将该节点从负载均衡器中移除,以便所有请求都被定向到其他节点。检查$ HOME /日志/ request.log和ARTIFACTORY_URL/api/tasks(搜索“running”),以确保Artifactory完全处于非活动状态。
根据安装类型的说明继续升级。
- 启动附加节点。
- 将附加节点添加回负载均衡器。
对每个其他节点重复此过程。
检查安装情况
在启动每个附加节点之后,我们建议检查system.yaml
而且binarystore.xml
文件(下JFROG_HOME / artifactory / var / etc /美元
),以确保它们的配置正确
检查HA安装和配置结果
完成HA集群升级后,可以使用以下测试验证集群是否已正确安装和配置。
- 直接访问您刚刚配置的服务器的Artifactory UI
- 在管理模块转到Service | Artifactory |系统日志查看日志并验证您看到的条目HA节点ID。
- 模块导航栏的底部还应该表明您正在使用Enterprise许可证运行。如果出现错误,您将在页面标题中看到错误消息。
- 通过负载均衡器访问Artifactory,并以管理.
在管理模块转到监控|服务状态。选择后,将显示下表,其中包括集群中所有Artifactory节点的详细信息。
在管理模块下|常规设置,验证自定义URL库字段正确配置为负载均衡器的URL。