gitlab全量迁移

作者: andrewkk | 来源:发表于2022-03-09 14:48 被阅读0次

    目的: A gitlab >>> 全量迁移到 >>> B gitlab
    备注:源码 包括用户私钥那些 全都会一模一样的迁移过去

    非常重要 提前设置备份参数:
    vim /etc/gitlab/gitlab.rb
     gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
     gitlab_rails['backup_keep_time'] = 604800
    
    重新加载一下配置
    gitlab-ctl reconfigure
    
    # 检查2端的gitlab版本是否一致  必须满足同一个版本的条件
    cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
    
    1.A gitlab
    打出备份包 :1646701560_2022_03_08_14.0.6_gitlab_backup.tar
    /usr/bin/gitlab-rake gitlab:backup:create
    备份包scp过去到B服务器
    
    2.B gitlab 
    gitlab-ctl  status
    # 停止
    gitlab-ctl stop unicorn
    gitlab-ctl stop sidekiq
    chmod 777 1646701560_2022_03_08_14.0.6_gitlab_backup.tar 
    sudo chown git:git 1646701560_2022_03_08_14.0.6_gitlab_backup.tar 
    gitlab-rake gitlab:backup:restore BACKUP=1646701560_2022_03_08_14.0.6
    gitlab-ctl restart
    
    然后检查启动状态和logs 没问题 项目百分百分过去了 
    
    常用命令
    服务管理
    # 启动所有 gitlab 组件:
    gitlab-ctl start
    # 停止所有 gitlab 组件:
    gitlab-ctl stop
    # 停止所有 gitlab postgresql 组件:
    gitlab-ctl stop postgresql
    # 停止相关数据连接服务
    gitlab-ctl stop unicorn
    gitlab-ctl stop sidekiq
    # 重启所有 gitlab 组件:
    gitlab-ctl restart
    # 重启所有 gitlab gitlab-workhorse 组件:
    gitlab-ctl restart gitlab-workhorse
    # 查看服务状态
    gitlab-ctl status
    # 生成配置并启动服务
    gitlab-ctl reconfigure
    
    
    运维管理
    # 查看版本
    cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
    # 检查 gitlab
    gitlab-rake gitlab:check SANITIZE=true --trace
    # 实时查看日志
    gitlab-ctl tail
    # 数据库关系升级
    gitlab-rake db:migrate
    # 清理 redis 缓存
    gitlab-rake cache:clear
    # 升级 GitLab-ce 版本
    yum update gitlab-ce
    # 升级 PostgreSQL 最新版本
    gitlab-ctl pg-upgrade
    
    
    日志排查
    # 实时查看所有日志
    gitlab-ctl tail
    # 实时检查 redis 的日志
    gitlab-ctl tail redis
    # 实时检查 postgresql 的日志
    gitlab-ctl tail postgresql
    # 检查 gitlab-workhorse 的日志
    gitlab-ctl tail gitlab-workhorse
    # 检查 logrotate 的日志
    gitlab-ctl tail logrotate
    # 检查 nginx 的日志
    gitlab-ctl tail nginx
    # 检查 sidekiq 的日志
    gitlab-ctl tail sidekiq
    # 检查 unicorn 的日志
    gitlab-ctl tail unicorn
    

    配置域名

    grep -Ev '^#|^$' /etc/gitlab/gitlab.rb 
    external_url 'https://XX.XXX.XXX.com'
    nginx['redirect_http_to_https'] = true
    nginx['ssl_certificate'] = "/etc/gitlab/ssl/XX.XX.XXX.com.pem"
    nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/XX.XX.XX.com.key"
    
    重加载
    gitlab-ctl reconfigure
    再检查nginx的配置 
    cat /var/opt/gitlab/nginx/conf/gitlab-http.conf
    

    相关文章

      网友评论

        本文标题:gitlab全量迁移

        本文链接:https://www.haomeiwen.com/subject/npptdrtx.html