Jenkins порождает много процессов-демонов и сбоев сервера - PullRequest
1 голос
/ 08 января 2020

Я недавно установил Jenkins на дешевую виртуальную машину на Azure. Спецификации очень низкие, так как я использую этот сервер для тестирования установки: 1vCPU и 1GB RAM. Обычно одновременно будет только 1 сборка с макс. из 3, в очень редких случаях.

Во время процесса сборки из Jenkins мой сервер довольно часто полностью обрабатывал sh и оставался таким в течение + - 10 - 15 минут, пока его не смогли использовать снова.

Я проверил процессы на сервере, и вот результат: running processes

Полная строка выглядит так:

/etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20

Это то же самое для каждого из этих демонов, ни один параметр не отличается.

Это нормальное поведение, и это причина того, что мой сервер дает сбой? Или мои характеристики слишком низки для Дженкинса?

Заранее спасибо!

РЕДАКТИРОВАТЬ: мой файл jenkins.log выглядит довольно нормально, за исключением одного исключения NullPointerException, которое продолжает возвращаться:

    2020-01-08 12:43:17.702+0000 [id=148]   WARNING h.ExpressionFactory2$JexlExpression#evaluate: Caught exception evaluating: h.filterDescriptors(it,attrs.descriptors) in /configure. Reason: java.lang.NullPointerException: Descriptor list is null for context 'class hudson.model.Hudson' in thread 'Handling GET /configure from 85.154.65.124 : qtp2085857771-148 Jenkins/configure.jelly GlobalLibraries/config.jelly LibraryConfiguration/config.jelly SCMRetriever/DescriptorImpl/config.jelly MultiSCM/DescriptorImpl/config.jelly'
    java.lang.NullPointerException: Descriptor list is null for context 'class hudson.model.Hudson' in thread 'Handling GET /configure from 85.154.65.124 : qtp2085857771-148 Jenkins/configure.jelly GlobalLibraries/config.jelly LibraryConfiguration/config.jelly SCMRetriever/DescriptorImpl/config.jelly MultiSCM/DescriptorImpl/config.jelly'
            at hudson.model.DescriptorVisibilityFilter.apply(DescriptorVisibilityFilter.java:73)
            ...
...