云客户?
免费开始>
在MyJFrog中升级>
云的新功能>







概述

升级Artifactory的过程取决于您的安装类型。我们强烈建议您在继续升级之前通读此页面。

升级到版本7。第一次做X ?

建议您先复习一下有什么新鲜事最新的JFrog平台。查看重大变更、弃用特性等。

在升级Artifactory之前,需要关闭Artifactory服务。在升级期间,工厂将不在线。在继续升级之前,请考虑此停机时间。

系统需求

升级Artifactory前,请参考系统需求有关支持的平台、支持的浏览器和其他要求的信息。要了解HA架构,请参考系统架构

请注意确保使用与最初安装Artifactory相同的升级方法(RPM、Debian、Docker等)。

继续之前

为了确保在升级过程中遇到任何问题时可以恢复工件和数据库,我们强烈建议您确保系统和数据库备份是最新的

在升级之前,请确保指定join.keysystem.yaml文件。中未指定连接键system.yaml升级后的Artifactory节点可能无法启动,并且无法加入HA集群。欲知有关system.yaml配置,请参阅人工系统YAML

Oracle数据库用户

Artifactory 7。x需要一个新的设置连接到Oracle数据库。有关更多信息,请参见配置Artifactory使用Oracle

MySQL数据库用户

Artifactory版本7.25.5及更高版本附带的OpenJDK版本会阻止使用TLS 1.0或1.1的连接。如果无法将数据库升级到支持TLS 1.2或更高版本,则必须显式启用这些连接。有关更多信息,请参见启用TLS 1.0和1.1与旧数据库的连接

港口的要求

在启动升级过程之前,请确保各种Artifactory微服务所需要的端口是打开的。有关Artifactory所需端口的更多信息,请参见系统需求

x射线人工制品

您是否有多个Artifactory实例连接到单个x射线实例?

当升级到JFrog平台时,Xray必须只连接到单个Artifactory实例。如果一个x射线实例连接到多个Artifactory实例,请在继续任何升级之前使用以下选项之一:

选项1(推荐)保持一个连接的Artifactory实例到您的单个Xray实例,并将其余的升级到版本7。x与新安装的Xray版本3。x实例。此选项将需要重新索引额外的Artifactory实例,并将导致一些配置数据的丢失。了解更多>

选项2:安装额外的x射线版本2。为您拥有的每个Artifactory实例,并恢复所有MongoDB和PostgreSQL数据。继续将每个Artifactory和Xray对升级到版本7。X和版本3.x。只有当您必须保留所有x射线配置并在新实例中轻松地重新配置它们时,才建议使用此过程。了解更多>

在升级x射线之前

升级过程可能需要一段时间才能完成,您应该考虑在Xray不可用时启用允许下载,并在Xray配置页面中启用允许下载被阻止的工件复选框,以防止Artifactory无法响应用户请求。

安装类型

安装类型在下面不同的安装说明中引用为

订阅类型 安装类型 下载软件包

箴X
企业
企业+
下载链接
Artifactory OSS
oss 下载链接
JFrog容器注册
jcr 下载链接

升级步骤

升级过程主要包括以下几个步骤:

  1. 下载软件包升级(Linux Archive, RPM, Debian, Docker Compose, Helm)。
  2. 停止当前服务器
  3. 解压/安装包根据安装程序的分发类型。
  4. 检查迁移日志并检查system.yaml验证迁移是否成功(仅用于从v6.x升级)。
  5. 启动服务使用启动脚本或操作系统服务管理。
  6. 检查人造日志查询服务的状态。

默认主目录/ $JFROG_HOME

默认Artifactory主目录是根据安装类型定义的。有关更多详细信息,请参阅JFrog产品目录结构

请注意:本指南使用JFROG_HOME美元表示包含已部署产品的JFrog根目录,即所有JFrog产品的主目录。hth华体会最新官方网站

JFrog订阅级别

自托管

箴X
企业
企业+
页面内容


从6.10以下版本升级

从6.10以下的版本升级。如果是X,则首先需要升级到6.10版本。X(或任意6). X版本(6.10.x以上)中描述的升级神器x文档,然后继续从版本6.10升级到7.x。

升级前,请确认当前使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。



从版本6.10升级。一直到

下表提供了7中的版本。您可以从6.x的特定版本升级。

