Як дати Дженкінсу більше місця для купівлі, коли він почався як сервіс під Windows?


Відповіді:


90

У вашому каталозі встановлення Jenkins є jenkins.xml, де ви можете встановити різні параметри. Додайте параметр -Xmx з потрібним розміром до аргументу-тегу (або збільште розмір, якщо його вже є).



моє запитання: якщо у збірок не вистачає пам’яті, навіщо нам встановлювати параметри Java в майстер?
Ярін

1
Ви не повинні. Але це питання стосувалося не складання пам'яті, а мастера, що не вистачало пам'яті.
dunni

Станом на Ubuntu 16.04.6 LTS такого файлу немає. /etc/default/jenkinsРішення , запропоноване нижче Стів є той , який працює для мене.
всерединіКлава

110

Якщо ви використовували Aptitude (apt-get) для встановлення Дженкінса на Ubuntu 12.04, скаментуйте цей JAVA_ARGSрядок у верхньому рядку рядків /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

3
що робити, якщо це вікна?
Dejell

6
У питанні конкретно зазначено Windows.
Нік Уделл

6
Так, я написав цю відповідь ще до того, як зрозумів, що я роблю на ЗП, і я здивований, що набрали так багато відгуків. Можливо, як і я, багато людей знаходять це питання через пошукову машину, і більший відсоток тих людей використовують Linux або Unix? Я цього не розумію.
Стів HHH

8
"Можливо, як і я, багато людей знаходять це питання через пошукову машину. Більший відсоток тих, хто використовує Linux або Unix? Я цього не розумію". Саме так я і знайшов.
Скотт

1
Не забудьте перезапустити сервіс jenkinssudo service jenkins stop sudo service jenkins start
Camilo Silva

74

Вам потрібно змінити файл jenkins.xml . Конкретно вам потрібно змінити

   <arguments>-Xrs -Xmx256m 
    -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle 
    -jar "%BASE%\jenkins.war" --httpPort=8080</arguments>

до

    <arguments>-Xrs -Xmx2048m -XX:MaxPermSize=512m 
    -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle 
    -jar "%BASE%\jenkins.war" --httpPort=8080</arguments>

Ви також можете перевірити параметри Java, якими користується Дженкінс, встановивши плагін для монітора Jenkins через Manage Jenkins / Manage Plugins, а потім перейдіть до керування Jenkins / Monitoring of Hudson / Jenkins master, щоб використовувати моніторинг, щоб визначити, скільки пам'яті доступно Jenkins.

Якщо у вас виникає помилка пам’яті, коли Дженкінс дзвонить Maven, можливо, буде потрібно встановити MAVEN_OPTS за допомогою Manage Jenkins / Configure System, наприклад, якщо ви працюєте на версії Java до JDK 1.8 (значення є пропозиціями):

-Xmx2048m  -XX:MaxPermSize=512m

Якщо ви використовуєте JDK 1.8:

-Xmx2048m

коли я намагаюся встановити JENKINS_JAVA_OPTIONS, як описано вище, я отримую: "Починаючи з непризнаного варіанту Jenkins: --XX: MaxPermSize = 512m"
nemoo

2
Повинно бути лише один дефіс: -XX:MaxPermSize=512m- вищевказана відповідь була відредагована, щоб виправити цю помилку.
Адам Рофер

1
Будь-яка ідея, як встановити JENKINS_JAVA_OPTIONS у Windows?
ATOzTOA

У Windows за повідомленнями jenkins.361315.n4.nabble.com/… ви використовуєте Панель управління -> Система -> Додатково -> Змінні середовища
Марк Батлер

1
-XX:MaxPermSizeбільше не використовується для Java 8 або вище stackoverflow.com/questions/12114174/what-does-xxmaxpermsize-do
Micha Wiedenmann

24

Я додав до / etc / sysconfig / jenkins (CentOS):

# Options to pass to java when running Jenkins.
#
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Xmx1024m -XX:MaxPermSize=512m"

Для ubuntu той самий конфігуратор повинен розташовуватися в / etc / default


16

З вікі Дженкінса:

Параметри запуску JVM цих служб Windows контролюються файлом XML jenkins.xml та jenkins-slave.xml відповідно. Ці файли можна знайти в $ JENKINS_HOME та відповідному кореневому каталозі підлеглого, після того як ви встановите їх як служби Windows.

Формат файлу повинен бути роз'яснювальним. Налаштуйте аргументи, наприклад, щоб надати JVM більше пам’яті.

https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+as+a+Windows+service


-1

Якщо ви використовуєте шаблони Дженкінса, у вас можуть бути визначені додаткові налаштування VM, що може суперечити налаштуванням системної віртуальної машини.

Наприклад, ваш шаблон може мати такі посилання

 <mavenOpts>-Xms512m -Xmx1024m -Xss1024k -XX:MaxPermSize=1024m -Dmaven.test.failure.ignore=false</mavenOpts> 

Переконайтесь, що вирівняли ці записи шаблонів із налаштуванням VM вашої системи

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.