gitlab备份、恢复、迁移、升级

小灰灰 2022-06-10 10:55 314阅读 0赞

欢迎访问我的个人博客网站:http://www.yanmin99.com/

一、gitlab备份

  • gitlab默认备份路径在/etc/gitlab/gitlab.rb文件中,如下:

    1. gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
  • 备份命令gitlab-rake gitlab:backup:create

    1. [root@k4483v ]# gitlab-rake gitlab:backup:create
    2. done
    3. Dumping uploads ...
    4. done
    5. Creating backup archive: 1502891743_gitlab_backup.tar ... done
    6. Uploading backup archive to remote storage ... skipped
    7. Deleting tmp directories ... done
    8. Deleting old backups ... skipping

    生成备份文件:1502891743_gitlab_backup.tar ,执行备份需要gitlab启动状态

二、gitlab恢复

  • 1、恢复准备

    1. //停止相关数据连接服务
    2. gitlab-ctl stop unicorn
    3. gitlab-ctl stop sidekiq
  • 2、gitlab-rake gitlab:backup:restore恢复

    1. gitlab-rake gitlab:backup:restore BACKUP=xxxxx

    xxxxx代表备份编号,比如备份文件1502891743_gitlab_backup.tar的备份编号是1502891743

  • 3、执行备份

    1. [root@node401v ]#gitlab-rake gitlab:backup:restore BACKUP=1502891743
    2. Put GitLab hooks in repositories dirs [DONE]
    3. done
    4. Restoring uploads ...
    5. done
    6. This will rebuild an authorized_keys file.
    7. You will lose any data stored in authorized_keys file.
    8. Do you want to continue (yes/no)? yes
    9. ...............................................................Deleting tmp directories ... done
  • 4、执行gitlab-ctl restart重启

    1. [root@node401v ]# gitlab-ctl status
    2. run: logrotate: (pid 31684) 16s; run: log: (pid 17595) 3042s
    3. run: nginx: (pid 31687) 16s; run: log: (pid 17572) 3044s
    4. run: postgresql: (pid 31699) 15s; run: log: (pid 17397) 3064s
    5. run: redis: (pid 31707) 15s; run: log: (pid 17323) 3070s
    6. run: sidekiq: (pid 31711) 14s; run: log: (pid 17556) 3046s
    7. run: unicorn: (pid 31713) 14s; run: log: (pid 17532) 3048s

三、迁移

  • 1、备份数据、迁移准备工作

    • A、把A:(10.209.4.160)服务器gitlab:(10.121.215.48)迁移到B服务器
    • B、B服务器安装gitlab,应该要和A服务器gitlab一致
  • 2、下载指定更新的版本文件、A服务器:备份数据

    1. [root@k4483v ]# gitlab-rake gitlab:backup:create
    2. [root@k4483v ]# ll
    3. total 1965644 -rw-r--r-- 1 git git 2012815360 Aug 16 21:55 1502891743_gitlab_backup.tar

    默认备份目录/var/opt/gitlab/backups

  • 3、、把A服务器备份1502891743_gitlab_backup文件copy到B服务器中

    1. //把A服务器1502891743_gitlab_backup.tar复制到B服务器/home/j-yanmin/文件中
    2. [root@k4483v ]# scp 1502891743_gitlab_backup.tar j-yanmin@10.121.215.48:/home/j-yanmin/
    3. //把B服务中/j-yanmin/1502891743_gitlab_backup.tar复制到B服务器/var/opt/gitlab/backups中
    4. [root@k4483v ]# cp /home/jyanmin/1502891743_gitlab_backup.tar /var/opt/gitlab/backups
  • 4、执行恢复命令 gitlab-rake gitlab:backup:restore BACKUP=xxx

    1. [root@k4483v ]# gitlab-rake gitlab:backup:restore BACKUP=1502891743

四、升级

  • 1、Gitlab升级

发表评论

表情:
评论列表 (有 0 条评论,314人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Gitlab备份迁移恢复升级

    自建的Gitlab服务器常常会因为使用时间的增长,其空间容量等硬件需求都需要升级,或者迁移至更高配置的服务器上。备份、迁移、恢复、升级过程如下 1、gitlab备份 备份前