从6升级。x版本 升级到7。x版本
人工版本6.23.21及以上 人工版本7.21.3及以上
人工版本6.23.15及以上 人工版本7.17.5及以上
人工版本6.23.13及以上 人工版本7.16.0及以上
人工版本6.23.7及以上 人工版本7.12.6及以上
人工版本6.23.3及以上 人工版本7.11。X及以上
人工版本6.23.1及以上 人工版本7.10。X及以上
人工版本6.23.0及以上 人工版本7.10。X及以上
人工版本6.22。X及以上 人工版本7.9。X及以上
人工版本6.21。X及以上 人工版本7.7。X及以上
人工版本6.20。X及以上 人工7.5版。X及以上
人工版本6.19。X及以上 人工版本7.4.2及以上
人工版本6.18。X及以上

人工版本7.3.2及以上

人工版本6.10。X到6.17x Artifactory 7.x的任何版本

除了上面列出的例外情况,您可以升级到任何版本的7。从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访问adminarti-adminAccess和Artifactory的用户。在人工工厂7。X,全局变量管理用户处理跨服务的管理。的访问adminarti-admin在升级过程中仍然保留用户。这些用户可以在升级完成后安全删除。

支持以下升级方式:

Linux Archive升级

迁移是Linux存档安装的手动过程。下面的步骤还包括复制目录和运行迁移脚本

确保使用正在运行Artifactory的用户在服务器上运行所有命令。

  1. 停止当前服务器。

    cd $ARTIFACTORY_HOME/bin ./artifactoryctl stop . cd
  2. 提取压缩归档文件的内容并将其移动到artifactory目录中

    Tar -xvf jfrog-artifactory---linux. Tar .gz mkdir jfrog mv artifactory-- jfrog/artifactory
  3. 设置你的ARTIFACTORY_HOMEJFROG_HOME变量。
    请注意:ARTIFACTORY_HOME美元变量指向您现有的安装,而JFROG_HOME美元变量指向新安装。

    export ARTIFACTORY_HOME=<当前Artifactory安装的路径> export JFROG_HOME=< jfrog目录的完整路径,例如:/opt/jfrog> export JF_PRODUCT_HOME=$JFROG_HOME/ Artifactory
  4. 将目录从当前路径复制到新路径。

    下面是您需要从当前路径复制到新路径的目录。
    下面的示例用BASH提供了将数据从版本6复制到版本7的方法。


    强制性的措施

    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配置mkdir -p $JFROG_HOME/artifactory/var/etc/artifactory/ cp -rp $ARTIFACTORY_HOME/etc/。$JFROG_HOME/artifactory/var/etc/artifactory/ # Access配置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/ # masterkey mkdir -p $JFROG_HOME/artifactory/var/etc/security/ cp -p $ARTIFACTORY_HOME/etc/security/master。关键JFROG_HOME美元/ artifactory / var / etc /安全/主人。key # server.xml mkdir -p $JFROG_HOME/artifactory/var/work/old cp -p $ARTIFACTORY_HOME/tomcat/conf/server.xml $JFROG_HOME/artifactory/var/work/old/server.xml # artifactory.defaults cp -rp $ARTIFACTORY_HOME/bin/artifactory.default $JFROG_HOME/artifactory/var/work/old/artifactory.default #或者,如果artifactory安装了服务cp -rp $ARTIFACTORY_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具有绝对路径的文件。

    例如:
    #相对路径artifactory.ha.data#绝对路径artifactory.ha.data.dir=/var/opt/jfrog/artifactory-ha

    可选步骤

    #手工备份(可选)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备份(可选)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日志(可选)mkdir -p $JFROG_HOME/artifactory/var/log/archived/ Replicator / cp -rp $ARTIFACTORY_HOME/ Replicator /logs/。美元JFROG_HOME / artifactory / var / log /归档/复制因子
  5. 使用与当前Artifactory安装中相同的权限运行迁移脚本。根据新的文件系统布局,该脚本将复制并转换当前配置为新的配置格式。

    迁移脚本只迁移配置值。在Artifactory 6中添加到配置文件中的任何注释。不会迁移X安装。

    cd $JFROG_HOME/artifactory/app/bin ./ migration .sh

    当使用Linux Archive升级Artifactory时,您需要验证复制的目录和复制的内容是否具有正确的所有者。

    如果您使用的是默认值用户:组,则会自动分配所有者artifactory: artifactory,您不需要采取任何进一步的操作(升级将默认使用这些操作)。

    但是,如果您使用的是自定义用户:组,然后你需要去神器工厂system.yaml文件并使用自定义更新它用户:组.然后,您需要确保该目录具有相同的用户和组。

  6. 通过查看以下文件,检查迁移是否成功完成:
    -迁移日志美元JFROG_HOME / artifactory / var / log / migration.log
    ——system.yaml配置$ JFROG_HOME / artifactory / var / etc / system.yaml
    这个新创建的文件将以新的格式包含您当前的自定义配置。
  7. 如果Artifactory在以前的版本中是作为服务安装的,请将此版本也作为服务安装。

    当较早的版本作为服务安装时,重要的是将新版本也作为服务更新。否则,重新启动服务器可能会导致出现旧版本的Artifactory。

    cd $JFROG_HOME/artifactory/app/bin ./installService.sh
  8. 管理Artifactory。

    $ JFROG_HOME / artifactory / app / bin / artifactoryctl开始| |停止检查
  9. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

    如果您的Artifactory 6.x配置了反向代理或负载均衡器,您将需要创建新的反向代理配置并更新您的反向代理设置。

    您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
    管理>人工>常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置


  10. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

