公司更換了新的伺服器,需要把原先的gitlab遷移到新的伺服器上.
1.遷移準備工作和思路:從a伺服器遷移到b伺服器,由於gitlab自身的相容性問題,高版本的gitlab無法恢復低版本備份的資料,需要注意在b伺服器部署和a伺服器一樣版本的gitlab,部署好環境後開始備份和資料遷移.關於gitlab伺服器部署請參考我的 另一遍文章:
檢視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/1526353904_2018_05_15_10.0.7_gitlab_backup.tar /var/opt/gitlab/backups
ps: username為原伺服器的使用者名稱,src_ip原伺服器ip位址
4. 在b伺服器恢復資料
gitlab-rake gitlab:backup:restore rails_env=production backup=1526353904_2018_05_15_10.0.7
ps:backup的時間點必須與原伺服器備份後的檔名一致
5.出錯解決:
資料遷移到後檢查登入gialab有時候會跳出500報錯(something went wrong on our end.)以及無法正常新建使用者
檢視日誌:tail -f /var/log/gitlab/redis/current
can't s**e 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遷移參考**:
參考**:
Gitlab伺服器遷移
gitlab伺服器遷移 com 把原來git伺服器的資料遷移到新伺服器.這裡對遷移過程做個簡單的記錄.備份原git伺服器的資料 gitlab rake gitlab backup create rails env productionps 備份後的檔案一般是位於 var opt gitlab bac...
centos下gitlab伺服器遷移
遷移的整體思路是 1 在老伺服器上執行備份指令 gitlab rake gitlab backup create 備份 預設備份到 var opt gitlab backups目錄下 可以通過 etc gitlab gitlab.rb配置檔案來修改預設存放備份檔案的目錄 gitlab rails b...
Gitlab伺服器的安裝和遷移
gitlab伺服器的安裝和遷移 os centos linux release 7.4.1708 gitlab gitlab community edition 8.11.6 410d751 2.1 安裝必要的依賴包和相關的配置sudo yum install y curl policycoreut...