¿Cómo darle a Jenkins más espacio de montón cuando se inicia como un servicio bajo Windows?
heap jvm-arguments (6)
De la wiki de Jenkins:
Los parámetros de inicio JVM de estos servicios de Windows están controlados por un archivo XML jenkins.xml y jenkins-slave.xml, respectivamente. Estos archivos se pueden encontrar en $ JENKINS_HOME y en el directorio raíz del esclavo, respectivamente, después de haberlos instalado como servicios de Windows.
El formato del archivo debe ser autoexplicativo. Modifique los argumentos, por ejemplo, para darle a JVM una memoria más grande.
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+as+a+Windows+service
Quiero aumentar el espacio disponible para Jenkins. Pero como está instalado como un servicio, no sé cómo hacerlo.
En su directorio de instalación de Jenkins hay un jenkins.xml, donde puede establecer varias opciones. Agregue el parámetro -Xmx con el tamaño que desea a la etiqueta arguments (o aumente el tamaño si ya está allí).
He añadido a / etc / sysconfig / jenkins (CentOS):
# Options to pass to java when running Jenkins.
#
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Xmx1024m -XX:MaxPermSize=512m"
Para ubuntu, la misma configuración debe estar ubicada en / etc / default
Si está utilizando plantillas de Jenkins , podría tener configuraciones de VM adicionales definidas en ella y esto podría estar en conflicto con la configuración de su VM del sistema
ejemplo su Tempalate puede tener referencias como estas
<mavenOpts>-Xms512m -Xmx1024m -Xss1024k -XX:MaxPermSize=1024m -Dmaven.test.failure.ignore=false</mavenOpts>
Asegúrese de alinear estas entradas de plantilla con la configuración de VM de su sistema
jenkins.xml modificar el archivo jenkins.xml . Específicamente necesitas cambiar
<arguments>-Xrs -Xmx256m
-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle
-jar "%BASE%/jenkins.war" --httpPort=8080</arguments>
a
<arguments>-Xrs -Xmx2048m -XX:MaxPermSize=512m
-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle
-jar "%BASE%/jenkins.war" --httpPort=8080</arguments>
También puede verificar las opciones de Java que Jenkins está utilizando instalando el complemento de monitor Jenkins a través de Administrar Jenkins / Administrar complementos y luego dirigirse a Administración de Jenkins / Monitoreo de Hudson / Jenkins maestro para usar la supervisión y determinar cuánta memoria hay disponible para Jenkins.
Si obtiene un error de falta de memoria cuando Jenkins llama a Maven, puede ser necesario establecer MAVEN_OPTS a través de Gestionar Jenkins / Configure System, por ejemplo, si está ejecutando una versión de Java anterior a JDK 1.8 (los valores son sugerencias):
-Xmx2048m -XX:MaxPermSize=512m
Si está utilizando JDK 1.8:
-Xmx2048m
Si usó Aptitude (apt-get) para instalar Jenkins en Ubuntu 12.04, descomente la línea JAVA_ARGS
en las primeras líneas de /etc/default/jenkins
:
# arguments to pass to java
#JAVA_ARGS="-Xmx256m" # <--default value
JAVA_ARGS="-Xmx2048m"
#JAVA_ARGS="-Djava.net.preferIPv4Stack=true" # make jenkins listen on IPv4 address