码头工人升级

Docker升级只适用于从Artifactory 6升级。x至第7.4.1条及以上规定。

  1. 使用本地Docker命令停止和删除Artifactory。

    例如
    Docker停止artifactory
  2. 将路径设置为当前Artifactory主目录,并确保正确设置了目录权限。

    export ARTIFACTORY_HOME=<挂载到当前Artifactory数据目录的路径> chown -R 1030:1030 $ARTIFACTORY_HOME
  3. 启动Artifactory容器

    docker运行-e ENABLE_MIGRATION=y——name artifactory- v $ARTIFACTORY_HOME:/var/opt/jfrog/artifactory -d -p 8081:8081 -p 8082:8082 releases-docker.jfrog.io/jfrog/artifactory-:最新版本
  4. 从浏览器访问Artifactory:http://SERVER_主机名: 8082 / ui例如,在您的本地机器上:http://localhost:8082/ui/
  5. 检查人工日志。

    Docker日志-f artifactory

Docker组件升级

  1. 停止并移除当前容器。

    从docker运行升级
    Docker停止artifactory
    从docker compose升级,可在https://bintray.com/jfrog/run/art-compose
    Docker rm -f artifactory postgresql nginx
  2. 提取压缩归档文件的内容并转到提取的文件夹。

    Tar -xvf jfrog-artifactory--- composer . Tar .gz

    .env文件包含在Docker-Compose归档文件中

    这个.env文件由docker-compose使用,并在安装和升级期间更新。

    请注意,有些操作系统默认情况下不显示点文件。如果对文件进行了任何更改,请记住在升级之前进行备份。

  3. R联合国的config.sh脚本设置具有所需所有权的文件夹。

    。/ config.sh
  4. 通过查看以下文件,检查迁移是否成功完成:

    1. 迁移日志美元JFROG_HOME / artifactory / var / log / migration.log

    2. system.yaml配置$ JFROG_HOME / artifactory / var / etc / system.yaml这个新创建的文件将以新的格式包含您当前的自定义配置。

    3. 根据您的选择,一个选定的docker-compose.yaml将在提取的文件夹中可用。但是,该目录中有一些docker-compose模板模板。您可以选择任何模板并将其复制到解压的文件夹中docker-compose.yaml

  5. 管理Artifactory使用本地Docker Compose命令:Docker-compose -p rt 命令

    #从7.8开始。在启动其他服务之前,需要先启动PostgreSQL。Docker-compose -p rt-postgres -f Docker-compose -postgres-9-6-11v-d docker-compose -p rt up -d docker-compose -p rt ps docker-compose -p rt down
  6. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

    如果您的Artifactory 6.x配置了反向代理或负载均衡器,您将需要创建新的反向代理配置并更新您的反向代理设置。
    您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
    管理>人工>常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置

  7. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

