上篇文章我们展示了RPM的升级方式比较简单,这次我们换一种方式操作比较繁琐,那我们直接开始吧。
先关闭防火墙
systemctl stop firewalld.service && systemctl disable firewalld.service #设置selinux setenforce 0 #得到Permissive状态就可以了 getenforce |
小编采用的环境
centos7.7.1908、postgresql-11、 Artifactory-6.14.4
Artifactory安装(6.14.4)
1.查看安装需求:https://www.jfrog.com/confluence/display/RTF6X/System+Requirements
参考升级文档:
https://www.jfrog.com/confluence/display/JFROG/Upgrading+Artifactory
2.安装JDK,配置环境变量
yum install -y java-1.8.0-openjdk #查看bin目录位置 rpm -ql java-1.8.0-openjdk |
复制,并粘贴到java.sh中
设置JAVA_HOME
vim/etc/profile.d/java.sh |
重新加载环境变量
source /etc/profile |
3.找到下载官网:
https://jfrog.com/download-legacy/?product=artifactory&version=6.14.4
4.选择企鹅,下载安装包
5.对安装包解压,在这里解压到/opt下
6.将 Artifactory 作为服务安装,执行以下命令
/opt/artifactory-pro-6.14.4/bin/installService.sh |
7.启动Artifactory,访问http://192.168.5.159:8081,加入license
systemctl start artifactory.service |
8.停止服务,在postgresql数据库创建database,名为artdb
参考链接:postgresql安装
# 创建artifactory用户 CREATE USER artifactory WITH PASSWORD 'password'; #创建artidb库 CREATE DATABASE artdb WITH OWNER=artifactory ENCODING='UTF8'; #授权库给用户 GRANT ALL PRIVILEGES ON DATABASE artdb TO artifactory; |
9.配置外部数据库
#复制postgresql.properties到/etc/opt/jfrog/artifactory下 cp /opt/artifactory-pro-6.14.4/misc/db/postgresql.properties /etc/opt/jforg/artifactory #设置文件所有者 chown artifactory:artifactory /etc/opt/jfrog/artifactory/postgresql.properties #修改postgresql.properties文件 vi /etc/opt/jfrog/artifactory/postgresql.properties #如下图所示 |
修改外部数据库文件名,因为之前启动过所以需要重写,输入y就可以
#修改文件名为db.properties mv /etc/opt/jfrog/artifactory/postgresql.properties /etc/opt/jfrog/artifactory/db.properties |
10.上传postgresql驱动到/opt/artifactory-pro-6.14.4/tomcat/lib目录下如图所示:
#修改文件所有者 chown artifactory:artifactory postgresql-9.4-1202.jdbc4.jar |
11.重新启动服务,查看服务状态
systemctl start artifactory.service //查看状态,success则启动成功 systemctl status artifactory.service |
Artifactory升级(6.14.4->7.37.16)
参考链接:
https://www.jfrog.com/confluence/display/JFROG/Upgrading+Artifactory#UpgradingArtifactory-LinuxArchiveUpgrade
1.注意此次升级未关联Xray!在此版本下加入制品:如图所示
2.升级前需要给系统备份:选择Admin,然后选择Import & Export | System
参考链接:
https://www.jfrog.com/confluence/display/RTF6X/Importing+and+Exporting
选择一个临时目录保存备份,在此我选择在根目录的jfrog目录,选择Export,注意:如果升级未成功,可以新安装一个环境将备份Import
3.备份成功后停掉服务。
systemctl stop artifactory |
4.下载7.37.16的安装包,6版本采用解压包方式则7版本也一样
5.将压缩包解压
#将压缩包解压到/opt/jfrog下 tar -zxvf jfrog-artifactory-pro-7.37.16-linux.tar.gz /opt/jfrog #修改解压文件夹名为artifactory mv /opt/jfrog/artifactory-pro-7.37.16 /opt/jfrog/artifactory |
6.设置ARTIFACTORY_HOME和JFROG_HOME变量
注意:$ARTIFACTORY_HOME变量指向现有安装也就是升级前6的版本,$JFROG_HOME变量指向新安装。
#小编在此的安装路径为以下 export ARTIFACTORY_HOME=/opt/artifactory-pro-6.14.4/ export JFROG_HOME=/opt/jfrog export JF_PRODUCT_HOME=$JFROG_HOME/artifactory |
7.将当前目录复制到新路径,比如说一些配置文件等等
强制步骤
# Artifactory data mkdir -p $JFROG_HOME/artifactory/var/data/artifactory/ cp -rp $ARTIFACTORY_HOME/data/. $JFROG_HOME/artifactory/var/data/artifactory/ # Access data mkdir -p $JFROG_HOME/artifactory/var/data/access/ cp -rp $ARTIFACTORY_HOME/access/data/. $JFROG_HOME/artifactory/var/data/access/ # Replicator data ##如果你没有用过replicator,那么你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/ # Access config mkdir -p $JFROG_HOME/artifactory/var/etc/access/ cp -rp $ARTIFACTORY_HOME/access/etc/. $JFROG_HOME/artifactory/var/etc/access/ # Replicator config # 注意:如果你没有用过replicator,那么你replicator文件夹下则是空的,无需复制 mkdir -p $JFROG_HOME/artifactory/var/etc/replicator/ cp -rp $ARTIFACTORY_HOME/replicator/etc/. $JFROG_HOME/artifactory/var/etc/replicator/ # master.key mkdir -p $JFROG_HOME/artifactory/var/etc/security/ cp -p $ARTIFACTORY_HOME/etc/security/master.key $JFROG_HOME/artifactory/var/etc/security/master.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 #or,如果是以服务启动的则复制以下,在小编安装中是服务启动的 cp -rp $ARTIFACTORY_HOME/etc/default $JFROG_HOME/artifactory/var/work/old/artifactory.default # 如果使用的是外置数据库则需要复制数据库所对应驱动,在此使用postgresql驱动: #postgresql-9.4-1202.jdbc4.jar mkdir -p $JFROG_HOME/artifactory/var/bootstrap/artifactory/tomcat/lib cp -rp $ARTIFACTORY_HOME/tomcat/lib/postgresql-9.4-1202.jdbc4.jar $JFROG_HOME/artifactory/var/bootstrap/artifactory/tomcat/lib/postgresql-9.4-1202.jdbc4.jar # 删除带有旧链接的logback.xm rm -f $JFROG_HOME/artifactory/var/etc/artifactory/logback.xml rm -f $JFROG_HOME/artifactory/var/etc/access/logback.xml #移动 Artifactory logs mkdir -p $JFROG_HOME/artifactory/var/log/archived/artifactory/ cp -rp $ARTIFACTORY_HOME/logs/. $JFROG_HOME/artifactory/var/log/archived/artifactory/ # 移动配置文件,注意: 以下命令是从6.x 到 7.5.x 以上版本的 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 |
可选步骤:
# Artifactory backup (可选) mkdir -p $JFROG_HOME/artifactory/var/backup/artifactory/ cp -rp $ARTIFACTORY_HOME/backup/. $JFROG_HOME/artifactory/var/backup/artifactory/ # Access backup (可选) 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/ # Access logs (可选) 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/archived/replicator/ |
8.运行迁移脚本
注意:验证复制的目录和复制的内容是否拥有正确的所有者。
默认为artifactory:artifactory,也可以自定义用户:组,但是一定要确保该目录具有相同的用户和组。
#将整个目录统一权限 chown -R root:root/opt/jfrog #运行迁移脚本 cd $JFROG_HOME/artifactory/app/bin ./migrate.sh |
9.通过查看以下文件来检查迁移是否已成功完成
cat $JFROG_HOME/artifactory/var/log/migration.log cat $JFROG_HOME/artifactory/var/etc/system.yaml |
10.如果大家是跟着小编以服务形式安装的,那就需要经过以下步骤
cd $JFROG_HOME/artifactory/app/bin ./installService.sh |
11.启动服务,访问http://192.168.5.159:8082,查看制品情况
systemctl start artifactory.service |
好了,今天的学习内容结束了,大家多多关注哦!