从1.6以下版本升级
升级前,请确认您使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。
从1.6以下的版本升级。X,您首先需要升级到版本1.6。的X描述升级发行版x文档,然后继续从版本1.6升级到2.x。
从版本1.6升级到2.x
升级前,请确认您使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。
JFrog发行版本v2。x只兼容JFrog Artifactory v7.x。要升级,必须先升级安装JFrog Artifactory 7.x.
发行版2.x中引入了几个新概念,改进安装和定制流程.
支持以下升级方式:
交互式脚本升级(推荐)
安装程序脚本适用于所有支持的升级方法(RPM, Debian和Docker Compose)。它提供了一种交互式的方式来安装分发版及其依赖项。
- 下载分布
停止服务。
Docker—停止并移除旧容器分发停止docker ps -a——format '{{。命名}}' | grep ^distribution_* | xargs docker rm -f
LinuxCD /opt/jfrog/distribution/scripts ./distribution.sh stop .sh停止
解压缩归档文件的内容,并转到解压缩文件夹。
Tar -xvf jfrog-distribution-<版本>-
.tar.gz CD jfrog-distribution-<版本>- .tar.gz .env文件包含在Docker-Compose存档中
此.env文件由docker-compose并在安装和升级期间进行更新。
注意,一些操作系统默认情况下不显示点文件。如果对文件做了任何更改,请记得在升级前进行备份。
运行安装程序脚本。
请注意:脚本将提示您一系列强制输入,包括jfrourl(自定义基URL)而且joinKey.组成。/ config.sh
RPM / DEB。/ install.sh
通过检查以下文件,检查迁移是否成功完成:
迁移日志:
美元JFROG_HOME /分销/ var / log / migration.log
文件。system.yaml配置:
美元JFROG_HOME /分销/ var / etc / system.yaml
这个新创建的文件将以新格式包含您当前的自定义配置。
启动和管理分发服务。
systemd操作系统Systemctl start|stop distribution.service
systemv操作系统服务分发start|stop
码头工人组成cd jfrog-distribution-<版本>-compose#从发行版本2.5开始。x Redis已经移动到它自己的合成文件,这需要在启动其他服务之前启动docker-compose -p distribution-redis -f docker-compose- Redis。yaml up -d #从2.5开始。x,在启动其他服务之前,需要先启动PostgreSQL。Docker-compose -p distribution-postgres -f Docker-compose -postgres 9-6-10v。Yaml向上-d docker-compose -p分布向上-d docker-compose -p分布ps docker-compose -p分布向下
- 从浏览器访问分布:
http:// < jfrogUrl > / ui /
,去分布选项卡中的应用程序模块。 检查分发日志。
Linuxtail -f $产品目录结构/var/log/console.log . txt . txt
手动升级RPM
RPM安装捆绑了Distribution及其所有依赖项。它是作为原生RPM包提供的,其中Distribution及其依赖项必须分别安装。如果您正在自动化安装,请使用此选项。
- 下载分布.
停止当前服务器。
CD /opt/jfrog/distribution/scripts ./distribution.sh stop .sh停止
解压缩归档文件的内容,并转到解压缩文件夹。
CD jfrog-distribution-<版本>-rpm. Tar .gz
在Red Hat兼容的Linux发行版上,作为根用户将分发作为服务安装。
Yum -y install ./distribution/distribution.rpm
通过检查以下文件,检查迁移是否成功完成:
迁移日志:
美元JFROG_HOME /分销/ var / log / migration.log
文件。system.yaml配置:
美元JFROG_HOME /分销/ var / etc / system.yaml
这个新创建的文件将以新格式包含您当前的自定义配置。
- 设置Artifactory连接细节。
分发需要一个工作的Artifactory服务器和一个合适的许可证。到Artifactory的分发连接需要2个参数:- jfrogUrl- JFrog Artifactory所在机器的URL,或指向它的负载均衡器。建议使用DNS名称,不要直接使用ip地址。例如:”http://jfrog.acme.com或http://10.20.30.40:8082”
把它设置在共享配置部分的美元JFROG_HOME /分销/ var / etc / system.yaml
文件。 - join.key-这是Artifactory注册和认证分发服务器所需的“秘密”密钥。
你可以取回ArtifactoryjoinKey
的JPD UI (join Key)管理模块|安全模块|设置|接入键.
设置join.key您的Artifactory服务器使用共享配置部份美元JFROG_HOME /分销/ var / etc / system.yaml
文件。
- jfrogUrl- JFrog Artifactory所在机器的URL,或指向它的负载均衡器。建议使用DNS名称,不要直接使用ip地址。例如:”http://jfrog.acme.com或http://10.20.30.40:8082”
确保第三方服务正在运行。
PostgreSQL
如果您已经安装了打包的PostgreSQL数据库1。X,你可以继续使用它。使用以下命令启动和停止PostgreSQL服务。
请注意:./distribution.sh停止所有
命令,用于分发1。X版本不能在2.x版本中使用。Service postgresql-9.6 start|stop|status
复述,
这将从上一个安装中可用。使用以下命令启动和停止服务。
红帽/ CentOS服务redis start|stop|status
Debian / UbuntuService redis-server start|stop|status
启动并管理分发。
systemd操作系统Systemctl start|stop distribution.service
systemv操作系统服务分发start|stop
- 从浏览器访问分布:http:// < jfrogUrl > / ui /,去分布选项卡中的应用程序模块。
检查分发日志。
tail -f $JFROG_HOME/distribution/var/log/console.log
手动升级Debian
Debian升级捆绑了Distribution及其所有依赖项。它是作为原生Debian包提供的,其中Distribution及其依赖项必须分别安装。如果您正在自动化安装,请使用此选项。
- 下载分布.
停止当前服务器。
CD /opt/jfrog/distribution/scripts ./distribution.sh stop .sh停止
解压缩归档文件的内容,并转到解压缩文件夹。
CD jfrog-distribution-<版本>-deb. Tar .gz
在与Debian兼容的Linux发行版上,作为根用户将Distribution安装为服务。
运行安装DPKG -i ./distribution/distribution.deb
通过检查以下文件,检查迁移是否成功完成:
迁移日志:
美元JFROG_HOME /分销/ var / log / migration.log
文件。system.yaml配置:
美元JFROG_HOME /分销/ var / etc / system.yaml
这个新创建的文件将以新格式包含您当前的自定义配置。
- 设置Artifactory连接细节。
分发需要一个工作的Artifactory服务器和一个合适的许可证。到Artifactory的分发连接需要2个参数:- jfrogUrl- JFrog Artifactory所在机器的URL,或指向它的负载均衡器。建议使用DNS名称,不要直接使用ip地址。例如:”http://jfrog.acme.com或http://10.20.30.40:8082”
把它设置在共享配置部分的美元JFROG_HOME /分销/ var / etc / system.yaml
文件。 - join.key-这是Artifactory注册和认证分发服务器所需的“秘密”密钥。
你可以取回ArtifactoryjoinKey
的JPD UI (join Key)管理模块|安全模块|设置|接入键.
设置join.key您的Artifactory服务器使用共享配置部份美元JFROG_HOME /分销/ var / etc / system.yaml
文件。
- jfrogUrl- JFrog Artifactory所在机器的URL,或指向它的负载均衡器。建议使用DNS名称,不要直接使用ip地址。例如:”http://jfrog.acme.com或http://10.20.30.40:8082”
确保第三方服务正在运行。
PostgreSQL
如果您已经安装了打包的PostgreSQL数据库1。X,你可以继续使用它。使用以下命令启动和停止PostgreSQL服务。
请注意:./distribution.sh停止所有
命令,用于分发1。X版本不能在2.x版本中使用。Service postgresql-9.6 start|stop|status
复述,
这将从上一个安装中可用。使用以下命令启动和停止服务。
红帽/ CentOS服务redis start|stop|status
Debian / UbuntuService redis-server start|stop|status
启动并管理分发。
systemd操作系统Systemctl start|stop distribution.service
systemv操作系统服务分发start|stop
- 从浏览器访问分布:http:// < jfrogUrl > / ui /,去分布选项卡中的应用程序模块。
检查分发日志。
tail -f $JFROG_HOME/distribution/var/log/console.log
启动并管理分发。
服务分发start|stop
从浏览器访问分布:
http:// < jfrogUrl > / ui /
,去分布选项卡中的应用程序模块。检查分发日志。
tail -f $JFROG_HOME/distribution/var/log/console.log
Post-Upgrade步骤
升级完成后。
将发布包元数据迁移到分发服务
新的JFrog平台要求Distribution连接到单个Source Artifactory实例,作为JPD的一部分。
如果您有一个Distribution实例连接到多个Source Artifactory实例,那么使用Export和Import Release Bundle Metadata REST API命令移动到这个新的升级过程后的要求。有关更多信息,请参见升级分布.
从版本2升级。X到2.x
升级前,请确认您使用的操作系统版本为支持。看到系统需求有关操作系统支持的详细信息。
支持以下升级方式:
交互式脚本升级(推荐)
安装程序脚本适用于所有支持的升级方法(RPM, Debian和Docker Compose)。它提供了一种交互式的方式来安装分发版及其依赖项。
- 下载分布(RPM, Debian或Docker Compose)。
停止服务。
Systemd操作系统Systemctl停止分发服务
Systemv操作系统服务分发停止
Docker—停止并移除旧容器CD jfrog-distribution-
-compose docker-compose -p distribution down 解压缩归档文件的内容,并转到解压缩文件夹。安装程序脚本位于解压的文件夹中。
请注意:对于Docker Compose升级,请确保将您的自定义合并到当前的docker-compose.yaml
文件的新提取版本docker-compose.yaml
文件。Tar -xvf jfrog-distribution-<版本>-
.tar.gz CD jfrog-distribution-<版本>- .tar.gz 的内容
.env
文件到新创建的.env
此存档中的文件不需要复制版本,因为这会影响升级。运行安装程序脚本。
请注意:如果需要,脚本将提示您一系列强制输入,包括jfrogURL
(自定义基URL)而且joinKey
.组成。/ config.sh
RPM / DEB。/ install.sh
启动和管理分发服务。
systemd操作系统systemctl启动|停止
distribution.service
systemv操作系统服务分发start|stop
码头工人组成cd jfrog-distribution-<版本>-compose#从发行版本2.5开始。x Redis已经移动到它自己的合成文件,这需要在启动其他服务之前启动docker-compose -p distribution-redis -f docker-compose- Redis。yaml up -d #从2.5开始。x,在启动其他服务之前,需要先启动PostgreSQL。如果PostgreSQL 9.6.11运行use - docker-compose-p distribution-postgres -f docker-compose-postgres 9-6-10v。yaml up -d如果PostgreSQL 10.13运行use - docker-compose-p distribute -postgres- f docker-compose-postgres-10-13v。yaml up -d如果PostgreSQL 12.3运行use - docker-compose-p distribute -postgres -f docker-compose-postgres。Yaml向上-d docker-compose -p分布向上-d docker-compose -p分布ps docker-compose -p分布向下
- 从浏览器访问分布:
http:// < jfrogUrl > / ui /
,去分布选项卡中的应用程序模块。 检查分发日志。
tail -f $JFROG_HOME/distribution/var/log/console.log
手动升级RPM/Debian
下载分布(RPM或Debian)
停止当前服务器。
systemd操作系统Systemctl停止分发服务
systemv操作系统服务分发停止
解压缩归档文件的内容,并转到解压缩文件夹。
Tar -xvf jfrog-distribution-<版本>-
.tar.gz CD jfrog-distribution-<版本>- . gz 在Red Hat兼容的Linux发行版上,作为根用户将分发作为服务安装。
rpmYum -y install ./distribution/distribution.rpm
DebianDPKG -i ./distribution/distribution.deb
启动并管理分发。
systemd操作系统Systemctl start|stop distribution.service
systemv操作系统服务分发start|stop
从浏览器访问分布:http:// < jfrogUrl > / ui /,去分布选项卡中的应用程序模块。
检查分发日志。
tail -f $JFROG_HOME/distribution/var/log/console.log
Linux档案升级
停止当前服务器。
停止销售#出口变量来简化命令,设置JFROG_HOME出口JFROG_HOME =当前安装目录/ opt / jfrog cd $ JFROG_HOME /分销/ app / bin / distribution.sh停止
解压缩归档文件的内容,并转到解压缩文件夹。
解压Mv jfrog-distribution-
-linux.tar.gz /opt/jfrog/ CD /opt/jfrog tar -xf jfrog-distribution- -linux.tar.gz 更换现有的美元JFROG_HOME /分销/应用程序随着新的应用程序文件夹中。
升级export JF_NEW_VERSION=/opt/jfrog/jfrog-distribution-
-linux # Remove app rm -rf $JFROG_HOME/distribution/app # Copy new app cp -fr $JF_NEW_VERSION/app $JFROG_HOME/distribution/ # Remove extract new version rm -rf $JF_NEW_VERSION chown -r distribution:distribution /opt/jfrog/distribution/app . # 中指定的密码是否正确
requirepass
场JFROG_HOME美元/分销/ var / etc /复述/ redis.conf
(有关更多信息,请参阅和redis.password
场美元JFROG_HOME /分销/ etc / system.yaml
都是一样的。管理分配。
以分发用户身份运行以下命令。美元JFROG_HOME /分销/ app / bin / distribution.sh开始|停止
- 访问分布从您的浏览器:http:// < jfrogUrl > / ui /,去指示板选项卡中的应用程序模块。
检查分发日志。
tail -f $JFROG_HOME/distribution/var/log/console.log
执掌升级
由于突破性的变化PostgreSQL对于图表,您需要将数据库从旧数据库迁移到新数据库。
执行升级需要停机时间。
要升级分发版,您首先需要验证以下内容。
- 验证您已经将Artifactory升级到v.7x。有关更多信息,请参见执掌升级.
- 如果你使用默认的PostgreSQL (
postgresql.enabled = true
),你需要通过前面的9门。X或10.x的postgresql.image.tag
而且databaseUpgradeReady = true
;在Helm升级之前,你还需要删除PostgreSQL子图的现有状态集。x图表版本的PostgreSQL有突破性的变化。
运行执掌升级
设置以下值。
' ' ' bash $ helm upgrade distribution——set databaseUpgradeReady=true——set unifiedUpgradeAllowed=true——set postgresql。postgresqlPassword=<旧密码>——set postgresql.image。标签=<旧图像标签>——设置redis。密码=<旧密码>——设置分发。joinKey=——设置分配。jfrogUrl= --set distribution.masterKey= --set distribution.migration.enabled=true jfrog/distribution ```
将现有部署版本更新为更新版本。
负责升级分发jfrog/分发
如果安装Distribution时没有提供值
postgresql.postgresqlPassword
(密码是自动生成的),按照以下说明操作。得到了当前密码,执行如下命令。
POSTGRES_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "}" | base64——decode) 通过传递之前自动生成的秘密来升级版本。
helm upgrade
jfrog/Distribution——set postgresql.postgresqlPassword=${POSTGRES_PASSWORD}
如果安装Distribution时没有提供值
rabbitmq.rabbitmqPassword / rabbitmq-ha.rabbitmqPassword
(密码是自动生成的),按照以下说明操作。G运行以下命令设置当前密码。
RABBITMQ_PASSWORD=$(kubectl get secret -n
-rabbitmq -o jsonpath="{.data. data. "Rabbitmq-password}" | base64——decode 通过传递之前自动生成的秘密来升级版本。
helm upgrade
jfrog/distribution——set rabbitmq.rabbitmqPassword=${RABBITMQ_PASSWORD}/rabbitmq-ha.rabbitmqPassword=${RABBITMQ_PASSWORD}
- 如果安装的Distribution带有所有默认值(例如,没有用户提供的Rabbit/Postgres值),请遵循以下步骤。
- 检索所有当前密码(RabbitMQ/PostgreSQL),如上节所述。
通过传递以前自动生成的秘密来升级版本。
主升级——安装分发——命名空间分发jfrog/分发——设置rabbitmq-ha。rabbitmqPassword=
——set postgresql.post
迁移过程
推荐的迁移过程是PostgreSQL的完整数据库导出和导入。
- 阻止用户访问分发(但不关闭)。
获取服务名称
OLD_PG_SERVICE_NAME
使用下面的命令。例如:OLD_PG_SERVICE_NAME
作为< OLD_RELEASE_NAME > postgresql
.$ kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
-distribution LoadBalancer 10.111.81.201 80:31272/TCP 50m -postgresql ClusterIP 10.97.121.27 5432/TCP 50m 保存以前的密码
OLD_PG_SERVICE_NAME
或者从现有PostgreSQL的秘密中提取它。$ OLD_PASSWORD=$(kubectl get secret -n
-postgresql -o jsonpath="{.data. data. "Postgres-password}" | base64——decode) 安装带有0个副本的新发行版。
一个新的PostgreSQL pod将被部署并启动。分发吊舱将被部署,但不会启动,因为副本计数为0。
为例。$ helm install distribution-new——set replicaCount=0——set distribution。jfrogUrl=
——设置postgresql。postgresqlPassword= ——set redis。Password =< Password >——set distribution。joinKey = < JOIN_KEY > jfrog /分布 连接到新的PostgreSQL pod(您可以通过运行
Kubectl得到了豆荚
).$ kubectl exec -
bash 登录后,使用。从以前的数据库创建一个转储文件
pg_dump
,并连接到前一个PostgreSQL图表。$ pg_dump -h
-U distribution > /tmp/backup.sql . sh
运行上述命令后,应该会提示您输入密码;此密码为以前的图表密码(OLD_PASSWORD
).根据数据库的大小,这个操作可能需要一些时间。- 有了备份文件之后,就可以使用如下所示的命令恢复它。
-
$ psql -U distribution
< /tmp/backup.sql 运行上述命令后,系统将提示您输入密码;这是当前图表密码。根据数据库的大小,这个操作可能需要一些时间。
运行命令
执掌升级
提出分销问题。#示例$ helm upgrade——install distribution-new——set distribution。jfrogUrl=
——设置postgresql。postgresqlPassword= ——set redis。Password =< Password >——set distribution。joinKey= ——设置分配。migration.enabled=true jfrog/distribution 运行以下命令删除旧的发行版部署和Helm发行版。
helm delete
- 从浏览器访问分布:
http:// < jfrogUrl > / ui /
,然后去安全与合规选项卡中的应用程序模块。 检查你部署的头盔版本的状态。
舵位分布
分发版现在应该可以使用了。
第三方应用
PostgreSQL
如果您已经安装了打包的PostgreSQL数据库1。X,你可以继续使用它。使用以下命令启动和停止PostgreSQL服务。
请注意:./distribution.sh停止所有
命令,用于分发1。X版本不能在2.x版本中使用。
Service postgresql-9.6 start|stop|status
复述,
这将从上一个安装中可用。使用以下命令启动和停止服务。
服务redis start|stop|status
Service redis-server start|stop|status