使用Docker卷完成升级

  1. 停止并移除当前的Docker容器。

    Docker stop artifactory postgresql
  2. 提取压缩归档文件的内容并转到提取的文件夹。

    Tar -xvf jfrog-artifactory--- composer . Tar .gz
  3. 复制docker-compose-volumes.yaml文件到解压缩文件夹。

    cp / docker-compose-volumes模板。yaml docker-compose.yaml
  4. 将条目添加到.env文件。
    注意:中的条目避免重复.env文件。

    echo -e "JF_SHARED_NODE_IP=$(hostname -i)">> .env echo -e "JF_SHARED_NODE_ID=$(主机名-s)">> .env echo -e "JF_SHARED_NODE_NAME=$(主机名-s)"> > .env
  5. 中删除以下envdocker-compose.yaml文件。
    注意:迁移从容器和新容器内开始system.yaml与从工件6迁移的数据保持一致。创建X。要利用此过程,请删除此处的环境,以确保从中获取旧的连接详细信息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 . JF_SHARED_DATABASE_TYPE=postgresql
  6. 使用本地Docker Compose命令管理Artifactory:Docker-compose -p rt 命令。
    请注意:在解压后的文件夹中执行该命令。

    例子
    Docker-compose -p rt up -d Docker-compose -p rt ps Docker-compose -p rt down

RPM升级

  1. 停止当前服务器。

    维修停机
  2. 在Red Hat兼容的Linux发行版上,以根用户的身份将Artifactory作为服务安装。

    Yum -y install jfrog-artifactory--
  3. 通过查看以下文件,检查迁移是否成功完成:

    1. 迁移日志美元JFROG_HOME / artifactory / var / log / migration.log

    2. system.yaml配置$ JFROG_HOME / artifactory / var / etc / system.yaml
      这个新创建的文件将以新的格式包含您当前的自定义配置。

  4. 管理Artifactory。

    服务人工启动/停止
  5. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

    如果您的Artifactory 6.x配置了反向代理或负载平衡器,您将需要创建新的反向代理配置并更新您的反向代理设置。
    您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
    管理>人工>常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置

  6. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

Debian升级

  1. 停止当前服务器。

    维修停机
  2. 将Artifactory作为服务安装在Debian兼容的Linux发行版上,以root用户的身份。

    运行安装
    DPKG -i jfrog-artifactory--.deb
  3. 通过查看以下文件,检查迁移是否成功完成:

    1. 迁移日志美元JFROG_HOME / artifactory / var / log / migration.log

    2. system.yaml配置$ JFROG_HOME / artifactory / var / etc / system.yaml
      这个新创建的文件将以新的格式包含您当前的自定义配置。

  4. 管理Artifactory。

    服务人工启动/停止
  5. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

    如果您的Artifactory 6.x配置了反向代理或负载均衡器,您将需要创建新的反向代理配置并更新您的反向代理设置。
    您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
    管理>人工>常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置

  6. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

执掌升级

手工从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个字符)的masterKey,如果您使用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。

从8升级。X到11。x及以上图表版本

如果你是从8升级。X到11。x及以上的图表版本,请记住删除现有的PostgreSQL statfulset之前由于PostgreSQL子图的突破性变化而升级图表。

kubectl delete statfulsets -postgresql


一旦有了新的图表版本,就可以升级部署。

升级单节点

  1. 使用以下命令进行升级。

    单独的节点
    头盔升级artifactory——命名空间artifactory jfrog/artifactory
  2. 如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照以下说明执行g设置当前密码。

    POSTGRES_PASSWORD=$(kubectl get secret -n  -postgresql -o jsonpath="{.data. path ")Postgresql-password}" | base64——decode)
  3. 通过传递先前自动生成的秘密来升级版本。

     jfrog/artifactory—set postgresql。postgresqlPassword=${POSTGRES_PASSWORD}——namespace 

    这将在现有部署上应用任何配置更改。

HA升级

  1. 使用以下命令进行升级。

    命名空间artifactory-ha jfrog/artifactory-ha
  2. 如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照以下说明执行g设置当前密码。

    POSTGRES_PASSWORD=$(kubectl get secret -n  -postgresql -o jsonpath="{.data. path ")Postgresql-password}" | base64——decode)
  3. 通过传递先前自动生成的秘密来升级版本。

    设置postgresql.postgresqlPassword=${POSTGRES_PASSWORD}

    这将在现有部署上应用任何配置更改。

Windows升级

迁移是Windows安装的手动过程。下面的步骤还包括复制目录和运行迁移脚本

