前言
在使用Jenkins做持續集成的初期,未能預估項目量的大小。於是乎,配置都是使用的默認配置,而Jenkins的默認主目錄放在了服務器的根目錄下。
隨着時間的推移,項目量的持續增加,在運維過程中就出現了系統磁盤空間不足的問題。
解決方式有:
a、對磁盤的根目錄分區進行擴容;
b、修改Jenkins的主目錄,將其設置為空間較大的磁盤的分區下。
說明
a)
修改配置前,應先將Jenkins停止,此實驗將默認目錄/root/.jenkins改成/mnt/.jenkins;
b)
此處實驗Jenkins是部署在Centos7系統的Tomcat下,故基於此環境進行操作說明;
c)
筆者做操作之前也查閱過相關文檔,看到的都是單純的修改Jenkins主目錄操作,原以為修改過主目錄的配置后重啟,Jenkins會將原有的老數據信息同步到新的主目錄下,但是操作下來的結果是改完重啟后,所有配置均回到了初始狀態。而最需要重視的原有數據信息遷移問題在各種文檔及博客中未提及。此處將對這些進行完善!
方案
方案一
修改tomcat的bin目錄下的catalina.sh文件,添加變量,指定JENKINS_HOME,如下:
修改完成后服務重啟即可;
方案二
在啟動Jenkins服務前,添加系統環境變量。即在/etc/profile文件中添加 export JENKINS_HOME=xxx 保存后,執行source /etc/profile即可;
方案三
更改Jenkins.war或已經展開在tomcat的webapps目錄下的jenkins項目目錄內的WEB-INF/web.xml配置文件,指定目錄,如下:
在紅色框內填寫需要指定的目錄后重啟服務即可;
步驟
# 此處采用方案一進行操作!
# 停止Tomcat(即Jenkins服務);
/etc/init.d/tomcat stop
# 數據遷移,確保修改目錄后保持原有配置數據;
rsync -avr /root/.jenkin /mnt/
# 配置指定Jenkins主目錄,添加紅色框內信息;
vim /usr/local/tomcat/bin/catalina.sh
# 啟動Tomcat(即Jenkins服務);
/etc/init.d/tomcat start
# 以上操作完后,Jenkins切換了主目錄,同時保持了原有數據!