[英]Continuous Integration Server Setup: From Dev to Production
我們正在重新配置我們的服務器環境,從開發到生產。 所有服務器都是作為VM運行的Windows 2008服務器。 我們將使用TeamCity進行持續集成和SubVersion作為我們的版本控制系統。
閱讀了一些建議后,這是我到目前為止計划的內容(不包括任何冗余,災難恢復等):
因此,總共2個生產+ 2個分段+ 2-3個構建+ 1個Dev = 7-8個服務器
我的問題是:
答:到目前為止的共識似乎是SVN 不應該在Dev服務器上。 它應該是獨立的,或者可以與TeamCity在同一服務器上配對。
TeamCity應該位於專用服務器上還是可以駐留在SVN服務器上?
答:到目前為止,人們普遍認為TeamCity 可以與SVN位於同一台服務器上,特別是如果TeamCity代理和SQL DB位於不同的服務器上時。
還有其他建議,最佳做法嗎?
答案: TeamCity應該分為3個服務器實例:一個用於TeamCity Web,一個用於TeamCity代理,一個用於TeamCity SQL DB。
我正在嘗試建立可靠的最佳實踐設置,同時最大程度地減少服務器蔓延。
要回答您的問題:
我剛剛使用SQL Server DB設置了TeamCity,並且在同一Windows VM上都在Tomcat上運行的webapp實例被設置。
JetBrains提到Build代理最好不要與Web服務器在同一服務器上運行。 我建議也將數據庫分開(放在一個物理盒子上,而不僅僅是一個VM上),以便CI設置本身使用3個系統(TeamCity Web服務器,TeamCity數據庫,TeamCity構建代理)。 如果您的構建花費了幾分鍾以上的時間,我將添加另一個構建代理服務器,以使開發人員不會在提交時排隊,特別是如果您正在使用IDEA或Eclipse的TeamCity的遠程運行/個人構建功能。
將SVN服務器與TeamCity Web服務器安裝在同一系統上不會有問題。
請記住,編譯是通常受CPU限制或磁盤訪問限制的活動。 構建代理將從分離到單獨的CPU和/或磁盤中受益。 但是,由於多個VM的開銷,在共享磁盤和CPU的單獨VM上可能比幫助有用更多的浪費。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.