背景:
由于公司服務(wù)器已經(jīng)運行兩年了, 而且機器是塔式的, 難以放到機房, 所以剛好把現(xiàn)有的機器替換成刀片式的服務(wù)器. 之前Jenkins是1.6.53版本, Gerrit是2.11.3版本. 正好趁著這個機會進(jìn)行升級版本, Jenkins升級到2.7.31, Gerrit版本升級到2.14.3.
準(zhǔn)備:
網(wǎng)上百度了很多方案, 但是靠譜的都比較少, 而且了解到了, Jenkins和Gerrit都做到高版本兼容低版本, 所以整體思路是把老配置直接拿過來使用, 并且為了做到以后升級方便, 把配置相關(guān)的文件通過Git管理起來, 方便將來升級Gerrit和Jenkins.
升級:
1 - Gerrit
1: 由于用戶登錄模塊用到反向代理, 所以先安裝apache2服務(wù)器, 設(shè)置好反向代理.
2: Ubuntu建立好Gerrit用戶,直接把之前的review_site目錄拷貝過來
3: 啟動Gerrit, 如果沒有意外應(yīng)該是可以啟動的.(這里通過Git可以進(jìn)行一次備份, 接下來升級失敗可以進(jìn)行回退)
4: 運行命令升級Gerrit
5: 再次啟動Gerrit, 基本上應(yīng)該是成功的, 我碰到Project下某些工程不能訪問, 重啟下電腦就正常了.(Git再次備份下, 為將來升級留備份)
2 - Jenkins
1: Jenkins比較特別, 先通過命令行安裝最新的Jenkins.
2: 拷貝老的Jenkins配置目錄, 把新版本的Jenkins的配置目錄指向拷貝的地址(Git做好備份)
.
3: 重啟Jenkins, 這個時候可以根據(jù)Jenkins的log, 消滅下配置中的錯誤.
4: 理論上也是沒有錯誤需要解決的.(Jenkins起來之后, 也需要做備份)
總結(jié):
遷移之前以為是困難重重, 真正執(zhí)行起來還是很順利的, 基本上沒碰到不能解決的問題, 出現(xiàn)問題, 可以重啟服務(wù)試試. 一個晚上就搞定遷移和升級工作, 90%的時間都花在代碼和服務(wù)器文件的copy上.