共计 1859 个字符,预计需要花费 5 分钟才能阅读完成。
公司更换了新的服务器,需要把原先的 GitLab 迁移到新的服务器上。
1. 迁移准备工作和思路: 从 a 服务器迁移到 b 服务器, 由于 Gitlab 自身的兼容性问题,高版本的 Gitlab 无法恢复低版本备份的数据, 需要注意在 b 服务器部署和 a 服务器一样版本的 gitlab, 部署好环境后开始备份和数据迁移. 关于 gitlab 服务器部署请参考另一遍文章: http://www.linuxidc.com/Linux/2017-06/144990.htm
查看 gitlab 版本的命令:
gitlab-rake gitlab:env:info
2. 备份原 a 服务器上的的数据
gitlab-rake gitlab:backup:create RAILS_ENV=production
PS: 备份后的文件一般是位于 /var/opt/gitlab/backups 下, 自动生成文件名文件名如 1481529483_gitlab_backup.tar
3. 将步骤 2 生成的 tar 文件拷贝到 b 服务器上相应的 backups 目录下
可以利用 scp 进行直接拷贝.
scp username@src_ip:/var/opt/gitlab/backups/1481529483_gitlab_backup.tar /var/opt/gitlab/backups
PS: username 为原服务器的用户名,src_ip 原服务器 IP 地址
4. 在 b 服务器恢复数据
gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1481529483
PS:BACKUP 的时间点必须与原服务器备份后的文件名一致
5. 出错解决:
数据迁移到后检查登录 gialab 有时候会跳出 500 报错 (Something went wrong on our end.) 以及无法正常新建用户
查看日志:tail -f /var/log/gitlab/redis/current
Can’t save in background: fork: Cannot allocate memory
解决方案
修改 /etc/sysctl.conf
加上 vm.overcommit_memory = 1, Linux 内核会根据参数 vm.overcommit_memory 参数的设置决定是否放行。
修改完执行 sysctl -p
vm.overcommit_memory = 1,直接放行
vm.overcommit_memory = 0:则比较 此次请求分配的虚拟内存大小和系统当前空闲的物理内存加上 swap,决定是否放行。
vm.overcommit_memory = 2:则会比较进程所有已分配的虚拟内存加上此次请求分配的虚拟内存。
更多 GitLab 相关教程见以下内容:
Ubuntu 14.04 下安装 GitLab 指南 http://www.linuxidc.com/Linux/2015-12/126876.htm
如何在 Ubuntu Server 14.04 下安装 Gitlab 中文版 http://www.linuxidc.com/Linux/2015-12/126875.htm
CentOS 源码安装 GitLab 汉化版 http://www.linuxidc.com/Linux/2015-10/124648.htm
在 Ubuntu 12.04 上安装 GitLab http://www.linuxidc.com/Linux/2012-12/75249.htm
GitLab 5.3 升级注意事项 http://www.linuxidc.com/Linux/2013-06/86473.htm
在 CentOS 上部署 GitLab (自托管的 Git 项目仓库) http://www.linuxidc.com/Linux/2013-06/85754.htm
在 RHEL6/CentOS6/ScientificLinux6 上安装 GitLab 6.0.2 http://www.linuxidc.com/Linux/2014-03/97831.htm
CentOS 6.5 安装 GitLab 教程及相关问题解决 http://www.linuxidc.com/Linux/2014-05/101526.htm
升级 GitLab 到 8.2.0 http://www.linuxidc.com/Linux/2015-12/126220.htm
GitLab 的详细介绍:请点这里
GitLab 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-06/144989.htm