2015-10-23 76 views
0

所以我剛開始在一個項目上工作,我的任務是將在CentOS6上運行的sonatype nexus 1.9.x升級到2.11.x.舊版本目前通過war文件進行部署。目標是部署新版本,而開發人員嘗試構建他們的項目時不會破壞構建。如何在同一臺機器上運行兩個版本的Sonatype Nexus?

我的攻擊計劃是下載nexus。使當前通過tomcat部署的nexus,在不同的端口上運行,使新的nexus在當前端口上運行,然後代理舊的連接。

儘管我遇到了一些問題。舊的聯結使用Java 1.6。如果將java更新爲1.8,是否會破壞當前正在運行的連接?

我可以在同一虛擬機上運行兩個版本的聯結嗎?如果是這樣,我將如何做到這一點,並儘量減少弄亂東西的變化?

謝謝大家。我剛剛開始,這對我來說都是非常新的。

回答

0

既然你的Nexus安裝是很老,你必須考慮你的選擇:

  1. 你可以升級現有的實例。 1.9很老,所以你必須分多步升級。先到2.0,然後是2.7,然後是2.11。由於配置的數據存儲更改和已刪除的升級步驟,這是必需的。

  2. 您可以重新配置一個新的服務器,從存儲庫和其他方面的配置相同的配置,並簡單地rsync到新的存儲。您實際上只需要爲託管存儲庫執行此操作,因爲代理存儲庫希望仍然處於聯機狀態,您只需下載新的請求即可。

如果你的設置不是太複雜,我會親自去選擇2.它給你一個機會,重新審視事物並清理你的設置。

對於該設置,步驟大致如下。

  1. 並聯安裝Java 8到Java 6
  2. 從包安裝的Nexus 2.11所以它與Eclipse碼頭上運行。不要試圖在Tomcat上運行。
  3. 將其配置爲使用原始設置在端口9081或其他一些非衝突端口上運行,並執行所有其他配置,包括根據需要創建存儲庫以及安全設置。

現在你應該可以同時運行兩個服務器。

  • 創建腳本,該腳本rsyncs存儲庫(位於Sonatype的工作/關係/存儲),並用新的服務器脫機
  • 開始並聯和運行新的Nexus運行它一些針對它的測試。
  • 一旦你確認一切都在一個特定時間割接工作計劃,併爲此

  • 禁用任何部署的Nexus(CI服務器,告訴人們,開關託管庫,以只讀)
  • 運行rsync的腳本最後一次
  • 找舊的Nexus服務器關閉
  • 配置新服務器使用舊的一個
  • 港開始新的
  • 你完成了。現在一切都應該很好,所以最後一步是刪除舊的Nexus和Tomcat設置。

    這個過程當然有各種變化。這裏有一些tips for the rsync.

    也請隨時ping我們的mailing list or chat爲進一步的幫助,並檢查了comprehensive documentation以及。

    相關問題