确保使用正在运行Artifactory的用户在服务器上运行所有命令。

  1. 停止当前服务器。

    cd %ARTIFACTORY_HOME%\bin artifactory.bat停止

    如果您将Artifactory服务作为进程运行,请从Services中停止该服务。按Windows键+R,输入services。msc访问服务。

  2. 提取压缩归档文件的内容,将其移动到新创建的jfrog\artifactory文件夹中,然后转到新文件夹。

    mkdir jfrog move jfrog-artifactory-- jfrog\artifactory
  3. 设置你的ARTIFACTORY_HOMEJFROG_HOME变量。
    请注意:ARTIFACTORY_HOME美元变量指向您现有的安装,而JFROG_HOME美元变量指向新安装。

    在设置ARTIFACTORY_HOMEJFROG_HOME变量,确保使用Windows短名称或转义空间。有关更多信息,请参见在这里

    设置ARTIFACTORY_HOME=<当前Artifactory安装路径>设置JFROG_HOME=< jfrog文件夹路径>设置JF_PRODUCT_HOME=%JFROG_HOME%/ Artifactory
  4. 将目录从当前路径复制到新路径。如果目标目录存在,则忽略。

    强制性的措施

    # Artifactory数据mkdir %JFROG_HOME%\ Artifactory \var\data\ Artifactory xcopy %ARTIFACTORY_HOME%\data %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%\ Replicator目录将为空mkdir %JFROG_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%\ Artifactory \var\etc\ Artifactory /E /q # Access config mkdir %JFROG_HOME%\ Artifactory \var\etc\ Access xcopy%ARTIFACTORY_HOME%\access\etc %JFROG_HOME%\artifactory\var\etc\access /E /q # Replicator config #注意:如果您从未使用过artifactory Replicator #,您的%ARTIFACTORY_HOME%\ Replicator \etc目录将为空mkdir %JFROG_HOME%\artifactory\var\etc\ Replicator xcopy %ARTIFACTORY_HOME%\ Replicator \etc %JFROG_HOME%\artifactory\var\etc\ Replicator /E /q # master。key 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的用户。#如果您执行了之前的所有步骤,则可以跳过此步骤。删除带有旧链接的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


    可选步骤

    #人工备份(可选)mkdir %JFROG_HOME%\ Artifactory \var\backup\ Artifactory xcopy %ARTIFACTORY_HOME%\backup %JFROG_HOME%\ Artifactory \var\backup\ Artifactory /E /q # Access备份(可选)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 % \复制因子\日志%JFROG_HOME%\artifactory\var\log\replicator /E /q #从当前路径复制特定文件到新路径。
  5. 对于HA安装,替换%中的任何相对路径ARTIFACTORY_HOME % \等\ha-node.properties具有绝对路径的文件。

    例如:
    #相对路径artifactory.ha.dataartifactory.ha.data.dir=\var\opt\jfrog\artifactory-ha
  6. 使用与当前Artifactory安装中相同的权限运行迁移脚本。根据新的文件系统布局,该脚本将复制并转换当前配置为新的配置格式。

    cd %JFROG_HOME%\artifactory\app\bin migration .bat

    迁移脚本只迁移配置值。在Artifactory 6中添加到配置文件中的任何注释。不会迁移X安装。

  7. 通过查看以下文件,检查迁移是否成功完成:
    1. 迁移日志% JFROG_HOME % \ artifactory \ var \ \ migration.log日志

    2. system.yaml配置% JFROG_HOME % \ artifactory \ var \ etc \ system.yaml
      这个新创建的文件将以新的格式包含您当前的自定义配置。

    3. 管理Artifactory。

      % JFROG_HOME % \ artifactory \ app \ bin \ artifactory.bat开始|停止

      防火墙警报第一次人工Windows安装

      在启动Artifactory时,您可能会收到一些防火墙异常消息。选择专用网络并允许访问继续工作。

      要将Artifactory安装为Windows服务,请遵循以下步骤在这里

  8. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

    如果您的Artifactory 6.x配置了反向代理或负载均衡器,您将需要创建新的反向代理配置并更新您的反向代理设置。
    您可以通过访问升级后的Artifactory服务器UI(默认情况下)生成新的配置模板http://localhost:8082/ui/),浏览至
    管理>人工>常规> HTTP设置调整你的反向代理设置并生成一个新的配置模板。看到反向代理设置


  9. 检查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模式迁移,这可能会导致短暂的停机时间。

当从7号工艺品升级时。X到7.x, your metadata will also be migrated automatically. For more information, seeJFrog平台中的元数据迁移

