由于資源緊張,為了完成CI/CD的自動(dòng)化,所以打算把一臺(tái)128g、24c、10T存儲(chǔ)的一臺(tái)獨(dú)立GitLab服務(wù)器虛擬化為多臺(tái)服務(wù)器。完成持續(xù)集成平臺(tái)的遷移,減少資源浪費(fèi),現(xiàn)在記錄一下操作過(guò)程。
- 備份原GIT服務(wù)器數(shù)據(jù)
gitlab-rake gitlab:backup:create RAILS_ENV=production
注:默認(rèn)備份后文件一般位于/var/opt/gitlab/backups/,文件名:1513578325_2017_12_18_gitlab_backup.tar
- 新服務(wù)器上安裝與原服務(wù)器一樣版本的Gitlab.
這里說(shuō)明下為什么要一樣,原因應(yīng)該是由于Gitlab自身的兼容性問(wèn)題,高版本的Gitlab無(wú)法恢復(fù)低版本備份的數(shù)據(jù).
原Gitlab安裝版本: gitlab-ce-8.7.0-ce.0.el6.x86_64.
- 下載對(duì)應(yīng)的Gitlab版本
wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/6/gitlab-ce-8.7.0-ce.0.el6.x86_64.rpm
- 安裝GitLab
通過(guò)rpm命令安裝GitLab服務(wù),配置并啟動(dòng)GitLab
rpm -i gitlab-ce-8.7.0-ce.0.el6.x86_64.rpm
sudo gitlab-ctl reconfigure
3.將步驟1生成的tar文件拷貝到新服務(wù)器上相應(yīng)的backups目錄下
可以利用scp進(jìn)行直接拷貝。
scp /var/opt/gitlab/backups/1513578325_2017_12_18_gitlab_backup.tar username@src_ip:/var/opt/gitlab/backups
注: username為新服務(wù)器的用戶(hù)名,src_ip新服務(wù)器IP地址
4.新GitLab服務(wù)數(shù)據(jù)恢復(fù)
# This command will overwrite the contents of your GitLab database!
gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1513578325_2017_12_18
注:BACKUP的時(shí)間點(diǎn)必須與原服務(wù)器備份后的文件名一致
版本不匹配問(wèn)題
GitLab version mismatch:
Your current GitLab version (8.7.0) differs from the GitLab version in the backup!
Please switch to the following version and try again:
version: 9.0.5
5.重啟GitLab服務(wù)并檢測(cè)恢復(fù)數(shù)據(jù)情況
sudo gitlab-ctl restart
sudo gitlab-rake gitlab:check SANITIZE=true
如果check命令出現(xiàn)錯(cuò)誤,說(shuō)明備份的GitLab服務(wù)和新的GitLab服務(wù)版本不匹配,請(qǐng)安裝正確的版本。
6.總結(jié)
GitLab是一款企業(yè)級(jí)私有Git服務(wù)最佳選擇??梢酝瓿善髽I(yè)持續(xù)集成平臺(tái)代碼庫(kù)管理的工作。也可以和很多持續(xù)集成工具進(jìn)行無(wú)縫結(jié)合,讓開(kāi)發(fā)人員專(zhuān)注開(kāi)發(fā),部署、打包、測(cè)試、上線(xiàn)的工作自動(dòng)化完成。關(guān)鍵是它免費(fèi)的,linus真年神人也。GIT也是他的作品。
膜拜大神,進(jìn)一步了解,最近在看《只是為了好玩:Linux之父林納斯自傳》Linux之父Linus寫(xiě)的一本書(shū),關(guān)于開(kāi)源軟件做了很好的闡述。
歡迎關(guān)注微信公眾號(hào),第一時(shí)間,閱讀更多有關(guān)云計(jì)算、大數(shù)據(jù)文章。
[圖片上傳失敗...(image-589a3f-1513994039901)]
原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明: 轉(zhuǎn)載自Itweet的博客
本博客的文章集合: http://www.itweet.cn/blog/archive/