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

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

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

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

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

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

二、gitlab恢复
  • 1、恢复准备

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

    gitlab-rake gitlab:backup:restore BACKUP=xxxxx
    

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

  • 3、执行备份

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

    [root@node401v ]# gitlab-ctl status
    run: logrotate: (pid 31684) 16s; run: log: (pid 17595) 3042s
    run: nginx: (pid 31687) 16s; run: log: (pid 17572) 3044s
    run: postgresql: (pid 31699) 15s; run: log: (pid 17397) 3064s
    run: redis: (pid 31707) 15s; run: log: (pid 17323) 3070s
    run: sidekiq: (pid 31711) 14s; run: log: (pid 17556) 3046s
    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服务器:备份数据

    [root@k4483v ]# gitlab-rake gitlab:backup:create
    [root@k4483v ]# ll
    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服务器中

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

    [root@k4483v ]# gitlab-rake gitlab:backup:restore  BACKUP=1502891743
四、升级
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值