查看新的指标和趋势

当升级到Artifactory 7.11。x,你需要任务控制4.6。X能够使用新的指标和趋势。

支持以下升级方式:

Linux Archive升级

  1. 以root用户登录。

  2. 停止当前服务器。

    停止Artifactory
    cd $JFROG_HOME/artifactory/app/bin ./artifactoryctl stop . cd
  3. 导出JFrog变量。

    Export JFROG_HOME=<您的JFrog主目录,例如/opt/ JFrog > Export JF_NEW_VERSION=<例如/opt/ JFrog /artifactory-7.x>



  4. 提取压缩归档文件的内容并转到提取的文件夹。

    解压
    Tar -xvf jfrog-artifactory---linux. Tar .gz
  5. 替换现有的美元JFROG_HOME / artifactory /应用程序用新的应用程序文件夹中。

    升级
    #删除应用rm -rf $JF_NEW_VERSION/app $JFROG_HOME/ app #复制新应用cp -r $JF_NEW_VERSION/app $JFROG_HOME/artifactory #删除提取的新版本rm -rf $JF_NEW_VERSION chown -r artifactory:artifactory /opt/jfrog/artifactory/app
  6. 如果Artifactory在以前的版本中是作为服务安装的,请将此版本也作为服务安装。

    当较早的版本作为服务安装时,重要的是将新版本也作为服务更新。否则,重新启动服务器可能会导致出现旧版本的Artifactory。

    cd $JFROG_HOME/artifactory/app/bin ./installService.sh
  7. 管理Artifactory。

    $ JFROG_HOME / artifactory / app / bin / artifactoryctl开始| |停止检查
  8. 从浏览器访问Artifactory: http://SERVER_HOSTNAME:8082/ui/。例如,在您的本地机器上:http://localhost:8082/ui/

  9. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

RPM升级

  1. 停止当前服务器。

    维修停机
  2. 在Red Hat兼容的Linux发行版上,以根用户的身份将Artifactory作为服务安装。

    Yum -y install jfrog-artifactory--.rpm
  3. 管理Artifactory。

    服务人工启动/停止
  4. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

  5. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

码头工人升级

  1. 使用本地Docker命令停止和删除Artifactory。

    例如
    Docker停止artifactory
  2. 将路径设置为当前Artifactory主目录,并确保正确设置了目录权限。

    export ARTIFACTORY_HOME=<挂载到当前Artifactory数据目录的路径> chown -R 1030:1030 $ARTIFACTORY_HOME
  3. 启动Artifactory容器

    docker运行——name artifactory- v $ARTIFACTORY_HOME:/var/opt/jfrog/artifactory -d -p 8081:8081 -p 8082:8082 release -docker.jfrog.io/jfrog/artifactory-:最新版本
  4. 从浏览器访问Artifactory:http://SERVER_主机名: 8082 / ui例如,在您的本地机器上:http://localhost:8082/ui/
  5. 检查人工日志。

    Docker日志-f artifactory

Docker组件升级

  1. 停止当前服务器。

    Docker-compose -p rt stop
  2. 提取压缩归档文件的内容并转到提取的文件夹。

    CD artifactory--

    的内容.env文件在之前的安装中新建.env此存档中的文件不复制版本,因为这将影响升级。

  3. R联合国的config.sh脚本设置具有所需所有权的文件夹。

    。/ config.sh
  4. 管理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。使用- docker-compose-p rt-postgres -f docker-compose-postgres-10-13v。使用- docker-compose-p rt-postgres -f docker-compose-postgres。-d docker-compose -p rt up -d docker-compose -p rt ps docker-compose -p rt down
  5. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

  6. 检查人工日志。

    $ROOT_DATA_DIR/var/log/console.log . tail -f

Debian升级

  1. 停止当前服务器。

    维修停机
  2. 将Artifactory作为服务安装在兼容的Linux发行版上,以root用户的身份。

    运行安装
    DPKG -i jfrog-artifactory--.deb
  3. 管理Artifactory。

    服务人工启动/停止
  4. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/例如,在您的本地机器上:http://localhost:8082/ui/

  5. 检查人工日志。

    $JFROG_HOME/artifactory/var/log/console.log . tail

执掌升级

一旦有了新的图表版本,就可以升级部署。

