harbor如何修改mysql_Harbor升级和数据库迁移手册

Harbor升级和数据库迁移手册

当升级一个已经存在的Harbor实例到新版本时,需要迁移数据库数据。参考查看数据库发生了哪些变化,如果有的话,就需要进行数据库迁移操作,因为迁移可能会改变数据库模式,所以在任何数据迁移操作之前,都一定要先备份数据库。

如果你是第一次安装habor,或者新安装的数据库的版本和之前的数据库版本一致,那么你不需要做任何数据库的迁移操作。

注意:从v1.2开始,你需要使用发布版本号做为迁移镜像的tag,新版本不再使用“latest”这个tag了。

在任何数据操作之前,都必须要备份数据。

升级Harbor和迁移数据

1.登到harbor所在的服务器上,如果harbor还在运行,就停止并删除对应的Harbor实例。

cd harbor

docker-compose down

2.备份harbor当前的文件,确保在需要的时候可以回滚到当前的这个版本。

cd..

mv harbor /my_backup_dir/harbor

4.在更新harbor之前,先做数据库迁移操作。这个迁移工具以docker镜像的方式提供,所以你需要从docker hub上pull镜像。在下面的命令里,用harbor的发布版本号来替换[tag]:

docker pull vmware/harbor-db-migrator:[tag]

5.备份数据库到一个目录,比如/path/to/backup。如果目录不存在的话,你需要自己创建,并且数据库的用户名和密码需要通过环境变量“DB_USR”和“DB_PWD”来提供。

docker run -ti --rm -e DB_USR=root -e DB_PWD=xxxx -v/data/database:/var/lib/mysql -v /path/to/backup:/harbor-migration/backupvmware/harbor-db-migrator:[tag] backup

6.更新数据库模式并迁移数据:

docker run -ti --rm -e DB_USR=root -e DB_PWD=xxxx -v/data/database:/var/lib/mysql vmware/harbor-db-migrator:[tag] up head

7.解压新的harbor安装包,并切换到工作目录./harbor中去。通过修改harbor.cfg来配置harbor。通过修改harbor.cfg来配置harbor,你可能需要参考第二步操作时备份的配置文件。参考获取更多的信息。由于新版本的harbor.cfg配置文件的格式和内容可能会发生改变,所以不能直接从之前的版本来复制harbor.cfg配置文件。

重要:如果你更新harbor之前使用的认证方式为LDAP/AD,那边在你加载启动新版本的harbor之前,必须要确保harbor.cfg中的auth_mode配置成ldap_auth,否则,更新之后用户将无法登陆。

为了帮助将harbor.cfg配置文件从v0.5.0版本迁移到v1.1.x版本,提供了一个脚本,描述如下。对于其他版本的配置文件,需要手动迁移harbor.cfg文件。

cd harbor

./upgrade --source-loc source_harbor_cfg_loc--source-version 0.5.0 --target-loc target_harbor_cfg_loc --target-version1.1.x

注意:在执行这个脚本之后,要重新检查一遍,确保harbor.cfg中的配置都是正确的。如果有需要的话,你可以修改harbor.cfg。

8.切换到./harbor目录,执行./install.sh脚本安装新版本harbor实例。如果你安装harbor选择其他组件,比如Notary或者Clair,可参考获取更新信息。

升级后回滚

不管什么原因,如果你想回滚到之前的harbor版本,可以参考如下步骤:

1.停harbor服务。

cd harbor

docker-compose down

2.从备份文件/path/to/backup中恢复数据库。

docker run -ti --rm -e DB_USR=root -e DB_PWD=xxxx -v/data/database:/var/lib/mysql -v /path/to/backup:/harbor-migration/backupvmware/harbor-db-migrator:[tag] restore

3.删除当前的harbor实例。

rm -rf harbor

4.恢复老版本的harbor文件。

mv /my_backup_dir/harbor harbor

5.使用之前的配置重启harbor服务。

如果之前版本是通过发布的二进制包安装的:

cdharbor

./install.sh

注意:如果你安装harbor选择其他组件,比如Notary或者Clair,可参考获取更新信息。

如果之前的harbor版本是通过源码安装的:

cdharbor

docker-compose up --build -d

迁移工具参考

使用help命令显示迁移工具帮助信息:

docker run --rm -e DB_USR=root -e DB_PWD=xxxxvmware/harbor-db-migrator:[tag] help

使用test命令测试mysql连接:

docker run --rm -e DB_USR=root -e DB_PWD=xxxx -v/data/database:/var/lib/mysql vmware/harbor-db-migrator:[tag] test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值