升级单节点

  1. 使用以下命令进行升级。

    单独的节点
    头盔升级artifactory——命名空间artifactory jfrog/artifactory
  2. 如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照以下说明执行g设置当前密码。

    POSTGRES_PASSWORD=$(kubectl get secret -n  -postgresql -o jsonpath="{.data. path ")Postgresql-password}" | base64——decode)
  3. 通过传递先前自动生成的秘密来升级版本。

     jfrog/artifactory—set postgresql。postgresqlPassword=${POSTGRES_PASSWORD}——namespace 

    这将在现有部署上应用任何配置更改。

HA升级

升级路径取决于用于安装Artifactory HA的Artifactory helm图。您必须使用与安装人工HA相同的图表。

使用人工图进行HA升级
  1. 使用以下命令进行升级。

    Helm升级artifactory——namespace artifactory-ha jfrog/artifactory
  2. 如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照以下说明执行g设置当前密码

    POSTGRES_PASSWORD=$(kubectl get secret -n  -postgresql -o jsonpath="{.data. path ")Postgresql-password}" | base64——decode)
  3. 通过传递先前自动生成的秘密来升级版本。

    设置postgresql.postgresqlPassword=${POSTGRES_PASSWORD}

    这将在现有部署上应用任何配置更改。

HA升级使用artifactory-ha图
  1. 使用以下命令进行升级。

    命名空间artifactory-ha jfrog/artifactory-ha
  2. 如果安装Artifactory时没有向postgresql提供值。postgresqlPassword(即,如果密码是自动生成的),按照以下说明执行g设置当前密码

    POSTGRES_PASSWORD=$(kubectl get secret -n  -postgresql -o jsonpath="{.data. path ")Postgresql-password}" | base64——decode)
  3. 通过传递先前自动生成的秘密来升级版本。

    设置postgresql.postgresqlPassword=${POSTGRES_PASSWORD}

    这将在现有部署上应用任何配置更改。

Windows升级

  1. 停止当前服务器。

    停止Artifactory
    cd %JFROG_HOME%\artifactory\app\bin artifactory.bat
  2. 提取压缩归档文件的内容并转到提取的文件夹。


  3. 替换现有的% JFROG_HOME % \ app用新的应用程序文件夹中。

    升级
    #导出变量以简化命令,这里提供的示例路径SET %JFROG_HOME%=\myHome\jfrog SET %JF_NEW_VERSION%=\myHome\artifactory-7。#删除应用程序rmdir % jfro_home %\artifactory\app #复制新应用程序副本%$JF_NEW_VERSION%\app %$JFROG_HOME%\artifactory #删除提取的新版本rmdir %JF_NEW_VERSION%
  4. 管理Artifactory。

    % JFROG_HOME % \ artifactory \ app \ bin \ artifactory.bat开始|停止

    防火墙警报第一次人工Windows安装

    在启动Artifactory时,您可能会收到一些防火墙异常消息。选择专用网络并允许访问继续工作。

  5. 从浏览器访问Artifactory:http://SERVER_HOSTNAME:8082/ui/.例如,在您的本地机器上:http://localhost:8082/ui/

  6. 检查人工日志。

    日志类型% JFROG_HOME % \ artifactory \ var \ \ console.log

启用TLS 1.0和1.1与旧数据库的连接

人工版本7.25.5以后包括OpenJDK版本11.0.11及更高版本。从OpenJDK 11.0.11起默认禁用TLS 1.0和TLS 1.1。如果数据库版本不支持TLS 1.2, Artifactory启动将失败。

如果无法将数据库升级到支持TLS 1.2或更高版本的版本,请执行以下步骤来运行Artifactory:

  1. 下载java。安全文件启用了TLS 1.0和1.1的。


  2. 创建目录,$ {JFROG_HOME} / artifactory /var/引导/ artifactory / java

    mkdir -p ${JFROG_HOME}/artifactory/var/bootstrap/artifactory/java
  3. 复制java。安全文件into$ {JFROG_HOME} / artifactory /var/引导/ artifactory / java。

  4. 为目录提供适当的权限。

    chmod 755 ${JFROG_HOME}/artifactory/var/bootstrap/artifactory/java/java.security . chmod 755

    人工启动需要现有java的备份。安全文件和自定义java引导。安全进入$ {JFROG_HOME} / artifactory / app /第三方/ java / conf /安全文件夹中。

为Helm安装配置Java安全文件

  1. 创建以下本地目录。

    Mkdir -p java/configmap
  2. 下载java。安全文件启用了TLS 1.0和1.1的。


  3. 复制java。安全文件tojava / configmap

  4. 运行以下命令创建自定义配置映射。更多信息请参考使用配置映射

    ——from-file=java/configmap/java.security
  5. 将以下自定义配置映射传递到您的Helm安装。更多信息请参考使用配置映射

    artifactory: preStartCommand: "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 customvolumounts: | - name: java-security-config mountPath: /tmp/java/java. conf "security子路径:java.security

升级企业高可用性集群

本节描述升级Artifactory企业高可用性集群的过程。由于您的集群包含多个节点,您可以完成升级过程不会产生任何停机时间到组织正在使用的Artifactory服务。

升级前,请确认当前使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。

升级步骤

升级到最新版本包括以下三个阶段:

  1. 升级第一个节点。
  2. 升级其他节点。
  3. 验证HA的安装和配置。

想停止使用NFS?

升级完成后停止使用NFS共享(可选),请参阅从NFS协议迁移数据迁移到替代存储。

在JFrog路由器中使用NFS数据文件夹

如果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兼容性,因此所有节点都是平等的,不再需要设置主节点和辅助节点。
要使用这个新功能,请添加“task”亲和力”:“任何到您想要包含在集群中的节点人工系统YAML

升级时,仍然设置了主节点和辅助节点。

您可以将这些更改为taskAffinity:任何如下:

node: haEnabled: true taskAffinity: any

并注释掉或删除以下内容:

#主:真

升级第一个节点

  1. 从负载平衡器中删除第一个节点。所有请求都将被定向到其他节点。检查$ HOME /日志/ request.logARTIFACTORY_URL / api /任务(搜索“running”)以确保Artifactory完全处于非活动状态。
  2. 根据安装类型的说明继续升级。
  3. 启动第一个节点。它将认识到HA集群节点并非都运行相同版本的Artifactory,因此,系统将仅限于允许上传和下载。

    任何执行其他操作(如更改DB模式、修改权限、更改存储库配置等)的尝试都将被严格阻止。这个限制将持续到所有集群节点再次运行相同的版本。

    版本不一致会产生异常

    运行不同版本的HA集群节点会产生异常。这些可以在日志文件中看到,反映了升级过程中的临时不一致状态。这是正常的,应该忽略它,直到所有集群节点再次运行相同的版本。

  4. 从版本6升级。X和7
    调整你的反向代理设置更新你的负载均衡器配置以使用新的JFrog平台URLhttp:// <主机名>:8081

    作为从6升级到Artifactory的一部分,您可能需要更新自定义URL库。X到7。记住要使用一个在所有情况下都能正常工作的URL;例如:https://mydomain,如果反向代理也更新为使用Artifactory REST API端口和Router端口,则此设置是正确的。

  5. 将第一个节点放回负载均衡器。

升级新增节点

每一个额外的节点在HA集群中,请执行以下操作:

  1. 从负载平衡器中删除该节点,这样所有请求都被定向到其他节点。检查$ HOME /日志/ request.log和ARTIFACTORY_URL/api/tasks(搜索“running”)以确保Artifactory完全不活动。
  2. 根据安装类型的说明继续升级。

  3. 启动额外的节点。
  4. 将额外的节点添加回负载均衡器。
  5. 对每个附加节点重复此过程。

检查安装

在启动每个额外节点后,我们建议检查system.yamlbinarystore.xml文件(下JFROG_HOME / artifactory / var / etc /美元),以确保正确配置

验证HA安装和配置

完成HA集群升级后,可以使用以下测试验证集群是否已正确安装和配置。

  1. 直接访问您刚刚配置的服务器的Artifactory UI
  2. 管理模块转到服务|人工|系统日志查看日志并验证您是否看到了的条目HA节点ID。
  3. 模块导航栏的底部还应该表明您正在使用Enterprise许可证运行。如果出现错误,您将在页头中看到错误消息。
  4. 通过您的负载平衡器访问Artifactory并登录管理
  5. 管理模块转到监控|服务状态。选择后,将显示下表,其中包括集群中所有Artifactory节点的详细信息。

  6. 管理模块下一般|设置验证自定义URL库字段被正确配置为负载均衡器的URL。


  • 没有标签
版权所有©2023 JFrog Ltd.